t/verify-state: fix leak in error case
[fio.git] / t / verify-state.c
index 9a2c3df68cb1db568844ad263a600b3a43285167..734c1e4c77fa81c791f62d4e784f060d4256c6a9 100644 (file)
@@ -58,7 +58,8 @@ static void show(struct thread_io_list *s, size_t size)
                show_s(s, no_s);
                no_s++;
                size -= __thread_io_list_sz(s->depth, s->nofiles);
-               s = (void *) s + __thread_io_list_sz(s->depth, s->nofiles);
+               s = (struct thread_io_list *)((char *) s +
+                       __thread_io_list_sz(s->depth, s->nofiles));
        } while (size != 0);
 }
 
@@ -118,10 +119,12 @@ static int show_file(const char *file)
        if (ret < 0) {
                log_err("read: %s\n", strerror(errno));
                close(fd);
+               free(buf);
                return 1;
        } else if (ret != sb.st_size) {
                log_err("Short read\n");
                close(fd);
+               free(buf);
                return 1;
        }