diff options
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/lltexturefetch.cpp | 4 | ||||
-rw-r--r-- | indra/newview/lltoolpie.cpp | 6 |
2 files changed, 5 insertions, 5 deletions
diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp index e669393dba..38c9b3717d 100644 --- a/indra/newview/lltexturefetch.cpp +++ b/indra/newview/lltexturefetch.cpp @@ -1379,7 +1379,9 @@ bool LLTextureFetchWorker::doWork(S32 param) // // If it looks like we're busy, keep this request here. // Otherwise, advance into the HTTP states. - if (mFetcher->getHttpWaitersCount() || ! acquireHttpSemaphore()) + + if (!mHttpHasResource && // sometimes we get into this state when we already have an http resource, go ahead and send the request in that case + (mFetcher->getHttpWaitersCount() || ! acquireHttpSemaphore())) { setState(WAIT_HTTP_RESOURCE2); mFetcher->addHttpWaiter(this->mID); diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp index 935d61f7ea..83a707472e 100644 --- a/indra/newview/lltoolpie.cpp +++ b/indra/newview/lltoolpie.cpp @@ -128,11 +128,9 @@ BOOL LLToolPie::handleMouseDown(S32 x, S32 y, MASK mask) // left mouse down always picks transparent (but see handleMouseUp). // Also see LLToolPie::handleHover() - priorities are a bit different there. // Todo: we need a more consistent set of rules to work with - if (transp_object == visible_object || !visible_object) + if (transp_object == visible_object || !visible_object || + !transp_object) // avoid potential for null dereference below, don't make assumptions about behavior of pickImmediate { - // Note: if transparent object is null, then visible object is also null - // since transparent pick includes non-tranpsarent one. - // !transparent_object check will be covered by transparent_object == visible_object. mPick = transparent_pick; } else |