debugreiserfs: fix use after free while closing log

reiserfs_close(fs) frees fs and we were using it after freeing
to close the log.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
This commit is contained in:
Jeff Mahoney committed 2013-11-06 13:48:49 -05:00
1 parent 57eac8416c
commit fe448aeac4
1 file changed
+4 -3
+4 -3
View File
@@ -686,6 +686,7 @@ int main(int argc, char *argv[])
char *file_name;
int error;
struct debugreiserfs_data *data;
FILE *log;
data = getmem(sizeof(struct debugreiserfs_data));
file_name = parse_options(data, argc, argv);
@@ -777,9 +778,9 @@ int main(int argc, char *argv[])
break;
}
log = data(fs)->log;
reiserfs_close(fs);
if (data(fs)->log) {
fclose(data(fs)->log);
}
if (log)
fclose(log);
return 0;
}