diff options
author | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-20 00:17:34 +0000 |
---|---|---|
committer | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-01-20 00:17:34 +0000 |
commit | 05afda1f2a7e8584d23878b5994b8cdfbc678c60 (patch) | |
tree | 31a85b88367458717cf3a87ca717d77329213767 /gpu/command_buffer/service/gles2_cmd_decoder.cc | |
parent | 9277111a69aa069feec820d7a31cc33e3e988bdb (diff) | |
download | chromium_src-05afda1f2a7e8584d23878b5994b8cdfbc678c60.zip chromium_src-05afda1f2a7e8584d23878b5994b8cdfbc678c60.tar.gz chromium_src-05afda1f2a7e8584d23878b5994b8cdfbc678c60.tar.bz2 |
Fix for gl programs. An unsuccessful link should report
the link is unsuccessful but not replace the old program.
TEST=webgl conformance tests pass
BUG=none
Review URL: http://codereview.chromium.org/6242006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71882 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu/command_buffer/service/gles2_cmd_decoder.cc')
-rw-r--r-- | gpu/command_buffer/service/gles2_cmd_decoder.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc index 4537212..9a5c544 100644 --- a/gpu/command_buffer/service/gles2_cmd_decoder.cc +++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc @@ -3607,16 +3607,17 @@ void GLES2DecoderImpl::DoLinkProgram(GLuint program) { if (!info) { return; } + + info->ClearLinkStatus(); if (!info->CanLink()) { return; } + glLinkProgram(info->service_id()); GLint success = 0; glGetProgramiv(info->service_id(), GL_LINK_STATUS, &success); if (success) { info->Update(); - } else { - info->Reset(); } }; |