Open Bug 1864452 Opened 5 months ago Updated 4 months ago

AddressSanitizer: stack-overflow [@ __asan_memset]

Categories

(Core :: DOM: Core & HTML, defect)

x86_64
Linux
defect

Tracking

()

Tracking Status
firefox-esr115 --- disabled
firefox119 --- wontfix
firefox120 --- wontfix
firefox121 --- wontfix
firefox122 --- wontfix

People

(Reporter: jkratzer, Unassigned)

References

(Blocks 2 open bugs, Regression)

Details

(Keywords: bugmon, regression, testcase, Whiteboard: [bugmon:bisected,confirmed])

Attachments

(1 file)

706 bytes, application/octet-stream
Details

Testcase found while fuzzing mozilla-central rev 211dc86c8f53 (built with: --enable-address-sanitizer --enable-fuzzing).

Testcase can be reproduced using the following commands:

$ pip install fuzzfetch grizzly-framework
$ python -m fuzzfetch --build 211dc86c8f53 --asan --fuzzing -n firefox
$ python -m grizzly.replay ./firefox/firefox testcase.html
AddressSanitizer: stack-overflow [@ __asan_memset]

    =================================================================
    ==1101328==ERROR: AddressSanitizer: stack-overflow on address 0x7fffc6924a18 (pc 0x56540d412497 bp 0x7fffc6925250 sp 0x7fffc6924a20 T0)
        #0 0x56540d412497 in __asan_memset /builds/worker/fetches/llvm-project/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cpp:67:3
        #1 0x7f2737a941bd in BaseMargin /builds/worker/workspace/obj-build/dist/include/mozilla/gfx/BaseMargin.h:68:26
        #2 0x7f2737a941bd in nsMargin /builds/worker/workspace/obj-build/dist/include/nsMargin.h:18:3
        #3 0x7f2737a941bd in mozilla::SizeComputationInput::ComputeMargin(mozilla::WritingMode, int, mozilla::LayoutFrameType) /layout/generic/ReflowInput.cpp:2856:12
        #4 0x7f2737a7863d in mozilla::SizeComputationInput::InitOffsets(mozilla::WritingMode, int, mozilla::LayoutFrameType, mozilla::EnumSet<mozilla::ComputeSizeFlag, unsigned char>, mozilla::Maybe<mozilla::LogicalMargin> const&, mozilla::Maybe<mozilla::LogicalMargin> const&, nsStyleDisplay const*) /layout/generic/ReflowInput.cpp:2482:25
        #5 0x7f2737a81a58 in mozilla::ReflowInput::InitConstraints(nsPresContext*, mozilla::Maybe<mozilla::LogicalSize> const&, mozilla::Maybe<mozilla::LogicalMargin> const&, mozilla::Maybe<mozilla::LogicalMargin> const&, mozilla::LayoutFrameType) /layout/generic/ReflowInput.cpp:2205:5
        #6 0x7f2737a7c213 in mozilla::ReflowInput::Init(nsPresContext*, mozilla::Maybe<mozilla::LogicalSize> const&, mozilla::Maybe<mozilla::LogicalMargin> const&, mozilla::Maybe<mozilla::LogicalMargin> const&) /layout/generic/ReflowInput.cpp:377:3
        #7 0x7f2737a7d875 in mozilla::ReflowInput::ReflowInput(nsPresContext*, mozilla::ReflowInput const&, nsIFrame*, mozilla::LogicalSize const&, mozilla::Maybe<mozilla::LogicalSize> const&, mozilla::EnumSet<mozilla::ReflowInput::InitFlag, unsigned char>, mozilla::StyleSizeOverrides const&, mozilla::EnumSet<mozilla::ComputeSizeFlag, unsigned char>) /layout/generic/ReflowInput.cpp:255:5
        #8 0x7f2737dd3bf9 in void mozilla::Maybe<mozilla::ReflowInput>::emplace<nsPresContext*&, mozilla::ReflowInput const&, nsIFrame*&, mozilla::LogicalSize&>(nsPresContext*&, mozilla::ReflowInput const&, nsIFrame*&, mozilla::LogicalSize&) /builds/worker/workspace/obj-build/dist/include/mozilla/Maybe.h:845:39
        #9 0x7f2737dcf74c in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:836:23
        #10 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #11 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #12 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #13 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #14 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #15 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #16 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #17 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #18 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #19 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #20 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #21 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #22 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #23 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #24 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #25 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #26 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #27 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #28 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #29 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #30 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #31 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #32 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #33 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #34 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #35 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #36 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #37 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #38 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #39 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #40 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #41 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #42 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #43 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #44 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #45 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #46 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #47 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #48 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #49 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #50 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #51 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #52 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #53 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #54 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #55 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #56 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #57 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #58 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #59 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #60 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #61 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #62 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #63 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #64 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #65 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #66 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #67 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #68 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #69 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #70 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #71 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #72 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #73 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #74 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #75 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #76 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #77 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #78 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #79 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #80 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #81 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #82 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #83 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #84 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #85 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #86 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #87 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #88 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #89 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #90 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #91 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #92 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #93 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #94 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #95 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #96 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #97 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #98 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #99 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #100 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #101 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #102 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #103 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #104 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #105 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #106 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #107 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #108 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #109 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #110 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #111 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #112 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #113 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #114 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #115 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #116 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #117 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #118 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #119 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #120 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #121 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #122 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #123 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #124 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #125 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #126 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #127 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #128 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #129 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #130 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #131 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #132 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #133 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #134 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #135 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #136 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #137 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #138 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #139 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #140 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #141 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #142 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #143 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #144 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #145 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #146 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #147 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #148 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #149 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #150 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #151 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #152 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #153 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #154 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #155 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #156 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #157 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #158 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #159 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #160 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #161 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #162 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #163 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #164 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #165 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #166 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #167 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #168 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #169 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #170 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #171 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #172 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #173 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #174 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #175 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #176 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #177 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #178 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #179 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #180 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #181 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #182 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #183 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #184 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #185 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #186 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #187 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #188 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #189 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #190 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #191 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #192 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #193 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #194 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #195 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #196 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #197 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #198 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #199 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #200 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #201 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #202 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #203 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #204 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #205 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #206 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #207 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #208 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #209 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #210 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #211 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #212 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #213 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #214 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #215 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #216 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #217 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #218 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #219 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #220 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #221 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #222 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #223 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #224 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #225 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #226 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #227 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #228 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #229 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #230 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #231 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #232 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #233 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #234 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #235 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #236 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #237 0x7f2737e068ee in nsRubyBaseContainerFrame::ReflowOneColumn(nsRubyBaseContainerFrame::RubyReflowInput const&, unsigned int, mozilla::RubyColumn const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:652:17
        #238 0x7f2737e0494d in nsRubyBaseContainerFrame::ReflowColumns(nsRubyBaseContainerFrame::RubyReflowInput const&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:463:15
        #239 0x7f2737e02d93 in nsRubyBaseContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyBaseContainerFrame.cpp:374:19
        #240 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #241 0x7f2737e0c2a6 in nsRubyFrame::ReflowSegment(nsPresContext*, mozilla::ReflowInput const&, int, int, nsRubyBaseContainerFrame*, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:197:29
        #242 0x7f2737e0b445 in nsRubyFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsRubyFrame.cpp:141:5
        #243 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
        #244 0x7f2737d58f71 in nsInlineFrame::ReflowInlineFrame(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, nsIFrame*, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:667:15
        #245 0x7f2737d57d03 in nsInlineFrame::ReflowFrames(nsPresContext*, mozilla::ReflowInput const&, nsInlineFrame::InlineReflowInput&, mozilla::ReflowOutput&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:541:7
        #246 0x7f2737d56f52 in nsInlineFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&) /layout/generic/nsInlineFrame.cpp:357:3
        #247 0x7f2737dd0a30 in nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&) /layout/generic/nsLineLayout.cpp:891:13
    
    SUMMARY: AddressSanitizer: stack-overflow /builds/worker/fetches/llvm-project/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cpp:67:3 in __asan_memset
    ==1101328==ABORTING
