stylo: `firefox -marionette` crashes at startup due to MOZ_CRASH("stylo: ServoStyleSets should not support XUL tree styles yet")

RESOLVED FIXED in Firefox 53

Status

()

defect
RESOLVED FIXED
3 years ago
3 years ago

People

(Reporter: gps, Unassigned)

Tracking

unspecified
mozilla53
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox53 fixed)

Details

Attachments

(1 attachment, 1 obsolete attachment)

Attempting to run `firefox -marionette` with --enable-stylo causes a startup crash in https://dxr.mozilla.org/mozilla-central/rev/0534254e9a40b4bade2577c631fe4cfa0b5db41d/layout/xul/tree/nsTreeStyleCache.cpp#83 (MOZ_CRASH("stylo: ServoStyleSets should not support XUL tree styles yet")).

Strangely, I can only reproduce this locally with some profiles. A fresh profile seems to work. But my day-to-day profile fails.

I'm not 100% confident, but many of the linux64-stylo reftests at https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=592e380a27d3eceac70778ecf276e29a620742ff are failing due to a startup crash and I suspect this crash might be it. In other words, this prevents running reftests with Stylo :(

I'll post a full stack trace once my local debug build finishes.
Here's a full stack trace. e10s was disabled.

#0  nsTreeStyleCache::GetStyleContext (this=<optimized out>, aComparator=0x7fffb4bfae50, aPresContext=0x7fffb6b43800, aContent=<optimized out>, aContext=0x7fffb4bfacd0, aPseudoElement=<optimized out>, aInputWord=...) at /home/gps/src/firefox/layout/xul/tree/nsTreeStyleCache.cpp:83
#1  0x00007fffe9705536 in nsTreeBodyFrame::GetPseudoStyleContext (this=0x7fffb4bfae00, aPseudoElement=0x7ffff7fde740) at /home/gps/src/firefox/layout/xul/tree/nsTreeBodyFrame.cpp:4469
#2  nsTreeBodyFrame::GetIndentation (this=0x7fffb4bfae00) at /home/gps/src/firefox/layout/xul/tree/nsTreeBodyFrame.cpp:2468
#3  0x00007fffe97108d2 in nsTreeBodyFrame::DidSetStyleContext (this=0x7fffb4bfae00, aOldStyleContext=<optimized out>) at /home/gps/src/firefox/layout/xul/tree/nsTreeBodyFrame.cpp:4531
#4  0x00007fffe958d139 in nsFrame::Init (this=0x7fffb4bfae00, aContent=<optimized out>, aParent=<optimized out>, aPrevInFlow=<optimized out>) at /home/gps/src/firefox/layout/generic/nsFrame.cpp:606
#5  0x00007fffe96d4bc4 in nsLeafBoxFrame::Init (this=0x7fffb4bfae00, aContent=0x7ffff710a750 <_IO_stdfile_2_lock>, aParent=0x0, aPrevInFlow=0x42b420 <gMozCrashReason>) at /home/gps/src/firefox/layout/xul/nsLeafBoxFrame.cpp:65
#6  0x00007fffe9705428 in nsTreeBodyFrame::Init (this=0x7fffb4bfae00, aContent=0x7ffff710a750 <_IO_stdfile_2_lock>, aParent=0x0, aPrevInFlow=0x42b420 <gMozCrashReason>) at /home/gps/src/firefox/layout/xul/tree/nsTreeBodyFrame.cpp:171
#7  0x00007fffe94a9be1 in nsCSSFrameConstructor::InitAndRestoreFrame (this=0x7fffb7378420, aState=..., aContent=0x7fffb55d3240, aParentFrame=0x7fffb4bfab00, aNewFrame=0x7fffb4bfae00, aAllowCounters=<error reading variable: access outside bounds of object referenced via synthetic pointer>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:4952
#8  0x00007fffe94afdf0 in nsCSSFrameConstructor::ConstructFrameFromItemInternal (this=<optimized out>, aItem=..., aState=..., aParentFrame=0x7fffb4bfab00, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:3857
#9  0x00007fffe94b2d26 in nsCSSFrameConstructor::ConstructFramesFromItem (this=0x7fffb7378420, aState=..., aIter=..., aParentFrame=0x7fffb4bfab00, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:6168
#10 0x00007fffe94cf5d0 in nsCSSFrameConstructor::ConstructFramesFromItemList (this=<optimized out>, aState=..., aItems=..., aParentFrame=<optimized out>, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10575
#11 0x00007fffe94aa2c9 in nsCSSFrameConstructor::ProcessChildren (this=0x7fffb7378420, aState=..., aContent=0x7fffb4bd9740, aStyleContext=0x7fffffffc048, aFrame=<optimized out>, aCanHaveGeneratedContent=<error reading variable: access outside bounds of object referenced via synthetic pointer>, aFrameItems=..., aAllowBlockStyles=<optimized out>, aPendingBinding=<optimized out>,
    aPossiblyLeafFrame=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10787
