From: Eunki, Hong Date: Wed, 25 Oct 2023 07:35:35 +0000 (+0900) Subject: Revert "[Tizen] Fix node texture draw issue" X-Git-Tag: accepted/tizen/unified/20231031.163525~24 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=88ff9c37e3e82b160725b2ef884478caccd22432;p=platform%2Fcore%2Fuifw%2Fdali-core.git Revert "[Tizen] Fix node texture draw issue" This reverts commit 8162df5f86598c59e4af278176d66c5dd94c7ab0. --- diff --git a/automated-tests/src/dali/utc-Dali-TextureSet.cpp b/automated-tests/src/dali/utc-Dali-TextureSet.cpp index 71eb2cb..a06ae42 100644 --- a/automated-tests/src/dali/utc-Dali-TextureSet.cpp +++ b/automated-tests/src/dali/utc-Dali-TextureSet.cpp @@ -471,7 +471,7 @@ int UtcDaliTextureSetRemoveTextureAndGetTextureCount(void) // Set empty texture so we can remove it. textureSet.SetTexture(1u, Texture()); - DALI_TEST_EQUALS(textureSet.GetTextureCount(), 2u, TEST_LOCATION); + DALI_TEST_EQUALS(textureSet.GetTextureCount(), 1u, TEST_LOCATION); DALI_TEST_EQUALS(textureSet.GetTexture(0u), image0, TEST_LOCATION); application.SendNotification(); @@ -505,7 +505,7 @@ int UtcDaliTextureSetRemoveTextureAndGetTextureCount(void) // Set empty texture end of textureset. textureSet.SetTexture(2u, Texture()); - DALI_TEST_EQUALS(textureSet.GetTextureCount(), 3u, TEST_LOCATION); + DALI_TEST_EQUALS(textureSet.GetTextureCount(), 1u, TEST_LOCATION); DALI_TEST_EQUALS(textureSet.GetTexture(0u), image0, TEST_LOCATION); application.SendNotification(); diff --git a/dali/internal/event/rendering/texture-set-impl.cpp b/dali/internal/event/rendering/texture-set-impl.cpp index a229fe6..61db3dc 100644 --- a/dali/internal/event/rendering/texture-set-impl.cpp +++ b/dali/internal/event/rendering/texture-set-impl.cpp @@ -52,6 +52,12 @@ void TextureSet::SetTexture(uint32_t index, TexturePtr texture) } SceneGraph::SetTextureMessage(mEventThreadServices, *mSceneObject, index, renderTexture); + + if(!texture) + { + // Check wheter we need to pop back textures + TrimContainers(); + } } Texture* TextureSet::GetTexture(uint32_t index) const @@ -86,6 +92,12 @@ void TextureSet::SetSampler(uint32_t index, SamplerPtr sampler) } SceneGraph::SetSamplerMessage(mEventThreadServices, *mSceneObject, index, renderSampler); + + if(!sampler) + { + // Check wheter we need to pop back sampler + TrimContainers(); + } } Sampler* TextureSet::GetSampler(uint32_t index) const