From 8776b70b02bfdac2f7397214da1dee660360d0ba Mon Sep 17 00:00:00 2001 From: Sunghyun Kim Date: Wed, 3 Jun 2020 19:07:54 +0900 Subject: [PATCH] Fix CreateShader() for use EffectMap SetEffectPropertyMap is not working when application use samplerExternalOES in custom shader. so i modified to replace the shader only if appropriate Change-Id: Id610dc03ebe0b043f013e11899090378298169a6 --- .../internal/widget_view/widget_view_impl.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/widget_viewer_dali/internal/widget_view/widget_view_impl.cpp b/widget_viewer_dali/internal/widget_view/widget_view_impl.cpp index cc3511c..8419d1f 100644 --- a/widget_viewer_dali/internal/widget_view/widget_view_impl.cpp +++ b/widget_viewer_dali/internal/widget_view/widget_view_impl.cpp @@ -1596,7 +1596,11 @@ Dali::Shader WidgetView::CreateShader() DALI_LOG_ERROR( "'%s' parameter does not correctly specify a string\n", CUSTOM_FRAGMENT_SHADER ); } fragmentShader += customFragmentShader; - fragmentShader.replace( fragmentShader.find( DEFAULT_SAMPLER_TYPE_NAME ), strlen( DEFAULT_SAMPLER_TYPE_NAME ), CUSTOM_SAMPLER_TYPE_NAME ); + std::size_t found = fragmentShader.find( DEFAULT_SAMPLER_TYPE_NAME ); + if( found != std::string::npos ) + { + fragmentShader.replace( found , strlen( DEFAULT_SAMPLER_TYPE_NAME ), CUSTOM_SAMPLER_TYPE_NAME ); + } } else { -- 2.34.1