Title: [123701] trunk/Source/WebCore
Revision
123701
Author
[email protected]
Date
2012-07-25 19:46:37 -0700 (Wed, 25 Jul 2012)

Log Message

[BlackBerry] GraphicsContext3D::reshapeFBOs does not report when bound FBOs should be restored
https://bugs.webkit.org/show_bug.cgi?id=92304

Patch by Joshua Netterfield <[email protected]> on 2012-07-25
Reviewed by Rob Buis.

No new tests, because it corrects existing functionality, but it makes BlackBerry
pass framebuffer-bindings-unaffected-on-resize.html.

* platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
(WebCore::GraphicsContext3D::reshapeFBOs):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (123700 => 123701)


--- trunk/Source/WebCore/ChangeLog	2012-07-26 02:36:25 UTC (rev 123700)
+++ trunk/Source/WebCore/ChangeLog	2012-07-26 02:46:37 UTC (rev 123701)
@@ -1,5 +1,18 @@
 2012-07-25  Joshua Netterfield  <[email protected]>
 
+        [BlackBerry] GraphicsContext3D::reshapeFBOs does not report when bound FBOs should be restored
+        https://bugs.webkit.org/show_bug.cgi?id=92304
+
+        Reviewed by Rob Buis.
+
+        No new tests, because it corrects existing functionality, but it makes BlackBerry
+        pass framebuffer-bindings-unaffected-on-resize.html.
+
+        * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
+        (WebCore::GraphicsContext3D::reshapeFBOs):
+
+2012-07-25  Joshua Netterfield  <[email protected]>
+
         [BlackBerry] readPixels should set alpha to 255 instead of 0 when alpha is disabled
         https://bugs.webkit.org/show_bug.cgi?id=92303
 

Modified: trunk/Source/WebCore/platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp (123700 => 123701)


--- trunk/Source/WebCore/platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp	2012-07-26 02:36:25 UTC (rev 123700)
+++ trunk/Source/WebCore/platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp	2012-07-26 02:46:37 UTC (rev 123701)
@@ -173,7 +173,11 @@
         sampleCount = std::min(8, maxSampleCount);
     }
 
-    ::glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, m_boundFBO);
+    bool mustRestoreFBO = false;
+    if (m_boundFBO != m_fbo) {
+        mustRestoreFBO = true;
+        ::glBindFramebufferEXT(GraphicsContext3D::FRAMEBUFFER, m_fbo);
+    }
 
     ::glBindTexture(GL_TEXTURE_2D, m_texture);
     ::glTexImage2D(GL_TEXTURE_2D, 0, internalColorFormat, fboWidth, fboHeight, 0, colorFormat, GL_UNSIGNED_BYTE, 0);
@@ -211,7 +215,7 @@
 
     logFrameBufferStatus(__LINE__);
 
-    return true;
+    return mustRestoreFBO;
 }
 
 void GraphicsContext3D::logFrameBufferStatus(int line)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to