From d06739facfc13f5e7081783f85c1dd3576c3c155 Mon Sep 17 00:00:00 2001
From: Monty Brandenberg <monty@lindenlab.com>
Date: Fri, 17 Aug 2012 13:16:22 -0400
Subject: [PATCH] SH-3328  llcorehttp tracing control needed defensive logic
 for missing setting Guard for the typical case of a missing setting with a
 bracketing gSavedSettings.controlExists() call.

---
 indra/newview/llappcorehttp.cpp | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/indra/newview/llappcorehttp.cpp b/indra/newview/llappcorehttp.cpp
index a3cd0638d54..0d7d41304d0 100644
--- a/indra/newview/llappcorehttp.cpp
+++ b/indra/newview/llappcorehttp.cpp
@@ -85,10 +85,14 @@ void LLAppCoreHttp::init()
 	// 1 - Basic start, stop simple transitions
 	// 2 - libcurl CURLOPT_VERBOSE mode with brief lines
 	// 3 - with partial data content
-	long trace_level(0L);
-	trace_level = long(gSavedSettings.getU32("QAModeHttpTrace"));
-	status = LLCore::HttpRequest::setPolicyGlobalOption(LLCore::HttpRequest::GP_TRACE, trace_level);
-
+	static const std::string http_trace("QAModeHttpTrace");
+	if (gSavedSettings.controlExists(http_trace))
+	{
+		long trace_level(0L);
+		trace_level = long(gSavedSettings.getU32(http_trace));
+		status = LLCore::HttpRequest::setPolicyGlobalOption(LLCore::HttpRequest::GP_TRACE, trace_level);
+	}
+	
 	// Setup default policy and constrain if directed to
 	mPolicyDefault = LLCore::HttpRequest::DEFAULT_POLICY_ID;
 	static const std::string texture_concur("TextureFetchConcurrency");
-- 
GitLab