From 46bffd98cbd32846ed5144e0b5e9ddcd0a19fd04 Mon Sep 17 00:00:00 2001 From: Wayne Davison Date: Fri, 1 Apr 2005 00:18:40 +0000 Subject: [PATCH] Fix the setting of module_dirlen for a module path of "/". This fixes a crash in the exclude code when chroot is off. --- clientserver.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/clientserver.c b/clientserver.c index 47ed5e7a..d354ef74 100644 --- a/clientserver.c +++ b/clientserver.c @@ -321,13 +321,11 @@ static int rsync_module(int f_in, int f_out, int i) /* TODO: Perhaps take a list of gids, and make them into the * supplementary groups. */ - if (use_chroot) { + if (use_chroot || (module_dirlen = strlen(lp_path(i))) == 1) { module_dirlen = 0; set_filter_dir("/", 1); - } else { - module_dirlen = strlen(lp_path(i)); + } else set_filter_dir(lp_path(i), module_dirlen); - } p = lp_filter(i); parse_rule(&server_filter_list, p, MATCHFLG_WORD_SPLIT, -- 2.34.1