#12 0x00007fffe94b0453 in nsCSSFrameConstructor::ConstructFrameFromItemInternal (this=<optimized out>, aItem=..., aState=..., aParentFrame=0x7fffb4bfab00, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:4008
#13 0x00007fffe94b2d26 in nsCSSFrameConstructor::ConstructFramesFromItem (this=0x7fffb7378420, aState=..., aIter=..., aParentFrame=0x7fffb4bfa930, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:6168
#14 0x00007fffe94cf5d0 in nsCSSFrameConstructor::ConstructFramesFromItemList (this=<optimized out>, aState=..., aItems=..., aParentFrame=<optimized out>, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10575
#15 0x00007fffe94aa2c9 in nsCSSFrameConstructor::ProcessChildren (this=0x7fffb7378420, aState=..., aContent=0x7fffb4bd8e80, aStyleContext=0x7fffffffc048, aFrame=<optimized out>, aCanHaveGeneratedContent=<error reading variable: access outside bounds of object referenced via synthetic pointer>, aFrameItems=..., aAllowBlockStyles=<optimized out>, aPendingBinding=<optimized out>,
    aPossiblyLeafFrame=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10787
#16 0x00007fffe94b0453 in nsCSSFrameConstructor::ConstructFrameFromItemInternal (this=<optimized out>, aItem=..., aState=..., aParentFrame=0x7fffb4bfa930, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:4008
#17 0x00007fffe94b2d26 in nsCSSFrameConstructor::ConstructFramesFromItem (this=0x7fffb7378420, aState=..., aIter=..., aParentFrame=0x7fffb4bfa500, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:6168
#18 0x00007fffe94cf5d0 in nsCSSFrameConstructor::ConstructFramesFromItemList (this=<optimized out>, aState=..., aItems=..., aParentFrame=<optimized out>, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10575
#19 0x00007fffe94aa2c9 in nsCSSFrameConstructor::ProcessChildren (this=0x7fffb7378420, aState=..., aContent=0x7fffb4bd8de0, aStyleContext=0x7fffffffc048, aFrame=<optimized out>, aCanHaveGeneratedContent=<error reading variable: access outside bounds of object referenced via synthetic pointer>, aFrameItems=..., aAllowBlockStyles=<optimized out>, aPendingBinding=<optimized out>,
    aPossiblyLeafFrame=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10787
#20 0x00007fffe94b0453 in nsCSSFrameConstructor::ConstructFrameFromItemInternal (this=<optimized out>, aItem=..., aState=..., aParentFrame=0x7fffb4bfa500, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:4008
#21 0x00007fffe94b2d26 in nsCSSFrameConstructor::ConstructFramesFromItem (this=0x7fffb7378420, aState=..., aIter=..., aParentFrame=0x7fffb4b9ba38, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:6168
#22 0x00007fffe94cf5d0 in nsCSSFrameConstructor::ConstructFramesFromItemList (this=<optimized out>, aState=..., aItems=..., aParentFrame=<optimized out>, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10575
#23 0x00007fffe94aa2c9 in nsCSSFrameConstructor::ProcessChildren (this=0x7fffb7378420, aState=..., aContent=0x7fffb55d2f20, aStyleContext=0x7fffffffc048, aFrame=<optimized out>, aCanHaveGeneratedContent=<error reading variable: access outside bounds of object referenced via synthetic pointer>, aFrameItems=..., aAllowBlockStyles=<optimized out>, aPendingBinding=<optimized out>,
    aPossiblyLeafFrame=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10787
#24 0x00007fffe94b0453 in nsCSSFrameConstructor::ConstructFrameFromItemInternal (this=<optimized out>, aItem=..., aState=..., aParentFrame=0x7fffb4b9ba38, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:4008
#25 0x00007fffe94b2d26 in nsCSSFrameConstructor::ConstructFramesFromItem (this=0x7fffb7378420, aState=..., aIter=..., aParentFrame=0x7fffb4b9b9a0, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:6168
#26 0x00007fffe94cf5d0 in nsCSSFrameConstructor::ConstructFramesFromItemList (this=<optimized out>, aState=..., aItems=..., aParentFrame=<optimized out>, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10575
#27 0x00007fffe94aa2c9 in nsCSSFrameConstructor::ProcessChildren (this=0x7fffb7378420, aState=..., aContent=0x7fffb4b6f5e0, aStyleContext=0x7fffffffc048, aFrame=<optimized out>, aCanHaveGeneratedContent=<error reading variable: access outside bounds of object referenced via synthetic pointer>, aFrameItems=..., aAllowBlockStyles=<optimized out>, aPendingBinding=<optimized out>,
    aPossiblyLeafFrame=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10787
