* src/lhadd.c (cmd_add): if `backup_old_archive' is true, no
backup archive.
(cmd_delete): ditto.
* src/lharc.c (init_variable): initialize `backup_old_archive'.
* src/lha.h (backup_old_archive): added for nobackup.
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/lha/lha/trunk@435
6a8cc165-1e22-0410-a132-
eb4e3f353aba
[Define to 1 if you want to use the user/group name extened header])
fi
+# backup old archive file
+AC_ARG_ENABLE(backup_archive,
+ AC_HELP_STRING([--enable-backup-archive],
+ [backup old archive [[default=no]]]),
+ ,
+ # default
+ enable_backup_archive=no)
+if test "x$enable_backup_archive" = xyes; then
+ AC_DEFINE(BACKUP_OLD_ARCHIVE, 1,
+ [Define to 1 if you want to leave an old archive])
+fi
+
AC_CONFIG_FILES([Makefile src/Makefile man/Makefile])
AC_CONFIG_FILES([tests/Makefile tests/lha-test])
AC_OUTPUT
/* Indicator flag */
EXTERN int quiet_mode;
+EXTERN boolean backup_old_archive;
/* ------------------------------------------------------------------------ */
/* Globale Variable */
/* ------------------------------------------------------------------------ */
}
/* build backup archive file */
- if (old_archive_exist)
+ if (old_archive_exist && backup_old_archive)
build_backup_file();
report_archive_name_if_different();
}
/* build backup archive file */
- build_backup_file();
+ if (backup_old_archive)
+ build_backup_file();
/* 1999.5.24 t.oka */
if(!noexec && new_archive_size <= 1){
unlink(temporary_name);
- warning("New archive file \"%s\" is not created because it would be empty.", new_archive_name);
+ if (!backup_old_archive)
+ unlink(archive_name);
+ warning("The archive file \"%s\" was removed because it would be empty.", new_archive_name);
return;
}
extract_directory = NULL;
temporary_fd = -1;
+
+#if BACKUP_OLD_ARCHIVE
+ backup_old_archive = TRUE;
+#else
+ backup_old_archive = FALSE;
+#endif
}
/* ------------------------------------------------------------------------ */