New issue
Advanced search Search tips

Issue 857319 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner: ----
Closed: Oct 29
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

[LayoutNG] LineBraker crashes text-transform in ::first-line and element

Project Member Reported by yosin@chromium.org, Jun 28 2018

Issue description

# Minimal HTML:
<!doctype html>
<style>
#sample::first-line { text-transform: capitalize; }
#sample { text-transform: uppercase; }
</style>
<p id="sample" class="ft">xyz<br>line 2</p>
<script>
const sample = document.getElementById('sample');
sample.insertBefore(new Text('abc'), sample.firstChild);
</script>

# Stack trace
[42488:55924:0628/130115.276:FATAL:wtf_string.h(140)] Check failed: !impl_->Is8Bit().

        WTF::String::Characters16 [0x00007FFF85B8C1B4+212] (C:\src\w\cr2\src\third_party\blink\renderer\platform\wtf\text\wtf_string.h:141)
        blink::NGLineBreaker::NGLineBreaker [0x00007FFF5720958F+607] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\inline\ng_line_breaker.cc:75)
        blink::NGInlineLayoutAlgorithm::Layout [0x00007FFF571F57D2+3602] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\inline\ng_inline_layout_algorithm.cc:685)
        blink::NGInlineNode::Layout [0x00007FFF5720343F+143] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\inline\ng_inline_node.cc:652)
        blink::NGLayoutInputNode::Layout [0x00007FFF572757BD+93] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_layout_input_node.cc:131)
        blink::NGBlockLayoutAlgorithm::HandleInflow [0x00007FFF5724ACE4+1540] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_layout_algorithm.cc:1043)
        blink::NGBlockLayoutAlgorithm::Layout [0x00007FFF572479D9+4137] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_layout_algorithm.cc:517)
        blink::`anonymous namespace'::LayoutWithAlgorithm [0x00007FFF57254CB3+723] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_node.cc:65)
        blink::NGBlockNode::Layout [0x00007FFF57253B76+1046] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_node.cc:219)
        blink::NGLayoutInputNode::Layout [0x00007FFF572757E3+131] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_layout_input_node.cc:131)
        blink::NGBlockLayoutAlgorithm::HandleInflow [0x00007FFF5724ACE4+1540] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_layout_algorithm.cc:1043)
        blink::NGBlockLayoutAlgorithm::Layout [0x00007FFF572479D9+4137] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_layout_algorithm.cc:517)
        blink::`anonymous namespace'::LayoutWithAlgorithm [0x00007FFF57254CB3+723] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_node.cc:65)
        blink::NGBlockNode::Layout [0x00007FFF57253B76+1046] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_node.cc:219)
        blink::NGLayoutInputNode::Layout [0x00007FFF572757E3+131] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_layout_input_node.cc:131)
        blink::NGBlockLayoutAlgorithm::HandleInflow [0x00007FFF5724ACE4+1540] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_layout_algorithm.cc:1043)
        blink::NGBlockLayoutAlgorithm::Layout [0x00007FFF572479D9+4137] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_layout_algorithm.cc:517)
        blink::`anonymous namespace'::LayoutWithAlgorithm [0x00007FFF57254CB3+723] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_node.cc:65)
        blink::NGBlockNode::Layout [0x00007FFF57253B76+1046] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\ng_block_node.cc:219)
        blink::LayoutNGBlockFlow::UpdateBlockLayout [0x00007FFF5722AACD+253] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\ng\layout_ng_block_flow.cc:72)
        blink::LayoutBlock::UpdateLayout [0x00007FFF56F9CDDF+367] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_block.cc:444)
        blink::LayoutBlockFlow::PositionAndLayoutOnceIfNeeded [0x00007FFF56FBA20B+667] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_block_flow.cc:791)
        blink::LayoutBlockFlow::LayoutBlockChild [0x00007FFF56FBA867+455] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_block_flow.cc:852)
        blink::LayoutBlockFlow::LayoutBlockChildren [0x00007FFF56FB901A+1226] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_block_flow.cc:1559)
        blink::LayoutBlockFlow::LayoutChildren [0x00007FFF56FB71BC+428] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_block_flow.cc:603)
        blink::LayoutBlockFlow::UpdateBlockLayout [0x00007FFF56FB6A77+983] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_block_flow.cc:472)
        blink::LayoutView::UpdateBlockLayout [0x00007FFF571572DF+719] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_view.cc:284)
        blink::LayoutBlock::UpdateLayout [0x00007FFF56F9CDDF+367] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_block.cc:444)
        blink::LayoutView::UpdateLayout [0x00007FFF571576F9+793] (C:\src\w\cr2\src\third_party\blink\renderer\core\layout\layout_view.cc:329)
        blink::LocalFrameView::PerformLayout [0x00007FFF568C898D+1485] (C:\src\w\cr2\src\third_party\blink\renderer\core\frame\local_frame_view.cc:880)
        blink::LocalFrameView::UpdateLayout [0x00007FFF568C6358+3816] (C:\src\w\cr2\src\third_party\blink\renderer\core\frame\local_frame_view.cc:1059)
        blink::Document::ImplicitClose [0x00007FFF561F1CA4+852] (C:\src\w\cr2\src\third_party\blink\renderer\core\dom\document.cc:3323)
        blink::Document::CheckCompleted [0x00007FFF561F15EA+250] (C:\src\w\cr2\src\third_party\blink\renderer\core\dom\document.cc:3381)



 
Status: WontFix (was: Available)
Found this while looking for a similar issue. However, the Minimal HTML example given appears to no longer DCHECK, so it appears this may already have been fixed.

Sign in to add a comment