diff options
author | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-28 22:56:18 +0000 |
---|---|---|
committer | gman@chromium.org <gman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-28 22:56:18 +0000 |
commit | 29b20a26328b197b3c01d17ed6f28229a101837f (patch) | |
tree | 3fa687cb65a03dbb31085aa9613b0c0366775023 /gpu | |
parent | ad5956c54d1dfea2af30795bbd60779a45b4382e (diff) | |
download | chromium_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.cc | 7 |
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(), |