With -a, the jump to mount_it_now can skip the initialization of f, and
if we don't zero it after closing it we re-close a filehandle that isn't open, and since this is a file _pointer_ it segfaults on a double free. Yeah, subtle bug. I need to break this out into separate functions if I can figure out how to avoid making the code larger while doing so. Part of the general -a and -o remount work I need to do, but that's after 1.1.0...
This commit is contained in:
parent
8b0efdb1a1
commit
71d6ccd801
@ -327,8 +327,11 @@ mount_it_now:
|
||||
}
|
||||
if(!rc || !f) break;
|
||||
}
|
||||
if(f) fclose(f);
|
||||
if(!f || !rc) break;
|
||||
if(!f) break;
|
||||
fclose(f);
|
||||
// goto mount_it_now with -a can jump past the initialization
|
||||
f=0;
|
||||
if(!rc) break;
|
||||
}
|
||||
|
||||
/* If the mount was successful, and we're maintaining an old-style
|
||||
|
Loading…
Reference in New Issue
Block a user