Skip to content

Commit cc28b25

Browse files
vdyedscho
andcommitted
scalar: upgrade to newest FSMonitor config setting
When FSMonitor was upstreamed, the 'core.useBuiltinFSMonitor' config was deprecated and replaced with an overload of the 'core.fsmonitor' config (i.e., if a boolean value was specified in 'core.fsmonitor', it is treated the way 'core.useBuiltinFSMonitor' originally was). Because 'scalar register' actively sets that config, use it to upgrade the deprecated config setting. Co-authored-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Victoria Dye <vdye@github.com>
1 parent 744d6d9 commit cc28b25

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

scalar.c

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,23 @@ static int set_recommended_config(int reconfigure)
183183
int i;
184184
char *value;
185185

186+
/*
187+
* If a user has "core.usebuiltinfsmonitor" enabled, try to switch to
188+
* the new (non-deprecated) setting (core.fsmonitor).
189+
*/
190+
if (!git_config_get_string("core.usebuiltinfsmonitor", &value)) {
191+
char *dummy = NULL;
192+
if (git_config_get_string("core.fsmonitor", &dummy) &&
193+
git_config_set_gently("core.fsmonitor", value) < 0)
194+
return error(_("could not configure %s=%s"),
195+
"core.fsmonitor", value);
196+
if (git_config_set_gently("core.usebuiltinfsmonitor", NULL) < 0)
197+
return error(_("could not configure %s=%s"),
198+
"core.useBuiltinFSMonitor", "NULL");
199+
free(value);
200+
free(dummy);
201+
}
202+
186203
for (i = 0; config[i].key; i++) {
187204
if (set_scalar_config(config + i, reconfigure))
188205
return error(_("could not configure %s=%s"),

0 commit comments

Comments
 (0)