X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Finternal%2Frender%2Fshaders%2Fprogram.cpp;h=451de0bb6c7083eeccb9bf7e90e73e82b30a29c9;hb=649ec06daecb510fb84fe4642a6af957f127e7ab;hp=e769a81d29c10ae5aac9f4693560c882b49725f9;hpb=d949c5d33642952500927df924714b3c5790750d;p=platform%2Fcore%2Fuifw%2Fdali-core.git diff --git a/dali/internal/render/shaders/program.cpp b/dali/internal/render/shaders/program.cpp index e769a81..451de0b 100644 --- a/dali/internal/render/shaders/program.cpp +++ b/dali/internal/render/shaders/program.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2017 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -258,10 +258,10 @@ void Program::GetActiveSamplerUniforms() for( int i=0; i( i ), uniformMaxNameLength, &nameLength, &number, &type, name ); - if( type == GL_SAMPLER_2D || type == GL_SAMPLER_CUBE ) /// Is there a native sampler type? + if( type == GL_SAMPLER_2D || type == GL_SAMPLER_CUBE || type == GL_SAMPLER_EXTERNAL_OES ) { GLuint location = mGlAbstraction.GetUniformLocation( mProgramId, name ); samplerNames.push_back(name); @@ -272,14 +272,17 @@ void Program::GetActiveSamplerUniforms() //Determine declaration order of each sampler char* fragShader = strdup( mProgramData->GetFragmentShader() ); - const char* token = strtok( fragShader, " ;\n"); + char* nextPtr = NULL; + const char* token = strtok_r( fragShader, " ;\n", &nextPtr ); int samplerPosition = 0; while( token ) { - if( ( strncmp( token, "sampler2D", 9u ) == 0 ) || ( strncmp( token, "samplerCube", 11u ) == 0 ) ) + if( ( strncmp( token, "sampler2D", 9u ) == 0 ) || + ( strncmp( token, "samplerCube", 11u ) == 0 ) || + ( strncmp( token, "samplerExternalOES", 18u ) == 0 ) ) { bool found( false ); - token = strtok( NULL, " ;\n"); + token = strtok_r( NULL, " ;\n", &nextPtr ); for( size_t i=0; i