summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Houlton <euclid@lindenlab.com>2022-02-01 15:44:09 -0700
committerDave Houlton <euclid@lindenlab.com>2022-02-01 15:44:09 -0700
commit795a349b9f44183970b1e8abc632c4d7f8bbea37 (patch)
tree209d07d0ee724baf30104e5194192a3ed850767e
parent0b850360f5f3e520fa3bd321e2e105c24d1f46f0 (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.cpp12
-rw-r--r--indra/newview/llviewermedia.h1
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;