Index: gpu/command_buffer/service/gles2_cmd_decoder.cc |
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc |
index bafcfa05d0056a7cb46436f2f63cf0457ade5c10..8654c944b97e13cdba96b77b3d0622573a345df0 100644 |
--- a/gpu/command_buffer/service/gles2_cmd_decoder.cc |
+++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc |
@@ -12437,8 +12437,14 @@ void GLES2DecoderImpl::DoCopyTexImage2D( |
bool use_workaround = NeedsCopyTextureImageWorkaround( |
final_internal_format, channels_exist, &source_texture_service_id, |
&source_texture_target); |
- if (use_workaround) { |
- DCHECK(!requires_luma_blit); |
+ if (requires_luma_blit) { |
+ copy_tex_image_blit_->DoCopyTexImage2DToLUMAComatabilityTexture( |
+ this, texture->service_id(), texture->target(), target, format, |
+ type, level, internal_format, copyX, copyY, copyWidth, copyHeight, |
+ framebuffer_state_.bound_read_framebuffer->service_id(), |
+ framebuffer_state_.bound_read_framebuffer |
+ ->GetReadBufferInternalFormat()); |
+ } else if(use_workaround) { |
Zhenyao Mo
2016/06/14 22:49:14
nit: a space after if.
erikchen
2016/06/14 22:53:19
Done.
|
GLenum dest_texture_target = target; |
GLenum framebuffer_target = features().chromium_framebuffer_multisample |
? GL_READ_FRAMEBUFFER_EXT |
@@ -12479,17 +12485,8 @@ void GLES2DecoderImpl::DoCopyTexImage2D( |
glDeleteTextures(1, &temp_texture); |
} else { |
- if (requires_luma_blit) { |
- copy_tex_image_blit_->DoCopyTexImage2DToLUMAComatabilityTexture( |
- this, texture->service_id(), texture->target(), target, format, |
- type, level, internal_format, copyX, copyY, copyWidth, copyHeight, |
- framebuffer_state_.bound_read_framebuffer->service_id(), |
- framebuffer_state_.bound_read_framebuffer |
- ->GetReadBufferInternalFormat()); |
- } else { |
- glCopyTexImage2D(target, level, final_internal_format, copyX, copyY, |
- copyWidth, copyHeight, border); |
- } |
+ glCopyTexImage2D(target, level, final_internal_format, copyX, copyY, |
+ copyWidth, copyHeight, border); |
} |
} |
GLenum error = LOCAL_PEEK_GL_ERROR(func_name); |