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:
1 parent
57eac8416c
commit
fe448aeac4
1 file changed
+4
-3
@@ -686,6 +686,7 @@ int main(int argc, char *argv[])
|
|||||||
char *file_name;
|
char *file_name;
|
||||||
int error;
|
int error;
|
||||||
struct debugreiserfs_data *data;
|
struct debugreiserfs_data *data;
|
||||||
|
FILE *log;
|
||||||
|
|
||||||
data = getmem(sizeof(struct debugreiserfs_data));
|
data = getmem(sizeof(struct debugreiserfs_data));
|
||||||
file_name = parse_options(data, argc, argv);
|
file_name = parse_options(data, argc, argv);
|
||||||
@@ -777,9 +778,9 @@ int main(int argc, char *argv[])
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
log = data(fs)->log;
|
||||||
reiserfs_close(fs);
|
reiserfs_close(fs);
|
||||||
if (data(fs)->log) {
|
if (log)
|
||||||
fclose(data(fs)->log);
|
fclose(log);
|
||||||
}
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user