OSDN Git Service
(root)
/
lha
/
lha.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
1df03b2
)
* src/lhadd.c (build_backup_file): On MinGW, cannot rename when
author
arai
<arai@6a8cc165-1e22-0410-a132-eb4e3f353aba>
Sat, 25 May 2002 18:16:48 +0000
(18:16 +0000)
committer
arai
<arai@6a8cc165-1e22-0410-a132-eb4e3f353aba>
Sat, 25 May 2002 18:16:48 +0000
(18:16 +0000)
a new file already exists.
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/lha/lha/trunk@112
6a8cc165
-1e22-0410-a132-
eb4e3f353aba
src/lhadd.c
patch
|
blob
|
history
diff --git
a/src/lhadd.c
b/src/lhadd.c
index
f28d0f8
..
a8a1503
100644
(file)
--- a/
src/lhadd.c
+++ b/
src/lhadd.c
@@
-298,8
+298,15
@@
build_backup_file()
#ifdef SIGHUP
signal(SIGHUP, SIG_IGN);
#endif
- if (rename(archive_name, backup_archive_name) < 0)
+ if (rename(archive_name, backup_archive_name) < 0) {
+#if __MINGW32__
+ /* On MinGW, cannot rename when
+ newfile (backup_archive_name) already exists */
+ if (unlink(backup_archive_name) < 0 ||
+ rename(archive_name, backup_archive_name) < 0)
+#endif
fatal_error(archive_name);
+ }
recover_archive_when_interrupt = TRUE;
signal(SIGINT, interrupt);
#ifdef SIGHUP