From: Wayne Davison Date: Wed, 8 Apr 2020 01:08:05 +0000 (-0700) Subject: Fix the default skip-compress list. X-Git-Tag: v3.2.0pre1~178 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2598ca668b739c50f4206c06dc1c8d3a561b0866;p=thirdparty%2Frsync.git Fix the default skip-compress list. The default value of the skip-compress list actually comes from the daemon's default lp_dont_compress() value, but a while back the vars stopped getting default values in a non-daemon run. I added a call to reset_daemon_vars() so that the "Vars" values get set from "Defaults". --- diff --git a/loadparm.c b/loadparm.c index 029f358f..534e7b63 100644 --- a/loadparm.c +++ b/loadparm.c @@ -449,7 +449,7 @@ static struct parm_struct parm_table[] = }; /* Initialise the Default all_vars structure. */ -static void reset_all_vars(void) +void reset_daemon_vars(void) { memcpy(&Vars, &Defaults, sizeof Vars); } @@ -872,7 +872,7 @@ int lp_load(char *pszFname, int globals_only) { bInGlobalSection = True; - reset_all_vars(); + reset_daemon_vars(); /* We get sections first, so have to start 'behind' to make up. */ iSectionIndex = -1; diff --git a/main.c b/main.c index 1328c504..9af9e5d3 100644 --- a/main.c +++ b/main.c @@ -1681,6 +1681,10 @@ int main(int argc,char *argv[]) memset(&stats, 0, sizeof(stats)); + /* Even a non-daemon runs needs the default config values to be set, e.g. + * lp_dont_compress() is queried when no --skip-compress option is set. */ + reset_daemon_vars(); + if (argc < 2) { usage(FERROR); exit_cleanup(RERR_SYNTAX);