#28 0x00007fffe94aca5c in nsCSSFrameConstructor::ConstructBlock (this=0x7fffb7378420, aState=..., aContent=0x7fffb4b6f5e0, aParentFrame=0x7fffb4b7dd78, aContentParentFrame=0x7fffb4b7dd78, aStyleContext=<optimized out>, aNewFrame=<optimized out>, aFrameItems=..., aPositionedFrameForAbsPosContainer=<optimized out>, aPendingBinding=0x0)
    at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:11797
#29 0x00007fffe94aee03 in nsCSSFrameConstructor::ConstructNonScrollableBlockWithConstructor (this=<optimized out>, aState=..., aItem=..., aParentFrame=<optimized out>, aDisplay=0x7fffe4560550, aFrameItems=..., aConstructor=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:4929
#30 0x00007fffe94b0a0e in nsCSSFrameConstructor::ConstructNonScrollableBlock (this=0x7ffff7109520 <_IO_2_1_stderr_>, aState=..., aItem=..., aParentFrame=0x42b420 <gMozCrashReason>, aDisplay=0x7ffff710a750 <_IO_stdfile_2_lock>, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:4893
#31 0x00007fffe94afcc9 in nsCSSFrameConstructor::ConstructFrameFromItemInternal (this=<optimized out>, aItem=..., aState=..., aParentFrame=0x7fffb4b7dd78, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:3827
#32 0x00007fffe94b2d26 in nsCSSFrameConstructor::ConstructFramesFromItem (this=0x7fffb7378420, aState=..., aIter=..., aParentFrame=0x7fffb4b7dd78, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:6168
#33 0x00007fffe94cf5d0 in nsCSSFrameConstructor::ConstructFramesFromItemList (this=<optimized out>, aState=..., aItems=..., aParentFrame=<optimized out>, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10575
#34 0x00007fffe94aa2c9 in nsCSSFrameConstructor::ProcessChildren (this=0x7fffb7378420, aState=..., aContent=0x7fffb4b6e860, aStyleContext=0x7fffffffc048, aFrame=<optimized out>, aCanHaveGeneratedContent=<error reading variable: access outside bounds of object referenced via synthetic pointer>, aFrameItems=..., aAllowBlockStyles=<optimized out>, aPendingBinding=<optimized out>,
    aPossiblyLeafFrame=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10787
