Changeset 163103 in webkit
- Timestamp:
- Jan 30, 2014 12:57:32 PM (10 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r163099 r163103 1 2014-01-30 Jeremy Jones <jeremyj@apple.com> 2 3 Crash in RemoteLayerBackingStore::encode when m_frontBuffer is nullptr. 4 https://bugs.webkit.org/show_bug.cgi?id=127756 5 6 Reviewed by Jer Noble. 7 8 Don't encode RemoteLayerBackingStore when it has no front buffer. 9 10 * Shared/mac/RemoteLayerBackingStore.h: 11 (WebKit::RemoteLayerBackingStore::hasFrontBuffer): 12 * Shared/mac/RemoteLayerTreeTransaction.mm: 13 (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode): 14 (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode): 15 1 16 2014-01-30 Mark Rowe <mrowe@apple.com> 2 17 -
trunk/Source/WebKit2/Shared/mac/RemoteLayerBackingStore.h
r163079 r163103 70 70 void enumerateRectsBeingDrawn(CGContextRef, void (^)(CGRect)); 71 71 72 private: 73 bool hasFrontBuffer() 72 bool hasFrontBuffer() const 74 73 { 75 74 #if USE(IOSURFACE) … … 79 78 return !!m_frontBuffer; 80 79 } 80 private: 81 81 82 82 void drawInContext(WebCore::GraphicsContext&, CGImageRef frontImage); -
trunk/Source/WebKit2/Shared/mac/RemoteLayerTreeTransaction.mm
r162644 r163103 168 168 encoder << timeOffset; 169 169 170 if (changedProperties & BackingStoreChanged) 171 encoder << backingStore; 170 if (changedProperties & BackingStoreChanged) { 171 encoder << backingStore.hasFrontBuffer(); 172 if (backingStore.hasFrontBuffer()) 173 encoder << backingStore; 174 } 172 175 173 176 if (changedProperties & FiltersChanged) … … 307 310 308 311 if (result.changedProperties & BackingStoreChanged) { 309 if (!decoder.decode(result.backingStore)) 312 bool hasFrontBuffer = false; 313 if (!decoder.decode(hasFrontBuffer)) 314 return false; 315 if (hasFrontBuffer && !decoder.decode(result.backingStore)) 310 316 return false; 311 317 }
Note: See TracChangeset
for help on using the changeset viewer.