summaryrefslogtreecommitdiff
path: root/indra/newview/lleventpoll.cpp
diff options
context:
space:
mode:
authorAndrey Lihatskiy <alihatskiy@productengine.com>2021-02-01 22:15:04 +0200
committerAndrey Lihatskiy <alihatskiy@productengine.com>2021-02-01 22:15:04 +0200
commitcc73af4ff1d3b48a36a5bfa173d2c433565055c0 (patch)
treeaa4c735519a3d0dcd71b4dec8e5c6485df861456 /indra/newview/lleventpoll.cpp
parentaff37221dd26bc939b58ab959c8183cd36647aa6 (diff)
parent21565a1f3fe1ae737e2f91c58be2c3cb0b5a2fec (diff)
Merge branch 'master' into DRTVWR-527-maint
Diffstat (limited to 'indra/newview/lleventpoll.cpp')
-rw-r--r--indra/newview/lleventpoll.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/indra/newview/lleventpoll.cpp b/indra/newview/lleventpoll.cpp
index 299fffd9ab..4b5fd8a758 100644
--- a/indra/newview/lleventpoll.cpp
+++ b/indra/newview/lleventpoll.cpp
@@ -166,6 +166,14 @@ namespace Details
// LL_DEBUGS("LLEventPollImpl::eventPollCoro") << "<" << counter << "> result = "
// << LLSDXMLStreamer(result) << LL_ENDL;
+ if (gDisconnected)
+ {
+ // Lost connection or disconnected during quit, don't process sim/region update
+ // messages, they might populate some cleaned up classes (LLWorld, region and object list)
+ LL_INFOS("LLEventPollImpl") << "Dropping event messages" << LL_ENDL;
+ break;
+ }
+
LLSD httpResults = result["http_result"];
LLCore::HttpStatus status = LLCoreHttpUtil::HttpCoroutineAdapter::getStatusFromLLSD(httpResults);
@@ -210,7 +218,7 @@ namespace Details
llcoro::suspendUntilTimeout(waitToRetry);
- if (mDone)
+ if (mDone || gDisconnected)
break;
LL_INFOS("LLEventPollImpl") << "<" << counter << "> About to retry request." << LL_ENDL;
continue;