#35 0x00007fffe94b0453 in nsCSSFrameConstructor::ConstructFrameFromItemInternal (this=<optimized out>, aItem=..., aState=..., aParentFrame=0x7fffb4b7dd78, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:4008
#36 0x00007fffe94b2d26 in nsCSSFrameConstructor::ConstructFramesFromItem (this=0x7fffb7378420, aState=..., aIter=..., aParentFrame=0x7fffb4b7dc08, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:6168
#37 0x00007fffe94cf5d0 in nsCSSFrameConstructor::ConstructFramesFromItemList (this=<optimized out>, aState=..., aItems=..., aParentFrame=<optimized out>, aFrameItems=...) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:10575
#38 0x00007fffe94b6ab6 in nsCSSFrameConstructor::ContentAppended (this=<optimized out>, aContainer=<optimized out>, aFirstNewContent=<optimized out>, aAllowLazyConstruction=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:7490
#39 0x00007fffe94b4fcc in nsCSSFrameConstructor::CreateNeededFrames (this=<optimized out>, aContent=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:7131
#40 0x00007fffe94b5013 in nsCSSFrameConstructor::CreateNeededFrames (this=<optimized out>, aContent=<optimized out>) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:7138
#41 0x00007fffe9490230 in nsCSSFrameConstructor::CreateNeededFrames (this=0x7fffb7378420) at /home/gps/src/firefox/layout/base/nsCSSFrameConstructor.cpp:7153
#42 0x00007fffe949efaa in mozilla::ServoRestyleManager::ProcessPendingRestyles (this=<optimized out>) at /home/gps/src/firefox/layout/base/ServoRestyleManager.cpp:423
#43 0x00007fffe952be7c in mozilla::RestyleManagerHandle::Ptr::ProcessPendingRestyles (this=0x7fffffffc688) at /home/gps/src/firefox/obj-x86_64-pc-linux-gnu/dist/include/mozilla/RestyleManagerHandleInlines.h:74
#44 PresShell::FlushPendingNotifications (this=0x7fffb806fc00, aFlush=<error reading variable: access outside bounds of object referenced via synthetic pointer>) at /home/gps/src/firefox/layout/base/nsPresShell.cpp:4124
#45 0x00007fffe952731f in PresShell::DidDoReflow (this=0x7fffb806fc00, aInterruptible=true) at /home/gps/src/firefox/layout/base/nsPresShell.cpp:9239
#46 0x00007fffe952c2a2 in PresShell::ProcessReflowCommands (this=<optimized out>, aInterruptible=<optimized out>) at /home/gps/src/firefox/layout/base/nsPresShell.cpp:9594
#47 0x00007fffe952bffc in PresShell::FlushPendingNotifications (this=0x7fffb806fc00, aFlush=<error reading variable: access outside bounds of object referenced via synthetic pointer>) at /home/gps/src/firefox/layout/base/nsPresShell.cpp:4159
#48 0x00007fffe945d892 in nsRefreshDriver::Tick (this=<optimized out>, aNowEpoch=<optimized out>, aNowTime=...) at /home/gps/src/firefox/layout/base/nsRefreshDriver.cpp:1884
#49 0x00007fffe94611fe in mozilla::RefreshDriverTimer::TickRefreshDrivers (this=<optimized out>, aJsNow=<optimized out>, aNow=..., aDrivers=...) at /home/gps/src/firefox/layout/base/nsRefreshDriver.cpp:295
#50 0x00007fffe9461081 in mozilla::RefreshDriverTimer::Tick (this=0x7fffbc3fbd00, jsnow=1479858031980079, now=...) at /home/gps/src/firefox/layout/base/nsRefreshDriver.cpp:316
#51 0x00007fffe9462224 in mozilla::VsyncRefreshDriverTimer::RunRefreshDrivers (this=0x7fffbc3fbd00, aTimeStamp=...) at /home/gps/src/firefox/layout/base/nsRefreshDriver.cpp:669
#52 0x00007fffe9461d03 in mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::TickRefreshDriver (this=0x7fffbc2fdc80, aVsyncTimestamp=...) at /home/gps/src/firefox/layout/base/nsRefreshDriver.cpp:589
#53 0x00007fffe9461edb in mozilla::detail::RunnableMethodArguments<mozilla::TimeStamp>::applyImpl<mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver, void (mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp), StoreCopyPassByConstLRef<mozilla::TimeStamp>, 0ul> (o=<optimized out>, m=<optimized out>, args=...)
    at /home/gps/src/firefox/obj-x86_64-pc-linux-gnu/dist/include/nsThreadUtils.h:775
