commit fcf32bf3d1fa149c787b53f0e5c66beccfa72cdc
parent aa44841315cad57120796999dc86c867a4133b78
Author: Robert Siemborski <rjs3@andrew.cmu.edu>
Date: Mon, 17 Jul 2000 03:04:54 +0000
more intelligent filename selection in die()
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@109 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
Diffstat:
2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -11,6 +11,8 @@ Current CVS:
- nano.c:
main():
- TABSIZE now set before first call to edit_refresh (Bill Soudan)
+ die():
+ - More intelligent emergency-save filename selection (Rob)
- search.c:
search_init():
- Added " (to replace)" statement to end of search string if
diff --git a/nano.c b/nano.c
@@ -94,10 +94,15 @@ void die(char *msg, ...)
va_end(ap);
/* if we can't save we have REAL bad problems,
- * but we might as well TRY. FIXME: This should probabally base it
- * off of the current filename */
- write_file("nano.save", 0);
-
+ * but we might as well TRY. */
+ if(filename[0] == '\0') {
+ write_file("nano.save", 0);
+ } else {
+ char buf[BUFSIZ];
+ strncpy(buf,filename,BUFSIZ);
+ strncat(buf,".save",BUFSIZ - strlen(buf));
+ write_file(buf, 0);
+ }
/* Restore the old term settings */
tcsetattr(0, TCSANOW, &oldterm);