Attached file Testcase

Verified bug as reproducible on mozilla-central 20231113091505-211dc86c8f53.
Unable to bisect testcase (Testcase reproduces on start build!):

Start: 20e2590324e26b5ebc2f86ade34286967e0a58a8 (20221114085151)
End: 211dc86c8f534a950af69434fa996976b566a6a0 (20231113091505)
BuildFlags: BuildFlags(asan=True, tsan=False, debug=False, fuzzing=True, coverage=False, valgrind=False, no_opt=False, fuzzilli=False, nyx=False)

Whiteboard: [bugmon:confirm] → [bugmon:bisected,confirmed]

On Nightly, the testcase spends a lot of time to load.
Bug 1824980: Enable ARIA reflection (non-idref) on Nightly. r=eeejay

For WPT, we explicitly set the pref so that the results are consistent across update channels.

Differential Revision: https://phabricator.services.mozilla.com/D174389

If I set accessibility.ARIAReflection.enabled= False, the testcase loads instantly. Even though I have force disabled a11y (accessibility.force_disabled = 1) , the previous pref still causes the bug.

Keywords: regression
Regressed by: 1824980

Set release status flags based on info from the regressing bug 1824980

:Jamie, since you are the author of the regressor, bug 1824980, could you take a look? Also, could you set the severity field?

For more information, please visit BugBot documentation.

We end up with infinite recursion here because the DOMAttrModified event sets .ariaLive, which sets the aria-live attribute, which of course fires the DOMAttrModified event again. I don't know where infinite recursion is prevented for normal attribute setting yet.

Severity: -- → S3
Flags: needinfo?(jteh)
Priority: -- → P1
Priority: P1 → --

Set release status flags based on info from the regressing bug 1824980

:jamie it's too late for 121, but do you plan on addressing this in time for 122?

Smaug, do you have any idea how we prevent this kind of infinite recursion for normal setAttribute calls?

Flags: needinfo?(smaug)

Usually JS engine complains about too much recursion, but in this case it looks like the created layout is just too deep and we don't protect from that (since the layout gets too large before js recursion check stop running the script).
One should be able to create too deep layout rather easily using normal DOM APIs.

Flags: needinfo?(smaug)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: