Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(134)

Side by Side Diff: gpu/command_buffer/service/gles2_cmd_decoder_passthrough.cc

Issue 2841573002: Revert of Fix blits from multisampled renderbuffers to alpha:false WebGL back buffer. (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "gpu/command_buffer/service/gles2_cmd_decoder_passthrough.h" 5 #include "gpu/command_buffer/service/gles2_cmd_decoder_passthrough.h"
6 6
7 #include "base/strings/string_split.h" 7 #include "base/strings/string_split.h"
8 #include "gpu/command_buffer/service/feature_info.h" 8 #include "gpu/command_buffer/service/feature_info.h"
9 #include "gpu/command_buffer/service/gl_utils.h" 9 #include "gpu/command_buffer/service/gl_utils.h"
10 #include "ui/gl/gl_version_info.h" 10 #include "ui/gl/gl_version_info.h"
(...skipping 867 matching lines...) Expand 10 before | Expand all | Expand 10 after
878 glBindTexture(target, service_id); 878 glBindTexture(target, service_id);
879 } 879 }
880 } 880 }
881 881
882 // Reset the active texture unit if it was changed 882 // Reset the active texture unit if it was changed
883 if (cur_texture_unit != active_texture_unit_) { 883 if (cur_texture_unit != active_texture_unit_) {
884 glActiveTexture(static_cast<GLenum>(GL_TEXTURE0 + active_texture_unit_)); 884 glActiveTexture(static_cast<GLenum>(GL_TEXTURE0 + active_texture_unit_));
885 } 885 }
886 } 886 }
887 887
888 error::Error GLES2DecoderPassthroughImpl::BindTexImage2DCHROMIUMImpl(
889 GLenum target,
890 GLenum internalformat,
891 GLint imageId) {
892 if (target != GL_TEXTURE_2D) {
893 InsertError(GL_INVALID_ENUM, "Invalid target");
894 return error::kNoError;
895 }
896
897 gl::GLImage* image = image_manager_->LookupImage(imageId);
898 if (image == nullptr) {
899 InsertError(GL_INVALID_OPERATION, "No image found with the given ID");
900 return error::kNoError;
901 }
902
903 if (internalformat) {
904 if (!image->BindTexImageWithInternalformat(target, internalformat)) {
905 image->CopyTexImage(target);
906 }
907 } else {
908 if (!image->BindTexImage(target)) {
909 image->CopyTexImage(target);
910 }
911 }
912
913 return error::kNoError;
914 }
915
916 #define GLES2_CMD_OP(name) \ 888 #define GLES2_CMD_OP(name) \
917 { \ 889 { \
918 &GLES2DecoderPassthroughImpl::Handle##name, cmds::name::kArgFlags, \ 890 &GLES2DecoderPassthroughImpl::Handle##name, cmds::name::kArgFlags, \
919 cmds::name::cmd_flags, \ 891 cmds::name::cmd_flags, \
920 sizeof(cmds::name) / sizeof(CommandBufferEntry) - 1, \ 892 sizeof(cmds::name) / sizeof(CommandBufferEntry) - 1, \
921 }, /* NOLINT */ 893 }, /* NOLINT */
922 894
923 const GLES2DecoderPassthroughImpl::CommandInfo 895 const GLES2DecoderPassthroughImpl::CommandInfo
924 GLES2DecoderPassthroughImpl::command_info[] = { 896 GLES2DecoderPassthroughImpl::command_info[] = {
925 GLES2_COMMAND_LIST(GLES2_CMD_OP)}; 897 GLES2_COMMAND_LIST(GLES2_CMD_OP)};
926 898
927 #undef GLES2_CMD_OP 899 #undef GLES2_CMD_OP
928 900
929 } // namespace gles2 901 } // namespace gles2
930 } // namespace gpu 902 } // namespace gpu
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698