#54 mozilla::detail::RunnableMethodArguments<mozilla::TimeStamp>::apply<mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver, void (mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp)> (o=<optimized out>, m=<optimized out>, this=<optimized out>) at /home/gps/src/firefox/obj-x86_64-pc-linux-gnu/dist/include/nsThreadUtils.h:781
#55 mozilla::detail::RunnableMethodImpl<void (mozilla::VsyncRefreshDriverTimer::RefreshDriverVsyncObserver::*)(mozilla::TimeStamp), true, false, mozilla::TimeStamp>::Run (this=0x7fffeb867ab7) at /home/gps/src/firefox/obj-x86_64-pc-linux-gnu/dist/include/nsThreadUtils.h:810
#56 0x00007fffe7023805 in nsThread::ProcessNextEvent (this=<optimized out>, aMayWait=<optimized out>, aResult=0x7fffffffcc07) at /home/gps/src/firefox/xpcom/threads/nsThread.cpp:1213
#57 0x00007fffe705ade4 in NS_ProcessNextEvent (aThread=0x7ffff7109520 <_IO_2_1_stderr_>, aMayWait=<optimized out>) at /home/gps/src/firefox/xpcom/glue/nsThreadUtils.cpp:361
#58 0x00007fffe750dba7 in mozilla::ipc::MessagePump::Run (this=<optimized out>, aDelegate=<optimized out>) at /home/gps/src/firefox/ipc/glue/MessagePump.cpp:96
#59 0x00007fffe74bfa90 in MessageLoop::RunHandler (this=0x7ffff7109520 <_IO_2_1_stderr_>) at /home/gps/src/firefox/ipc/chromium/src/base/message_loop.cc:225
#60 MessageLoop::Run (this=0x7ffff7109520 <_IO_2_1_stderr_>) at /home/gps/src/firefox/ipc/chromium/src/base/message_loop.cc:205
#61 0x00007fffe922c09b in nsBaseAppShell::Run (this=0x7fffd8809d60) at /home/gps/src/firefox/widget/nsBaseAppShell.cpp:156
#62 0x00007fffe9bcc8bc in nsAppStartup::Run (this=0x7fffd8873fb0) at /home/gps/src/firefox/toolkit/components/startup/nsAppStartup.cpp:283
#63 0x00007fffe9c4ad01 in XREMain::XRE_mainRun (this=<optimized out>) at /home/gps/src/firefox/toolkit/xre/nsAppRunner.cpp:4467
#64 0x00007fffe9c4b3a3 in XREMain::XRE_main (this=<optimized out>, argc=<optimized out>, argv=<optimized out>, aAppData=0x7fffffffd0d0) at /home/gps/src/firefox/toolkit/xre/nsAppRunner.cpp:4600
#65 0x00007fffe9c4b94f in XRE_main (argc=-149903536, argv=0x0, aAppData=0x42b420 <gMozCrashReason>, aFlags=<optimized out>) at /home/gps/src/firefox/toolkit/xre/nsAppRunner.cpp:4691
#66 0x0000000000405ad8 in do_main (argc=2, argv=<optimized out>, envp=<optimized out>, xreDirectory=<optimized out>) at /home/gps/src/firefox/browser/app/nsBrowserApp.cpp:328
#67 main (argc=2, argv=<optimized out>, envp=<optimized out>) at /home/gps/src/firefox/browser/app/nsBrowserApp.cpp:461
We should probably just resolve some default styles for now and turn that into an NS_ERROR instead.
Posted patch patch (obsolete) — Splinter Review
I can't reproduce this locally (at least not with the debug build I have here at the moment).  Greg, can you tell me if this patch lets the tests progress?
Attachment #8813473 - Flags: feedback?(gps)
Comment on attachment 8813473 [details] [diff] [review]
patch

Review of attachment 8813473 [details] [diff] [review]:
-----------------------------------------------------------------

With latest stylo (7af1697ce748) + this patch, things seem to work.
Attachment #8813473 - Flags: feedback?(gps) → feedback+
Attachment #8813473 - Flags: review?(xidorn+moz)
Comment on attachment 8813473 [details] [diff] [review]
patch

Review of attachment 8813473 [details] [diff] [review]:
-----------------------------------------------------------------

::: layout/xul/tree/nsTreeStyleCache.cpp
@@ +83,4 @@
>      if (aPresContext->StyleSet()->IsServo()) {
> +      NS_ERROR("stylo: ServoStyleSets should not support XUL tree styles yet");
> +      newResult = aPresContext->StyleSet()->AsGecko()->
> +        ResolveStyleForOtherNonElement(aContext);

If StyleSet()->IsServo() is true, how can StyleSet()->AsGecko() be invoked safely? It seems to me AsGecko() would assert if IsGecko() is not true.
Yeah, that's wrong. :(  Maybe gps tested on a non-DEBUG build?

I guess we can just remove the "AsGecko()->".  r? on that change?
Comment on attachment 8813473 [details] [diff] [review]
patch

Review of attachment 8813473 [details] [diff] [review]:
-----------------------------------------------------------------

Okay with 'AsGecko()->' removed. I don't think it would give us the desired result, but as a fix for a startup crash for test... probably fine.
Attachment #8813473 - Flags: review?(xidorn+moz) → review+
Comment on attachment 8815161 [details]
Bug 1319568 - Resolve default styles for XUL tree pseudos for now if we're styled by Servo.

https://reviewboard.mozilla.org/r/96188/#review96310
Attachment #8815161 - Flags: review?(xidorn+moz) → review+
Attachment #8813473 - Attachment is obsolete: true
Pushed by cmccormack@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c27b65f7a0c7
Resolve default styles for XUL tree pseudos for now if we're styled by Servo. r=xidorn
https://hg.mozilla.org/mozilla-central/rev/c27b65f7a0c7
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
reftests on the stylo repo still appear to be crashing on startup with this change cherry-picked: https://treeherder.mozilla.org/#/jobs?repo=stylo&revision=bc7b17ae5166e8ee593160eab49e74df674add5b

Assuming it's the same crash, I'm not sure why I was unable to get the crash on my machine when I tested the patch. I'll reopen if I confirm this is the same issue.
You need to log in before you can comment on or make changes to this bug.