Skip to content

Commit f53ff0d

Browse files
committed
Merge pull request opencv#18151 from alalek:core_trace_fix_location
2 parents 4f48dab + cd00d8f commit f53ff0d

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

modules/core/src/trace.cpp

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,12 @@ static bool getParameterTraceEnable()
8282
static int param_maxRegionDepthOpenCV = (int)utils::getConfigurationParameterSizeT("OPENCV_TRACE_DEPTH_OPENCV", 1);
8383
static int param_maxRegionChildrenOpenCV = (int)utils::getConfigurationParameterSizeT("OPENCV_TRACE_MAX_CHILDREN_OPENCV", 1000);
8484
static int param_maxRegionChildren = (int)utils::getConfigurationParameterSizeT("OPENCV_TRACE_MAX_CHILDREN", 10000);
85-
static cv::String param_traceLocation = utils::getConfigurationParameterString("OPENCV_TRACE_LOCATION", "OpenCVTrace");
85+
86+
static const cv::String& getParameterTraceLocation()
87+
{
88+
static cv::String param_traceLocation = utils::getConfigurationParameterString("OPENCV_TRACE_LOCATION", "OpenCVTrace");
89+
return param_traceLocation;
90+
}
8691

8792
#ifdef HAVE_OPENCL
8893
static bool param_synchronizeOpenCL = utils::getConfigurationParameterBool("OPENCV_TRACE_SYNC_OPENCL", false);
@@ -813,7 +818,7 @@ TraceStorage* TraceManagerThreadLocal::getStorage() const
813818
TraceStorage* global = getTraceManager().trace_storage.get();
814819
if (global)
815820
{
816-
const std::string filepath = cv::format("%s-%03d.txt", param_traceLocation.c_str(), threadID).c_str();
821+
const std::string filepath = cv::format("%s-%03d.txt", getParameterTraceLocation().c_str(), threadID).c_str();
817822
TraceMessage msg;
818823
const char* pos = strrchr(filepath.c_str(), '/'); // extract filename
819824
#ifdef _WIN32
@@ -848,7 +853,7 @@ TraceManager::TraceManager()
848853
activated = getParameterTraceEnable();
849854

850855
if (activated)
851-
trace_storage.reset(new SyncTraceStorage(std::string(param_traceLocation) + ".txt"));
856+
trace_storage.reset(new SyncTraceStorage(std::string(getParameterTraceLocation()) + ".txt"));
852857

853858
#ifdef OPENCV_WITH_ITT
854859
if (isITTEnabled())

0 commit comments

Comments
 (0)