Title: [123617] trunk/Source/WebKit/blackberry
- Revision
- 123617
- Author
- [email protected]
- Date
- 2012-07-25 07:59:36 -0700 (Wed, 25 Jul 2012)
Log Message
[BlackBerry] Don't touch a tile buffer while it's still on its way to the GPU
https://bugs.webkit.org/show_bug.cgi?id=91992
Patch by Arvid Nilsson <[email protected]> on 2012-07-25
Reviewed by Adam Treat.
PR: 141439
The copyPreviousContentsToBackSurfaceOfTile() call will also modify
buffer contents, move it after the blit generation condvar to make sure
we've waited for the buffer to become available first.
This is done as part of some general BackingStorePrivate::render()
cleanup in PR 141439.
Internally reviewed by Jakob Petsovits.
* Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::render):
Modified Paths
Diff
Modified: trunk/Source/WebKit/blackberry/Api/BackingStore.cpp (123616 => 123617)
--- trunk/Source/WebKit/blackberry/Api/BackingStore.cpp 2012-07-25 14:55:03 UTC (rev 123616)
+++ trunk/Source/WebKit/blackberry/Api/BackingStore.cpp 2012-07-25 14:59:36 UTC (rev 123617)
@@ -1113,8 +1113,6 @@
continue;
}
- copyPreviousContentsToBackSurfaceOfTile(dirtyTileRect, tile);
-
BlackBerry::Platform::Graphics::Buffer* nativeBuffer
= tile->backBuffer()->nativeBuffer();
@@ -1139,6 +1137,10 @@
pthread_mutex_unlock(&m_blitGenerationLock);
}
+ // Modify the buffer only after we've waited for the buffer to become available above.
+
+ copyPreviousContentsToBackSurfaceOfTile(dirtyTileRect, tile);
+
// FIXME: modify render to take a Vector<IntRect> parameter so we're not recreating
// GraphicsContext on the stack each time.
renderContents(nativeBuffer, originOfTile(index), dirtyRect);
Modified: trunk/Source/WebKit/blackberry/ChangeLog (123616 => 123617)
--- trunk/Source/WebKit/blackberry/ChangeLog 2012-07-25 14:55:03 UTC (rev 123616)
+++ trunk/Source/WebKit/blackberry/ChangeLog 2012-07-25 14:59:36 UTC (rev 123617)
@@ -1,3 +1,23 @@
+2012-07-25 Arvid Nilsson <[email protected]>
+
+ [BlackBerry] Don't touch a tile buffer while it's still on its way to the GPU
+ https://bugs.webkit.org/show_bug.cgi?id=91992
+
+ Reviewed by Adam Treat.
+
+ PR: 141439
+ The copyPreviousContentsToBackSurfaceOfTile() call will also modify
+ buffer contents, move it after the blit generation condvar to make sure
+ we've waited for the buffer to become available first.
+
+ This is done as part of some general BackingStorePrivate::render()
+ cleanup in PR 141439.
+
+ Internally reviewed by Jakob Petsovits.
+
+ * Api/BackingStore.cpp:
+ (BlackBerry::WebKit::BackingStorePrivate::render):
+
2012-07-25 Jakob Petsovits <[email protected]>
[BlackBerry] notifyContentRendered() call missing in two spots
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes