From f3832fc495cbdb9059573f12b7a0c515b284c9fd Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Thu, 30 Jun 2016 08:29:07 +0000 Subject: Let bootstrap signal reinitialize of defaults --- defaults/src/vespa/defaults.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'defaults/src') diff --git a/defaults/src/vespa/defaults.cpp b/defaults/src/vespa/defaults.cpp index 387f28df542..ab76cd06175 100644 --- a/defaults/src/vespa/defaults.cpp +++ b/defaults/src/vespa/defaults.cpp @@ -7,6 +7,7 @@ #include #include #include +#include namespace { @@ -14,10 +15,10 @@ const char *defaultHome = "/opt/vespa/"; char computedHome[PATH_MAX]; int defaultWebServicePort = 8080; int defaultPortBase = 19000; +std::atomic initialized(false); void findDefaults() { - static int hasRun = 0; - if (hasRun) return; + if (initialized) return; const char *env = getenv("VESPA_HOME"); if (env != NULL) { DIR *dp = NULL; @@ -63,7 +64,7 @@ void findDefaults() { fprintf(stderr, "warning\tbad VESPA_PORT_BASE '%s' (ignored)\n", env); } } - hasRun = 1; + initialized = true; } } @@ -118,6 +119,7 @@ Defaults::bootstrap(const char *argv0) putenv(&setting[0]); } } + initialized = false; } const char * -- cgit v1.2.3