summaryrefslogtreecommitdiffstats
path: root/gpu
diff options
context:
space:
mode:
authorgman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-28 22:56:18 +0000
committergman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-06-28 22:56:18 +0000
commit29b20a26328b197b3c01d17ed6f28229a101837f (patch)
tree3fa687cb65a03dbb31085aa9613b0c0366775023 /gpu
parentad5956c54d1dfea2af30795bbd60779a45b4382e (diff)
downloadchromium_src-29b20a26328b197b3c01d17ed6f28229a101837f.zip
chromium_src-29b20a26328b197b3c01d17ed6f28229a101837f.tar.gz
chromium_src-29b20a26328b197b3c01d17ed6f28229a101837f.tar.bz2
Make swapbuffers copy use the correct format.
TEST=none BUG=82420 Review URL: http://codereview.chromium.org/7273047 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90861 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'gpu')
-rw-r--r--gpu/command_buffer/service/gles2_cmd_decoder.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder.cc b/gpu/command_buffer/service/gles2_cmd_decoder.cc
index b337ff3..ea43411 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder.cc
@@ -265,6 +265,7 @@ class Texture {
private:
GLES2DecoderImpl* decoder_;
GLuint id_;
+ GLenum format_;
gfx::Size size_;
DISALLOW_COPY_AND_ASSIGN(Texture);
};
@@ -1650,7 +1651,8 @@ ScopedResolvedFrameBufferBinder::~ScopedResolvedFrameBufferBinder() {
Texture::Texture(GLES2DecoderImpl* decoder)
: decoder_(decoder),
- id_(0) {
+ id_(0),
+ format_(0) {
}
Texture::~Texture() {
@@ -1686,6 +1688,7 @@ bool Texture::AllocateStorage(const gfx::Size& size, GLenum format) {
NULL);
size_ = size;
+ format_ = format;
return glGetError() == GL_NO_ERROR;
}
@@ -1696,7 +1699,7 @@ void Texture::Copy(const gfx::Size& size) {
ScopedTexture2DBinder binder(decoder_, id_);
glCopyTexImage2D(GL_TEXTURE_2D,
0, // level
- GL_RGBA,
+ format_,
0, 0,
size.width(),
size.height(),