summaryrefslogtreecommitdiff
path: root/indra/llcommon/llevents.cpp
diff options
context:
space:
mode:
authorOz Linden <oz@lindenlab.com>2010-12-24 07:41:41 -0500
committerOz Linden <oz@lindenlab.com>2010-12-24 07:41:41 -0500
commit14d830ca43a7114140ebeb16a76829db4d21a95b (patch)
tree169ab24a903d59c762259810de684f1dcb8c4186 /indra/llcommon/llevents.cpp
parent551bfb88fce8a9cd6faac440e3d89d79213550ed (diff)
parent5a4bb72b8d37ca51deb84e1490fdefe2908d2d59 (diff)
merge improved fix for STORM_785
Diffstat (limited to 'indra/llcommon/llevents.cpp')
-rw-r--r--indra/llcommon/llevents.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/indra/llcommon/llevents.cpp b/indra/llcommon/llevents.cpp
index 84a6620a77..97e2bdeb57 100644
--- a/indra/llcommon/llevents.cpp
+++ b/indra/llcommon/llevents.cpp
@@ -475,7 +475,7 @@ void LLEventPump::stopListening(const std::string& name)
*****************************************************************************/
bool LLEventStream::post(const LLSD& event)
{
- if (! mEnabled)
+ if (! mEnabled || !mSignal)
{
return false;
}
@@ -515,6 +515,8 @@ bool LLEventQueue::post(const LLSD& event)
void LLEventQueue::flush()
{
+ if(!mSignal) return;
+
// Consider the case when a given listener on this LLEventQueue posts yet
// another event on the same queue. If we loop over mEventQueue directly,
// we'll end up processing all those events during the same flush() call