aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--gpu/src/GrGpuGL.cpp10
-rw-r--r--src/utils/mac/SkEGLContext_mac.cpp5
2 files changed, 11 insertions, 4 deletions
diff --git a/gpu/src/GrGpuGL.cpp b/gpu/src/GrGpuGL.cpp
index 3d86d1b5e5..d366953d86 100644
--- a/gpu/src/GrGpuGL.cpp
+++ b/gpu/src/GrGpuGL.cpp
@@ -271,7 +271,7 @@ GrGpuGL::GrGpuGL() {
// these a preprocess that generate some compile time constants.
// sanity check to make sure we can at least create an FBO from a POT texture
-
+
bool simpleFBOSuccess = fbo_test(fExts, 128, 128);
if (gPrintStartupSpew) {
if (!simpleFBOSuccess) {
@@ -293,7 +293,7 @@ GrGpuGL::GrGpuGL() {
if (fNPOTTextureSupport) {
fNPOTRenderTargetSupport = fbo_test(fExts, 200, 200);
}
-
+
if (gPrintStartupSpew) {
if (fNPOTTextureSupport) {
GrPrintf("NPOT textures supported\n");
@@ -1053,7 +1053,11 @@ bool GrGpuGL::readPixels(int left, int top, int width, int height,
return false;
}
- GrAssert(NULL != fCurrDrawState.fRenderTarget);
+ if (NULL == fCurrDrawState.fRenderTarget) {
+ return false;
+ }
+ flushRenderTarget();
+
const GrIRect& vp = ((GrGLRenderTarget*)fCurrDrawState.fRenderTarget)->viewport();
// Brian says that viewport rects are already upside down (grrrrr)
diff --git a/src/utils/mac/SkEGLContext_mac.cpp b/src/utils/mac/SkEGLContext_mac.cpp
index 8ac721b439..14ab14bc5d 100644
--- a/src/utils/mac/SkEGLContext_mac.cpp
+++ b/src/utils/mac/SkEGLContext_mac.cpp
@@ -58,7 +58,10 @@ bool SkEGLContext::init(int width, int height) {
glBindRenderbuffer(GL_RENDERBUFFER, dsID);
glRenderbufferStorage(GL_RENDERBUFFER, GL_DEPTH_STENCIL, width, height);
glFramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_STENCIL_ATTACHMENT, GL_RENDERBUFFER, dsID);
-
+ glViewport(0, 0, width, height);
+ glClearStencil(0);
+ glClear(GL_STENCIL_BUFFER_BIT);
+
GLenum status = glCheckFramebufferStatus(GL_FRAMEBUFFER);
return GL_FRAMEBUFFER_COMPLETE == status;
}