Take into account chdir_fd when extracting from incremental dumps.

* src/common.h (tar_savedir): New prototype.
* src/misc.c (tar_savedir): New function.
(remove_any_file): Use tar_savedir.
* src/incremen.c (try_purge_directory): Use tar_savedir.
* src/update.c (update_archive): Use tar_savedir.
* tests/incr07.at: New testcase.
* tests/Makefile.am (TESTSUITE_AT): Add new test.
* tests/testsuite.at: Likewise.
* THANKS: Updated.
This commit is contained in:
Sergey Poznyakoff
2013-09-15 10:13:45 +03:00
parent 0ea6e68655
commit 738fb9c2f4
8 changed files with 142 additions and 17 deletions

View File

@@ -596,6 +596,7 @@ char *zap_slashes (char *name);
char *normalize_filename (const char *name);
void replace_prefix (char **pname, const char *samp, size_t slen,
const char *repl, size_t rlen);
char *tar_savedir (const char *name, int must_exist);
typedef struct namebuf *namebuf_t;
namebuf_t namebuf_create (const char *dir);