archival: added O_TRUNC so that when we overwrite files on unpack,

we truncate them. Also spotted & fixed hard to trigger bug
          with extension handling.
This commit is contained in:
Denis Vlasenko
2006-09-03 14:23:29 +00:00
parent 314908da9e
commit 22dca23d52
5 changed files with 19 additions and 13 deletions

View File

@ -333,7 +333,7 @@ int unzip_main(int argc, char **argv)
overwrite = o_always;
case 'y': /* Open file and fall into unzip */
unzip_create_leading_dirs(dst_fn);
dst_fd = xopen3(dst_fn, O_WRONLY | O_CREAT, 0777);
dst_fd = xopen3(dst_fn, O_WRONLY | O_CREAT | O_TRUNC, 0777);
case -1: /* Unzip */
if (verbosity == v_normal) {
printf(" inflating: %s\n", dst_fn);