diff options
author | Dave Houlton <euclid@lindenlab.com> | 2022-02-01 15:44:09 -0700 |
---|---|---|
committer | Dave Houlton <euclid@lindenlab.com> | 2022-02-01 15:44:09 -0700 |
commit | 795a349b9f44183970b1e8abc632c4d7f8bbea37 (patch) | |
tree | 209d07d0ee724baf30104e5194192a3ed850767e | |
parent | 0b850360f5f3e520fa3bd321e2e105c24d1f46f0 (diff) |
Revert "Merged in euclid-16418-a (pull request #852)"
This reverts commit dcf8f695367a1bcc9c495ea93a89927dd83802af, reversing
changes made to 594910a8408f67f1af7c66d5a4dfde3626669245.
-rw-r--r-- | indra/newview/llviewermedia.cpp | 12 | ||||
-rw-r--r-- | indra/newview/llviewermedia.h | 1 |
2 files changed, 7 insertions, 6 deletions
diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp index c2087b7c35..6c04321539 100644 --- a/indra/newview/llviewermedia.cpp +++ b/indra/newview/llviewermedia.cpp @@ -1702,13 +1702,11 @@ void LLViewerMediaImpl::destroyMediaSource() cancelMimeTypeProbe(); - mLock.lock(); // Delay tear-down while bg thread is updating if(mMediaSource) { mMediaSource->setDeleteOK(true) ; mMediaSource = NULL; // shared pointer } - mLock.unlock(); } ////////////////////////////////////////////////////////////////////////////////////////// @@ -2903,11 +2901,16 @@ void LLViewerMediaImpl::update() return; } + // Push update to worker thread auto main_queue = LLMediaTextureUpdateThread::sEnabled ? mMainQueue.lock() : nullptr; ref(); // protect texture from deletion while active on bg queue if (main_queue) { + // replace GL name + //llassert(!mTextureId.isNull()); + //LLImageGL* base_image = LLViewerTextureManager::getMediaTexture(mTextureId)->getGLTexture(); + //GLuint retired_name = base_image->allocNew(); main_queue->postTo( mTexUpdateQueue, // Worker thread queue [this]() // work done on update worker thread @@ -2931,12 +2934,12 @@ void LLViewerMediaImpl::update() void LLViewerMediaImpl::doMediaTexUpdate() { LL_PROFILE_ZONE_SCOPED_CATEGORY_MEDIA; - mLock.lock(); // don't allow media source tear-down during update - LLViewerMediaTexture* media_tex = updateMediaImage(); if (media_tex && mMediaSource) { + llassert(mMediaSource); + LLRect dirty_rect; S32 media_width = mMediaSource->getTextureWidth(); S32 media_height = mMediaSource->getTextureHeight(); @@ -2984,7 +2987,6 @@ void LLViewerMediaImpl::doMediaTexUpdate() mMediaSource->resetDirty(); } } - mLock.unlock(); } ////////////////////////////////////////////////////////////////////////////////////////// diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h index 0afb2162ab..03a14421ff 100644 --- a/indra/newview/llviewermedia.h +++ b/indra/newview/llviewermedia.h @@ -432,7 +432,6 @@ private: private: // a single media url with some data and an impl. boost::shared_ptr<LLPluginClassMedia> mMediaSource; - LLMutex mLock; F64 mZoomFactor; LLUUID mTextureId; bool mMovieImageHasMips; |