aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar kkinnunen <kkinnunen@nvidia.com>2016-01-25 00:31:49 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2016-01-25 00:31:49 -0800
commit9f63b442344eca60a92cff512c255b540930aa15 (patch)
tree59348b29569b8f5a02495f82061bb35242fabb58
parent1138be45eac9dd21b094c9774a6f9c612f9f8fa8 (diff)
Make BGRA8888 renderable on CHROMIUM_framebuffer_mixed_samples
Make BGRA8888 renderable on CHROMIUM_framebuffer_mixed_samples. BUG=skia:2992 GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1615833002 Review URL: https://codereview.chromium.org/1615833002
-rw-r--r--src/gpu/gl/GrGLCaps.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/gpu/gl/GrGLCaps.cpp b/src/gpu/gl/GrGLCaps.cpp
index 4467ef9a8b..350c3e570a 100644
--- a/src/gpu/gl/GrGLCaps.cpp
+++ b/src/gpu/gl/GrGLCaps.cpp
@@ -296,7 +296,8 @@ void GrGLCaps::init(const GrContextOptions& contextOptions,
fUsesMixedSamples = ctxInfo.hasExtension("GL_NV_framebuffer_mixed_samples") ||
ctxInfo.hasExtension("GL_CHROMIUM_framebuffer_mixed_samples");
// Workaround NVIDIA bug related to glInvalidateFramebuffer and mixed samples.
- if (fUsesMixedSamples && kNVIDIA_GrGLDriver == ctxInfo.driver()) {
+ if (fUsesMixedSamples && (kNVIDIA_GrGLDriver == ctxInfo.driver() ||
+ kChromium_GrGLDriver == ctxInfo.driver())) {
fDiscardRenderTargetSupport = false;
fInvalidateFBType = kNone_InvalidateFBType;
}
@@ -1209,7 +1210,7 @@ void GrGLCaps::initConfigTable(const GrGLContextInfo& ctxInfo, const GrGLInterfa
fConfigTable[kBGRA_8888_GrPixelConfig].fFlags = ConfigInfo::kTextureable_Flag |
ConfigInfo::kRenderable_Flag;
if (ctxInfo.hasExtension("GL_CHROMIUM_renderbuffer_format_BGRA8888") &&
- this->usesMSAARenderBuffers()) {
+ (this->usesMSAARenderBuffers() || this->fMSFBOType == kMixedSamples_MSFBOType)) {
fConfigTable[kBGRA_8888_GrPixelConfig].fFlags |=
ConfigInfo::kRenderableWithMSAA_Flag;
}