diff options
Diffstat (limited to 'app-editors/qemacs/files/qemacs-0.4.0_pre20080605-make_backup.patch')
-rw-r--r-- | app-editors/qemacs/files/qemacs-0.4.0_pre20080605-make_backup.patch | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-make_backup.patch b/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-make_backup.patch new file mode 100644 index 000000000000..cdfe4c439db8 --- /dev/null +++ b/app-editors/qemacs/files/qemacs-0.4.0_pre20080605-make_backup.patch @@ -0,0 +1,68 @@ +Add make-backup-files command for backup toggling, from upstream mailing list: +http://lists.gnu.org/archive/html/qemacs-devel/2004-11/msg00007.html +http://bugs.gentoo.org/75052 + +--- buffer.c.orig 2009-03-07 21:14:02.000000000 +0100 ++++ buffer.c 2009-03-07 21:15:40.000000000 +0100 +@@ -1657,12 +1657,14 @@ + if (stat(filename, &st) == 0) + mode = st.st_mode & 0777; + +- /* backup old file if present */ +- if (strlen(filename) < MAX_FILENAME_SIZE - 1) { ++ /* backup old file if present and make-backup-files is on */ ++ if(mbf == 1) { ++ if (strlen(filename) < MAX_FILENAME_SIZE - 1) { + if (snprintf(buf1, sizeof(buf1), "%s~", filename) < ssizeof(buf1)) { + // should check error code + rename(filename, buf1); + } ++ } + } + + /* CG: should pass mode to buffer_save */ +--- qe.c.orig 2009-03-07 21:14:09.000000000 +0100 ++++ qe.c 2009-03-07 21:17:01.000000000 +0100 +@@ -71,6 +71,7 @@ + static int screen_height = 0; + static int no_init_file; + static const char *user_option; ++mbf = 1; + + /* mode handling */ + +@@ -5316,6 +5317,14 @@ + do_refresh(qs->first_window); + } + ++static void make_backup_files(EditState *s) { ++ if(mbf == 1) { ++ mbf = 0; ++ } else { ++ mbf = 1; ++ } ++} ++ + /* compute default path for find/save buffer */ + static void get_default_path(EditState *s, char *buf, int buf_size) + { +--- qeconfig.h.orig 2009-03-07 21:14:19.000000000 +0100 ++++ qeconfig.h 2009-03-07 21:17:37.000000000 +0100 +@@ -192,6 +192,7 @@ + "downcase-region", do_changecase_region, ESi, -1, "*v") + CMD3( KEY_CTRLX(KEY_CTRL('u')), KEY_NONE, + "upcase-region", do_changecase_region, ESi, 1, "*v") ++ CMD0( KEY_NONE, KEY_NONE, "make-backup-files", make_backup_files) + + /*---------------- Command handling ----------------*/ + +--- qe.h.orig 2009-03-07 21:14:26.000000000 +0100 ++++ qe.h 2009-03-07 21:17:53.000000000 +0100 +@@ -1765,6 +1765,7 @@ + /* image.c */ + void fill_border(EditState *s, int x, int y, int w, int h, int color); + int qe_bitmap_format_to_pix_fmt(int format); ++int mbf; + + /* shell.c */ + EditBuffer *new_shell_buffer(EditBuffer *b0, const char *name, |