From ad5dbb2ddb4fafecbbd8572e9b9b8ef858f7af5b Mon Sep 17 00:00:00 2001 From: John Zhang Date: Mon, 13 May 2019 17:19:36 +0800 Subject: [PATCH 1/2] fix toupper function call * Original pointer cast does nothing, as it doesn't change signature * toupper arugment type should be unsigned char Reference: https://en.cppreference.com/w/cpp/string/byte/toupper --- cocos/renderer/CCRenderState.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cocos/renderer/CCRenderState.cpp b/cocos/renderer/CCRenderState.cpp index bd02d53ed465..acb56f4bc7db 100644 --- a/cocos/renderer/CCRenderState.cpp +++ b/cocos/renderer/CCRenderState.cpp @@ -481,7 +481,8 @@ static RenderState::Blend parseBlend(const std::string& value) { // Convert the string to uppercase for comparison. std::string upper(value); - std::transform(upper.begin(), upper.end(), upper.begin(), (int(*)(int))toupper); + std::transform(upper.begin(), upper.end(), upper.begin(), [](unsigned char c) { + return std::toupper(c);}); if (upper == "ZERO") return RenderState::BLEND_ZERO; else if (upper == "ONE") From 2204a8a9dfadfd26dfb4ae2ca08cc76b0eab3478 Mon Sep 17 00:00:00 2001 From: john Date: Wed, 15 May 2019 13:03:51 +0800 Subject: [PATCH 2/2] add missing header --- cocos/renderer/CCRenderState.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/cocos/renderer/CCRenderState.cpp b/cocos/renderer/CCRenderState.cpp index acb56f4bc7db..e7e40219a72c 100644 --- a/cocos/renderer/CCRenderState.cpp +++ b/cocos/renderer/CCRenderState.cpp @@ -27,6 +27,7 @@ #include "renderer/CCRenderState.h" +#include #include #include "renderer/CCTexture2D.h"