Bug 254708 - REGRESSION(262263@main) [Win] ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) in font tests
Summary: REGRESSION(262263@main) [Win] ASSERTION FAILED: !HashTranslator::equal(KeyTra...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit2 (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-03-29 17:16 PDT by Fujii Hironori
Modified: 2023-03-31 00:52 PDT (History)
1 user (show)

See Also:


Attachments
WIP patch (645 bytes, patch)
2023-03-29 23:04 PDT, Fujii Hironori
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Fujii Hironori 2023-03-29 17:16:34 PDT
REGRESSION [Win] ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) in font tests

262262@main: last good
262264@main: first bad

262263@main (bug#254490) seems to be the culprit.

https://build.webkit.org/#/builders/727/builds/20001
https://build.webkit.org/results/WinCairo-64-bit-Debug-Tests/262264@main%20(20001)/results.html

Regressions: Unexpected crashes (9)
  fast/canvas/2d.text.draw.fill.maxWidth.gradient.html [ Crash ]
  fast/canvas/2d.text.draw.fill.maxWidth.veryLarge.html [ Crash ]
  fast/canvas/2d.text.draw.fill.maxWidth.verySmall.html [ Crash ]
  fast/canvas/draw-text-repeatedly-into-disconnected-canvas.html [ Crash ]
  fast/canvas/fill-gradient-text-with-web-font.html [ Crash ]
  fast/text/canvas-fonts.html [ Crash ]
  fast/text/otsvg-canvas.html [ Crash ]
  fast/text/otsvg-spacing.html [ Crash ]
  fast/text/small-caps-canvas.html [ Crash ]


ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key)
C:\BW\WinCairo-64-bit-Debug-Build\build\WebKitBuild\Debug\WTF\Headers\wtf/HashTable.h(659) : WTF::HashTable<class WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,struct WTF::KeyValuePair<class WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64>,struct WTF::KeyValuePairKeyExtractor<struct WTF::KeyValuePair<class WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64> >,struct WTF::DefaultHash<class WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,struct WTF::HashMap<class WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64,struct WTF::DefaultHash<class WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,struct WTF::HashTraits<class WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,struct WTF::HashTraits<unsigned __int64>,struct WTF::HashTableTraits>::KeyValuePairTraits,struct WTF::HashTraits<class WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> > >::checkKey
1   00007FFFCF4C249B WTFCrash
2   00007FFFB0D3322E WTFCrashWithInfo
3   00007FFFB251D0CB WTF::HashTable<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,WTF::KeyValuePair<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64>,WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64> >,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashMap<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<unsigned __int64>,WTF::HashTableTraits>::KeyValuePairTraits,WTF::HashTraits<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> > >::checkKey<WTF::HashMapTranslator<WTF::HashMap<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<unsigned __int64>,WTF::HashTableTraits>::KeyValuePairTraits,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> > >,WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >
4   00007FFFB251ABC1 WTF::HashTable<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,WTF::KeyValuePair<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64>,WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64> >,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashMap<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<unsigned __int64>,WTF::HashTableTraits>::KeyValuePairTraits,WTF::HashTraits<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> > >::add<WTF::HashMapTranslator<WTF::HashMap<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<unsigned __int64>,WTF::HashTableTraits>::KeyValuePairTraits,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> > >,WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> const &,unsigned __int64 &>
5   00007FFFB254162A WTF::HashMap<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<unsigned __int64>,WTF::HashTableTraits>::inlineAdd<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> const &,unsigned __int64 &>
6   00007FFFB25198BA WTF::HashMap<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType>,unsigned __int64,WTF::DefaultHash<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<WTF::ObjectIdentifier<enum WebCore::RenderingResourceIdentifierType> >,WTF::HashTraits<unsigned __int64>,WTF::HashTableTraits>::add<unsigned __int64 &>
7   00007FFFB24D5CF5 WebKit::RemoteResourceCacheProxy::recordFontCustomPlatformDataUse
8   00007FFFB24D568D WebKit::RemoteResourceCacheProxy::recordFontUse
9   00007FFFB24D199C WebKit::RemoteDisplayListRecorderProxy::recordResourceUse
10  00007FFF9D21D5AF WebCore::DisplayList::Recorder::drawGlyphsAndCacheResources
11  00007FFF995A1DB9 WebCore::DrawGlyphsRecorder::drawGlyphs
12  00007FFF9D21D438 WebCore::DisplayList::Recorder::drawGlyphs
13  00007FFF9D0C62B7 WebCore::FontCascade::drawGlyphBuffer
14  00007FFF9D0C2430 WebCore::FontCascade::drawText
15  00007FFF9D11C028 WebCore::GraphicsContext::drawBidiText
16  00007FFF9C56D734 WebCore::CanvasRenderingContext2DBase::FontProxy::drawBidiText
17  00007FFF9C56EB87 WebCore::CanvasRenderingContext2DBase::drawTextUnchecked
18  00007FFF9C576235 WebCore::CanvasRenderingContext2D::drawTextInternal
19  00007FFF9C5755FD WebCore::CanvasRenderingContext2D::fillText
20  00007FFF99936D26 `WebCore::jsCanvasRenderingContext2DPrototypeFunction_fillTextBody'::`64'::<lambda_1>::operator()
21  00007FFF9995F973 WebCore::toJS<WebCore::IDLUndefined,`WebCore::jsCanvasRenderingContext2DPrototypeFunction_fillTextBody'::`64'::<lambda_1> >
22  00007FFF99936B01 WebCore::jsCanvasRenderingContext2DPrototypeFunction_fillTextBody
23  00007FFF99947E15 WebCore::IDLOperation<WebCore::JSCanvasRenderingContext2D>::call<&WebCore::jsCanvasRenderingContext2DPrototypeFunction_fillTextBody,0>
24  00007FFF999084A5 WebCore::jsCanvasRenderingContext2DPrototypeFunction_fillText
25  000001C8240E14DE (null)
Comment 1 Fujii Hironori 2023-03-29 23:04:50 PDT
Created attachment 465674 [details]
WIP patch

This patch solves above assertion failure.
But, another assertion fails.

> GPUProcess/graphics/RemoteRenderingBackend.cpp(354) : WebKit::RemoteRenderingBackend::cacheFont
> SHOULD NEVER BE REACHED
Comment 2 Fujii Hironori 2023-03-31 00:52:44 PDT
Reverted by 262371@main.