Commit ca92becf authored by David Lawrence Ramsey's avatar David Lawrence Ramsey
Browse files

apply patch from DB: in write_file(), if we've tried to write to an

unwritable file and we're not prepending, tempname is NULL when it's
passed to unlink(); this can cause problems if unlink() can't handle
NULL, so don't call it in that case


git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@2012 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
parent 2c4e34cf
Showing with 8 additions and 1 deletion
+8 -1
......@@ -109,6 +109,11 @@ CVS code -
do_writeout_void()
- Call display_main_list(), for consistency with
do_insertfile_void(). (DLR)
write_file()
- If we've tried to write to an unwritable file and we're not
prepending, tempname is NULL when it's passed to unlink().
This can cause problems if unlink() can't handle NULL, so
don't call it in that case. (David Benbennick)
write_marked()
- Remove check for MARK_ISSET's not being set. (DLR)
open_prevfile(), open_nextfile()
......
......@@ -1602,7 +1602,9 @@ int write_file(const char *name, int tmp, int append, int nonamechange)
/* First, just give up if we couldn't even open the file. */
if (fd == -1) {
statusbar(_("Error writing %s: %s"), realname, strerror(errno));
unlink(tempname);
/* tempname has been set only if we're prepending. */
if (tempname != NULL)
unlink(tempname);
goto cleanup_and_exit;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment