diff options
Diffstat (limited to '')
-rw-r--r-- | gfx/webrender_bindings/RenderThread.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/gfx/webrender_bindings/RenderThread.cpp b/gfx/webrender_bindings/RenderThread.cpp index e1a41ee225..cb496c8fc5 100644 --- a/gfx/webrender_bindings/RenderThread.cpp +++ b/gfx/webrender_bindings/RenderThread.cpp @@ -979,6 +979,21 @@ void RenderThread::RegisterExternalImage( mSyncObjectNeededRenderTextures.emplace(aExternalImageId, texture); } mRenderTextures.emplace(aExternalImageId, texture); + +#ifdef DEBUG + int32_t maxAllowedIncrease = + StaticPrefs::gfx_testing_assert_render_textures_increase(); + + if (maxAllowedIncrease <= 0) { + mRenderTexturesLastTime = -1; + } else { + if (mRenderTexturesLastTime < 0) { + mRenderTexturesLastTime = static_cast<int32_t>(mRenderTextures.size()); + } + MOZ_ASSERT((static_cast<int32_t>(mRenderTextures.size()) - + mRenderTexturesLastTime) < maxAllowedIncrease); + } +#endif } void RenderThread::UnregisterExternalImage( |