diff options
Diffstat (limited to 'indra/llmessage')
| -rwxr-xr-x | indra/llmessage/message.cpp | 7 | ||||
| -rwxr-xr-x | indra/llmessage/message.h | 3 | ||||
| -rwxr-xr-x | indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp | 3 | ||||
| -rwxr-xr-x | indra/llmessage/tests/lltrustedmessageservice_test.cpp | 3 | 
4 files changed, 11 insertions, 5 deletions
| diff --git a/indra/llmessage/message.cpp b/indra/llmessage/message.cpp index e9ce94ab3b..3c3683f12a 100755 --- a/indra/llmessage/message.cpp +++ b/indra/llmessage/message.cpp @@ -77,6 +77,7 @@  #include "v3math.h"  #include "v4math.h"  #include "lltransfertargetvfile.h" +#include "llpounceable.h"  // Constants  //const char* MESSAGE_LOG_FILENAME = "message.log"; @@ -1776,7 +1777,9 @@ std::ostream& operator<<(std::ostream& s, LLMessageSystem &msg)  	return s;  } -LLMessageSystem	*gMessageSystem = NULL; +// LLPounceable supports callWhenReady(), to permit clients to queue up (e.g.) +// callback registrations for when gMessageSystem is first assigned +LLPounceable<LLMessageSystem*, LLPounceableStatic> gMessageSystem;  // update appropriate ping info  void	process_complete_ping_check(LLMessageSystem *msgsystem, void** /*user_data*/) @@ -2693,7 +2696,7 @@ void end_messaging_system(bool print_summary)  			LL_INFOS("Messaging") << str.str().c_str() << LL_ENDL;  		} -		delete gMessageSystem; +		delete static_cast<LLMessageSystem*>(gMessageSystem);  		gMessageSystem = NULL;  	}  } diff --git a/indra/llmessage/message.h b/indra/llmessage/message.h index 348b09b992..a6fabf2126 100755 --- a/indra/llmessage/message.h +++ b/indra/llmessage/message.h @@ -60,6 +60,7 @@  #include "llmessagesenderinterface.h"  #include "llstoredmessage.h" +#include "llpounceable.h"  const U32 MESSAGE_MAX_STRINGS_LENGTH = 64;  const U32 MESSAGE_NUMBER_OF_HASH_BUCKETS = 8192; @@ -830,7 +831,7 @@ private:  // external hook into messaging system -extern LLMessageSystem	*gMessageSystem; +extern LLPounceable<LLMessageSystem*, LLPounceableStatic> gMessageSystem;  // Must specific overall system version, which is used to determine  // if a patch is available in the message template checksum verification. diff --git a/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp b/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp index 3b04530c1a..e20f61b73f 100755 --- a/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp +++ b/indra/llmessage/tests/lltemplatemessagedispatcher_test.cpp @@ -31,11 +31,12 @@  #include "llhost.h"  #include "message.h"  #include "llsd.h" +#include "llpounceable.h"  #include "llhost.cpp" // Needed for copy operator  #include "net.cpp" // Needed by LLHost. -LLMessageSystem * gMessageSystem = NULL; +LLPounceable<LLMessageSystem*, LLPounceableStatic> gMessageSystem;  // sensor test doubles  bool gClearRecvWasCalled = false; diff --git a/indra/llmessage/tests/lltrustedmessageservice_test.cpp b/indra/llmessage/tests/lltrustedmessageservice_test.cpp index 55748ad27e..41f982a7e2 100755 --- a/indra/llmessage/tests/lltrustedmessageservice_test.cpp +++ b/indra/llmessage/tests/lltrustedmessageservice_test.cpp @@ -33,8 +33,9 @@  #include "message.h"  #include "llmessageconfig.h"  #include "llhttpnode_stub.cpp" +#include "llpounceable.h" -LLMessageSystem* gMessageSystem = NULL; +LLPounceable<LLMessageSystem*, LLPounceableStatic> gMessageSystem;  LLMessageConfig::SenderTrust  LLMessageConfig::getSenderTrustedness(const std::string& msg_name) | 
