Index: cc/resources/resource_provider.cc |
diff --git a/cc/resources/resource_provider.cc b/cc/resources/resource_provider.cc |
index 123d7f43d335b07fceb969dc2d3b8ea17f7a57a3..e228ca9da12c9f22cee24f6eae908caab7cd8549 100644 |
--- a/cc/resources/resource_provider.cc |
+++ b/cc/resources/resource_provider.cc |
@@ -2149,10 +2149,12 @@ uint8_t* ResourceProvider::MapImage(const Resource* resource, int* stride) { |
DCHECK(resource->image_id); |
GLES2Interface* gl = ContextGL(); |
DCHECK(gl); |
+ // MapImageCHROMIUM should be called prior to GetImageParameterivCHROMIUM. |
+ uint8_t* pixels = static_cast<uint8_t*>( |
+ gl->MapImageCHROMIUM(resource->image_id, GL_READ_WRITE)); |
gl->GetImageParameterivCHROMIUM( |
resource->image_id, GL_IMAGE_ROWBYTES_CHROMIUM, stride); |
- return static_cast<uint8_t*>( |
- gl->MapImageCHROMIUM(resource->image_id, GL_READ_WRITE)); |
+ return pixels; |
} |
DCHECK_EQ(Bitmap, resource->type); |
*stride = 0; |