summaryrefslogtreecommitdiffstats
path: root/gpu
diff options
context:
space:
mode:
authorzmo <zmo@chromium.org>2015-01-22 19:21:04 -0800
committerCommit bot <commit-bot@chromium.org>2015-01-23 03:22:07 +0000
commitcbb1dd0a838a97355a5378ad7afad1631a5047a3 (patch)
tree9a3713d0c51445aecd6a017084071997757a7c60 /gpu
parente3a5f152ba4c6daac579b5f801a723415eb24241 (diff)
downloadchromium_src-cbb1dd0a838a97355a5378ad7afad1631a5047a3.zip
chromium_src-cbb1dd0a838a97355a5378ad7afad1631a5047a3.tar.gz
chromium_src-cbb1dd0a838a97355a5378ad7afad1631a5047a3.tar.bz2
Make ParseUniformName() more robust by handling empty string.
BUG=445653 TEST=unittests R=piman@chromium.org Review URL: https://codereview.chromium.org/865973004 Cr-Commit-Position: refs/heads/master@{#312759}
Diffstat (limited to 'gpu')
-rw-r--r--gpu/command_buffer/common/gles2_cmd_utils.cc2
-rw-r--r--gpu/command_buffer/common/gles2_cmd_utils_unittest.cc1
2 files changed, 3 insertions, 0 deletions
diff --git a/gpu/command_buffer/common/gles2_cmd_utils.cc b/gpu/command_buffer/common/gles2_cmd_utils.cc
index 6a483f6..638245b7 100644
--- a/gpu/command_buffer/common/gles2_cmd_utils.cc
+++ b/gpu/command_buffer/common/gles2_cmd_utils.cc
@@ -791,6 +791,8 @@ bool GLES2Util::ParseUniformName(
size_t* array_pos,
int* element_index,
bool* getting_array) {
+ if (name.empty())
+ return false;
bool getting_array_location = false;
size_t open_pos = std::string::npos;
base::CheckedNumeric<int> index = 0;
diff --git a/gpu/command_buffer/common/gles2_cmd_utils_unittest.cc b/gpu/command_buffer/common/gles2_cmd_utils_unittest.cc
index 2b1c93e..58a6c38 100644
--- a/gpu/command_buffer/common/gles2_cmd_utils_unittest.cc
+++ b/gpu/command_buffer/common/gles2_cmd_utils_unittest.cc
@@ -390,6 +390,7 @@ TEST_F(GLES2UtilTest, ParseUniformName) {
CheckParseUniformName("u_name[03][02]", true, 10u, 2, true);
CheckParseUniformName("u_name[30][20]", true, 10u, 20, true);
CheckParseUniformName("u_name[030][020]", true, 11u, 20, true);
+ CheckParseUniformName("", false, std::string::npos, 0, false);
}
} // namespace gles2