From ba081be327dac7fe6018ee4f14e9b07ace99ac73 Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Sun, 8 Oct 2006 20:56:52 +0000 Subject: [PATCH] Made the push_dir() function take an option to skip the actual chdir() call. Used when the dest-dir doesn't exist and --dry-run was specified. --- util.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/util.c b/util.c index afff767d..72e08597 100644 --- a/util.c +++ b/util.c @@ -944,7 +944,7 @@ void die_on_unsafe_path(char *path, int strip_filename) /* Like chdir(), but it keeps track of the current directory (in the * global "curr_dir"), and ensures that the path size doesn't overflow. * Also cleans the path using the clean_fname() function. */ -int push_dir(char *dir) +int push_dir(char *dir, int set_path_only) { static int initialised; unsigned int len; @@ -965,7 +965,7 @@ int push_dir(char *dir) if ((*dir == '/' ? len : curr_dir_len + 1 + len) >= sizeof curr_dir) return 0; - if (chdir(dir)) + if (!set_path_only && chdir(dir)) return 0; if (*dir == '/') { -- 2.34.1