Changeset 93216 in webkit
- Timestamp:
- Aug 17, 2011, 10:23:24 AM (15 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 3 edited
-
ChangeLog (modified) (1 diff)
-
platform/graphics/chromium/HarfbuzzSkia.cpp (modified) (2 diffs)
-
platform/graphics/chromium/HarfbuzzSkia.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r93215 r93216 1 2011-08-17 Kenichi Ishibashi <bashi@chromium.org> 2 3 [Chromium] Crash in HarfbuzzFace::~HarfbuzzFace 4 https://bugs.webkit.org/show_bug.cgi?id=66211 5 6 Holds Skia's unique font ID instead of FontPlatformData to avoid accessing freed FontPlatformData. 7 8 Reviewed by Tony Chang. 9 10 No new tests; no functional change. 11 12 * platform/graphics/chromium/HarfbuzzSkia.cpp: 13 (WebCore::releaseCachedHarfbuzzFace): Changed the argument. 14 (WebCore::HarfbuzzFace::HarfbuzzFace): Changed to have Skia's font uniqueID instead of FontPlatformData. 15 (WebCore::HarfbuzzFace::~HarfbuzzFace): Uses m_uniqueID to call releaseCachedHarfbuzzFace. 16 * platform/graphics/chromium/HarfbuzzSkia.h: 17 1 18 2011-08-17 Jeff Miller <jeffm@apple.com> 2 19 -
trunk/Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.cpp
r92425 r93216 247 247 } 248 248 249 static void releaseCachedHarfbuzzFace(FontPlatformData* platformData) 250 { 251 SkFontID uniqueID = platformData->uniqueID(); 249 static void releaseCachedHarfbuzzFace(SkFontID uniqueID) 250 { 252 251 HarfbuzzFaceCache::iterator result = gHarfbuzzFaceCache->find(uniqueID); 253 252 ASSERT(result != gHarfbuzzFaceCache->end()); … … 261 260 262 261 HarfbuzzFace::HarfbuzzFace(FontPlatformData* platformData) 263 : m_ platformData(platformData)264 { 265 m_harfbuzzFace = getCachedHarfbuzzFace( m_platformData);262 : m_uniqueID(platformData->uniqueID()) 263 { 264 m_harfbuzzFace = getCachedHarfbuzzFace(platformData); 266 265 } 267 266 268 267 HarfbuzzFace::~HarfbuzzFace() 269 268 { 270 releaseCachedHarfbuzzFace(m_ platformData);269 releaseCachedHarfbuzzFace(m_uniqueID); 271 270 } 272 271 -
trunk/Source/WebCore/platform/graphics/chromium/HarfbuzzSkia.h
r92425 r93216 56 56 explicit HarfbuzzFace(FontPlatformData*); 57 57 58 FontPlatformData* m_platformData;58 uint32_t m_uniqueID; 59 59 HB_FaceRec_* m_harfbuzzFace; 60 60 };
Note:
See TracChangeset
for help on using the changeset viewer.