RESOLVED DUPLICATE of bug 167061 161009
Clean up FontPlatformData::hash()
https://bugs.webkit.org/show_bug.cgi?id=161009
Summary Clean up FontPlatformData::hash()
Myles C. Maxfield
Reported 2016-08-19 12:58:09 PDT
Clean up FontPlatformData::hash()
Attachments
Patch (6.33 KB, patch)
2016-08-19 13:01 PDT, Myles C. Maxfield
no flags
Patch (6.35 KB, patch)
2016-08-19 20:23 PDT, Myles C. Maxfield
no flags
Patch (6.40 KB, patch)
2016-08-19 20:25 PDT, Myles C. Maxfield
buildbot: commit-queue-
Archive of layout-test-results from ews116 for mac-yosemite (472.55 KB, application/zip)
2016-08-19 21:09 PDT, Build Bot
no flags
Myles C. Maxfield
Comment 1 2016-08-19 13:01:08 PDT
Myles C. Maxfield
Comment 2 2016-08-19 20:23:09 PDT
Myles C. Maxfield
Comment 3 2016-08-19 20:25:47 PDT
Build Bot
Comment 4 2016-08-19 21:09:13 PDT
Comment on attachment 286521 [details] Patch Attachment 286521 [details] did not pass mac-debug-ews (mac): Output: http://webkit-queues.webkit.org/results/1903880 Number of test failures exceeded the failure limit.
Build Bot
Comment 5 2016-08-19 21:09:15 PDT
Created attachment 286523 [details] Archive of layout-test-results from ews116 for mac-yosemite The attached test failures were seen while running run-webkit-tests on the mac-debug-ews. Bot: ews116 Port: mac-yosemite Platform: Mac OS X 10.10.5
Darin Adler
Comment 6 2016-08-20 18:33:48 PDT
Comment on attachment 286521 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=286521&action=review > Source/WebCore/platform/graphics/cocoa/FontPlatformDataCocoa.mm:61 > +unsigned FontPlatformData::hash() const > +{ > + uintptr_t flags = static_cast<uintptr_t>(m_isHashTableDeletedValue << 5 | m_textRenderingMode << 3 | m_orientation << 2 | m_syntheticBold << 1 | m_syntheticOblique); > + uintptr_t fontHash = reinterpret_cast<uintptr_t>(m_font.get()); > + uintptr_t hashCodes[3] = { fontHash, m_widthVariant, flags }; > + return StringHasher::hashMemory<sizeof(hashCodes)>(hashCodes); > +} This doesn’t look right. The hash function should hash the same things that the is-equal function compares. Yet this is hashing things that platformIsEqual does not even look at. Can that really be correct?
Myles C. Maxfield
Comment 7 2017-01-18 13:51:44 PST
*** This bug has been marked as a duplicate of bug 167061 ***
Note You need to log in before you can comment on or make changes to this bug.