summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Drake <michael.drake@codethink.co.uk>2020-02-24 14:34:37 +0000
committerMichael Drake <michael.drake@codethink.co.uk>2020-02-24 14:34:37 +0000
commit63dd59bd2e8327091d2a57e4f4c7e5b2378eb2ce (patch)
treec2cfa6c7cf713df7995dd1500430081c9649dc6d
parentb8dc537bf82637d223332a6fa2ab95064acd63ee (diff)
downloadnetsurf-63dd59bd2e8327091d2a57e4f4c7e5b2378eb2ce.tar.gz
netsurf-63dd59bd2e8327091d2a57e4f4c7e5b2378eb2ce.tar.bz2
Cache backing store: Add missing calloc check.
Found by coverity: CID 1419831: Null pointer dereferences (NULL_RETURNS) >>> Dereferencing a pointer that might be "NULL" "url" when calling "read".
-rw-r--r--content/fs_backing_store.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/content/fs_backing_store.c b/content/fs_backing_store.c
index 272f251ea..481519da0 100644
--- a/content/fs_backing_store.c
+++ b/content/fs_backing_store.c
@@ -1159,6 +1159,11 @@ read_entries(struct store_state *state)
uint32_t urllen;
while (read(fd, &urllen, sizeof(urllen)) == sizeof(urllen)) {
url = calloc(1, urllen+1);
+ if (url == NULL) {
+ close(fd);
+ free(fname);
+ return NSERROR_NOMEM;
+ }
if (read(fd, url, urllen) != urllen) {
free(url);
close(fd);