default_backend: check return value of fseek 10/220710/1
authorjeon <jhyuni.kang@samsung.com>
Wed, 18 Sep 2019 03:33:51 +0000 (12:33 +0900)
committerSung-Jin Park <sj76.park@samsung.com>
Fri, 20 Dec 2019 09:56:32 +0000 (18:56 +0900)
Change-Id: I63a27ffa7c75d22c4a1381bb8cb7f114a2469230

backends/default_backend.c

index 5d71cf2..135a194 100644 (file)
@@ -206,14 +206,16 @@ static char *
 _read_json_file(const char *path, int *data_size)
 {
        FILE *fp = fopen(path, "rb");
-       int size;
+       int size, ret;
        char *buffer = NULL;
        ERROR_CHECK(fp, return NULL, "Failed to open file: %s\n", path);
 
-       fseek(fp, 0, SEEK_END);
+       ret = fseek(fp, 0, SEEK_END);
+       ERROR_CHECK(ret == 0, goto error, "Failed to seek file. ret: %d\n", ret);
        size = (long int)ftell(fp);
-       fseek(fp, 0, SEEK_SET);
        ERROR_CHECK(0 < size && size < INT_MAX, goto error, "Invalid file: %d size\n", size);
+       ret = fseek(fp, 0, SEEK_SET);
+       ERROR_CHECK(ret == 0, goto error, "Failed to seek file. ret: %d\n", ret);
 
        buffer = (char *)calloc(sizeof(char), size + 1);
        ERROR_CHECK(buffer, goto error, "Failed to allocate memory for buffer\n");