files: remove a superfluous condition, and do not ignore a "No"
Having just opened a fresh buffer, 'openfile->next' will never be NULL, because the list is circular. Second, when compiled with --disable-nultibuffer, and deciding not to override an existing lock, the 'return FALSE' should *not* be skipped, because otherwise the named file will be opened after all. This fixes an unreported bug.master
parent
bc33539b11
commit
faf5227bc5
|
@ -456,14 +456,13 @@ bool open_buffer(const char *filename, bool undoable)
|
|||
if (has_valid_path(realname)) {
|
||||
#ifndef NANO_TINY
|
||||
if (ISSET(LOCKING) && filename[0] != '\0') {
|
||||
/* When not overriding an existing lock, discard the buffer. */
|
||||
if (do_lockfile(realname) < 0) {
|
||||
#ifndef DISABLE_MULTIBUFFER
|
||||
if (openfile->next) {
|
||||
close_buffer();
|
||||
free(realname);
|
||||
return FALSE;
|
||||
}
|
||||
close_buffer();
|
||||
#endif
|
||||
free(realname);
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
#endif /* !NANO_TINY */
|
||||
|
|
Loading…
Reference in New Issue