daemon.c: replace `git_config()` with `git_config_get_bool()` family

Use `git_config_get_bool()` family instead of `git_config()` to take advantage of the config-set API which provides a cleaner control flow. Signed-off-by: Tanay Abhra <tanayabh@gmail.com> Reviewed-by: Matthieu Moy <Matthieu.Moy@imag.fr> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Tanay Abhra committed Aug 7, 2014 at 09:21 UTC 8939d32d818180cfd64c9eed7ad97bf2601d8f5f
1 file changed +4 -22
daemon.c
+4 -22
@@ -230,23 +230,6 @@ struct daemon_service {
230 int overridable;
231 };
232
233 -static struct daemon_service *service_looking_at;
234 -static int service_enabled;
235 -
236 -static int git_daemon_config(const char *var, const char *value, void *cb)
237 -{
238 - const char *service;
239 -
240 - if (skip_prefix(var, "daemon.", &service) &&
241 - !strcmp(service, service_looking_at->config_name)) {
242 - service_enabled = git_config_bool(var, value);
243 - return 0;
244 - }
245 -
246 - /* we are not interested in parsing any other configuration here */
247 - return 0;
248 -}
249 -
233 static int daemon_error(const char *dir, const char *msg)
234 {
235 if (!informative_errors)
@@ -324,6 +307,7 @@ static int run_service(const char *dir, struct daemon_service *service)
307 {
308 const char *path;
309 int enabled = service->enabled;
310 + struct strbuf var = STRBUF_INIT;
311
312 loginfo("Request %s for '%s'", service->name, dir);
313
@@ -354,11 +338,9 @@ static int run_service(const char *dir, struct daemon_service *service)
338 }
339
340 if (service->overridable) {
357 - service_looking_at = service;
358 - service_enabled = -1;
359 - git_config(git_daemon_config, NULL);
360 - if (0 <= service_enabled)
361 - enabled = service_enabled;
341 + strbuf_addf(&var, "daemon.%s", service->config_name);
342 + git_config_get_bool(var.buf, &enabled);
343 + strbuf_release(&var);
344 }
345 if (!enabled) {
346 logerror("'%s': service not enabled for '%s'",