[webkit-qt] CSSDefaultStyleSheets::defaultStyle

Konstantin Tokarev annulen at yandex.ru
Fri Nov 24 04:53:31 PST 2017



24.11.2017, 15:41, "Konstantin Tokarev" <annulen at yandex.ru>:
> 24.11.2017, 15:18, "Andrew Webster" <awebster at arcx.com>:
>>>   24.11.2017, 05:41, "Andrew Webster" <awebster at arcx.com>:
>>>>>>    I ran into an ASSERT in ElementRuleCollector::collectMatchingRules (ASSERT(matchRequest.ruleSet)). When ignored, it seg faults.
>>>>>>
>>>>>>    The root cause is that ElementRuleCollector::matchUARules and CSSDefaultStyleSheets::initDefaultStyle disagree about the location of CSSDefaultStyleSheets::defaultStyle.
>>>>>>    Although CSSDefaultStyleSheets::initDefaultStyle has properly created CSSDefaultStyleSheets::defaultStyle, ElementRuleCollector::matchUARules looks in a different location and ends up with a nullptr.
>>>>>>
>>>>>>    Adding WEBCORE_EXPORT to the declaration of CSSDefaultStyleSheets::defaultStyle fixes this. Does anyone have any thoughts on why this might be?
>>>>>>
>>>>>>    GCC 6.2.1 for arm32v7.
>>>>>
>>>>>   Are you using static build of QtWebKit by chance?
>>>>
>>>>   Qt5WebKit.so and Qt5WebKitWidgets.so
>>>
>>>   Is value of &CSSDefaultStyleSheets::defaultStyle different in ElementRuleCollector::matchUARules and CSSDefaultStyleSheets::initDefaultStyle?
>>
>>  That's right. But once I add the EXPORT, the address is the same.
>
> Sounds like a linker bug.

If your toolchain has ld.gold and it was automatically used (you can check USE_LD_GOLD value in CMakeCache.txt),
you may want to try setting it to OFF and relinking

>
>>>>>>    Thanks,
>>>>>>
>>>>>>    Andrew
>>>>>    --
>>>>>    Regards,
>>>>>    Konstantin
>>>
>>>   --
>>>   Regards,
>>>   Konstantin
>
> --
> Regards,
> Konstantin

-- 
Regards,
Konstantin


More information about the webkit-qt mailing list