From aefdba1230de456784d220982ab8b4dbe3cde17d Mon Sep 17 00:00:00 2001 From: Nat Goodspeed <nat@lindenlab.com> Date: Thu, 25 Jun 2015 17:00:47 -0400 Subject: [PATCH] MAINT-5232: Make LLHTTPClientAdapter not be an LLSingleton. llhttpclientadapter_test.cpp starts its every test by explicitly instantiating a local LLHTTPClientAdapter object. This is an abuse of LLSingleton, and if it had been properly defined (private constructor), it should never have compiled. Looked at the other way, though, every known reference to LLHTTPClientAdapter instantiates a local object. Why did someone think it should be an LLSingleton in the first place? Remove LLSingleton<> as a base class; remove llsingleton.h. This makes llhttpclientadapter_test.cpp work just fine. One might also question what value this class adds. It seems to do very little -- but more significantly, the ONLY references in the source tree are its declaration, definition and test. Nobody actually uses it anywhere. --- indra/llmessage/llhttpclientadapter.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/indra/llmessage/llhttpclientadapter.h b/indra/llmessage/llhttpclientadapter.h index 270282c66fb..ab0d2191551 100755 --- a/indra/llmessage/llhttpclientadapter.h +++ b/indra/llmessage/llhttpclientadapter.h @@ -28,9 +28,8 @@ #define LL_HTTPCLIENTADAPTER_H #include "llhttpclientinterface.h" -#include "llsingleton.h" // LLSingleton<> -class LLHTTPClientAdapter : public LLHTTPClientInterface, public LLSingleton<LLHTTPClientAdapter> +class LLHTTPClientAdapter : public LLHTTPClientInterface { public: virtual ~LLHTTPClientAdapter(); -- GitLab