aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGLGpu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/gl/GrGLGpu.cpp')
-rw-r--r--src/gpu/gl/GrGLGpu.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/gpu/gl/GrGLGpu.cpp b/src/gpu/gl/GrGLGpu.cpp
index 6b194f98f7..79448e03fd 100644
--- a/src/gpu/gl/GrGLGpu.cpp
+++ b/src/gpu/gl/GrGLGpu.cpp
@@ -1749,9 +1749,12 @@ void GrGLGpu::flushWindowRectangles(const GrWindowRectsState& windowState,
#ifndef USE_NSIGHT
typedef GrWindowRectsState::Mode Mode;
SkASSERT(!windowState.enabled() || rt->renderFBOID()); // Window rects can't be used on-screen.
+ SkASSERT(!windowState.enabled() ||
+ GrCaps::WindowRectsSupport::kDrawAndClear == this->caps()->windowRectsSupport());
SkASSERT(windowState.numWindows() <= this->caps()->maxWindowRectangles());
+ SkASSERT(this->caps()->maxWindowRectangles() <= GrWindowRectangles::kMaxWindows);
- if (!this->caps()->maxWindowRectangles() ||
+ if (GrCaps::WindowRectsSupport::kNone == this->caps()->windowRectsSupport() ||
fHWWindowRectsState.knownEqualTo(origin, rt->getViewport(), windowState)) {
return;
}
@@ -1776,7 +1779,8 @@ void GrGLGpu::flushWindowRectangles(const GrWindowRectsState& windowState,
void GrGLGpu::disableWindowRectangles() {
#ifndef USE_NSIGHT
- if (!this->caps()->maxWindowRectangles() || fHWWindowRectsState.knownDisabled()) {
+ if (GrCaps::WindowRectsSupport::kNone == this->caps()->windowRectsSupport() ||
+ fHWWindowRectsState.knownDisabled()) {
return;
}
GL_CALL(WindowRectangles(GR_GL_EXCLUSIVE, 0, nullptr));