diff options
author | 2013-10-15 14:18:16 +0000 | |
---|---|---|
committer | 2013-10-15 14:18:16 +0000 | |
commit | 6b7938f9cb250086a7c6325cf31576f894ca4a1b (patch) | |
tree | cc00f866cb35940b524b2b8f698774687390bef4 /src/gpu/gl/GrGpuGL.cpp | |
parent | fbc58a305518fe611113a51649bf557c991ac8cf (diff) |
separate state for msaa renderability
R=robertphillips@google.com, brian@thesalomons.net
Author: bsalomon@google.com
Review URL: https://codereview.chromium.org/26695005
git-svn-id: http://skia.googlecode.com/svn/trunk@11770 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/gpu/gl/GrGpuGL.cpp')
-rw-r--r-- | src/gpu/gl/GrGpuGL.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/gpu/gl/GrGpuGL.cpp b/src/gpu/gl/GrGpuGL.cpp index 5845066291..f0815a687d 100644 --- a/src/gpu/gl/GrGpuGL.cpp +++ b/src/gpu/gl/GrGpuGL.cpp @@ -2398,8 +2398,8 @@ inline bool can_blit_framebuffer(const GrSurface* dst, const GrSurface* src, const GrGpuGL* gpu, bool* wouldNeedTempFBO = NULL) { - if (gpu->glCaps().isConfigRenderable(dst->config()) && - gpu->glCaps().isConfigRenderable(src->config()) && + if (gpu->glCaps().isConfigRenderable(dst->config(), dst->desc().fSampleCnt > 0) && + gpu->glCaps().isConfigRenderable(src->config(), src->desc().fSampleCnt > 0) && gpu->glCaps().usesMSAARenderBuffers()) { // ES3 doesn't allow framebuffer blits when the src has MSAA and the configs don't match // or the rects are not the same (not just the same size but have the same edges). @@ -2439,8 +2439,10 @@ inline bool can_copy_texsubimage(const GrSurface* dst, if (NULL != srcRT && srcRT->renderFBOID() != srcRT->textureFBOID()) { return false; } - if (gpu->glCaps().isConfigRenderable(src->config()) && NULL != dst->asTexture() && - dst->origin() == src->origin() && kIndex_8_GrPixelConfig != src->config()) { + if (gpu->glCaps().isConfigRenderable(src->config(), src->desc().fSampleCnt > 0) && + NULL != dst->asTexture() && + dst->origin() == src->origin() && + kIndex_8_GrPixelConfig != src->config()) { if (NULL != wouldNeedTempFBO) { *wouldNeedTempFBO = NULL == src->asRenderTarget(); } |