New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 664097 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug



Sign in to add a comment

appear.in is broken on debug build

Project Member Reported by zqzh...@chromium.org, Nov 10 2016

Issue description

Mounir, I suspect this is due to your recent CL for fixing clipped media controlled. Can you take a look?
I got the following trace:

[FATAL:LayoutMedia.cpp(183)] Check failed: visibleWidth - absoluteXOffset >= 0 ("-38" vs. 0)

Stack Trace:
  RELADDR   FUNCTION                                                               FILE:LINE
  00095831  ~LogMessage                                                            /base/logging.cc:532
  00a1ca5d  blink::LayoutMedia::computePanelWidth(blink::LayoutRect const&) const  /third_party/WebKit/Source/core/layout/LayoutMedia.cpp:183
  00a1c69d  blink::LayoutMedia::layout()                                           /third_party/WebKit/Source/core/layout/LayoutMedia.cpp:85

-----------------------------------------------------

     r0 00000000  r1 000061ad  r2 00000006  r3 df572978
     r4 df572980  r5 df572930  r6 0000006e  r7 0000010c
     r8 df56c588  r9 df56c148  sl df56c580  fp 2ea78108
     ip 00000006  sp df56c0e0  lr f715af85  pc f715d374

Stack Trace:
  RELADDR   FUNCTION                                                                                                                      FILE:LINE
  00042374  tgkill+12                                                                                                                     /system/lib/libc.so
  0003ff81  pthread_kill+32                                                                                                               /system/lib/libc.so
  0001c73f  raise+10                                                                                                                      /system/lib/libc.so
  000198f1  __libc_android_abort+34                                                                                                       /system/lib/libc.so
  000174b0  abort+4                                                                                                                       /system/lib/libc.so
  v------>  base::debug::(anonymous namespace)::DebugBreak()                                                                              /base/debug/debugger_posix.cc:221
  00081af3  base::debug::BreakDebugger()                                                                                                  /base/debug/debugger_posix.cc:251
  00095a2d  ~LogMessage                                                                                                                   /base/logging.cc:748
  00a1ca5b  blink::LayoutMedia::computePanelWidth(blink::LayoutRect const&) const                                                         /third_party/WebKit/Source/core/layout/LayoutMedia.cpp:183
  00a1c69b  blink::LayoutMedia::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutMedia.cpp:85
  v------>  blink::LayoutObject::layoutIfNeeded()                                                                                         /third_party/WebKit/Source/core/layout/LayoutObject.h:1026
  009c0675  blink::LayoutBlock::layoutPositionedObjects(bool, blink::LayoutBlock::PositionedLayoutBehavior)                               /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:811
  009c809b  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:619
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  009c8927  blink::LayoutBlockFlow::positionAndLayoutOnceIfNeeded(blink::LayoutBox&, blink::LayoutUnit, blink::BlockChildrenLayoutInfo&)  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:778
  009c8b49  blink::LayoutBlockFlow::layoutBlockChild(blink::LayoutBox&, blink::BlockChildrenLayoutInfo&)                                  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:841
  009cae67  blink::LayoutBlockFlow::layoutBlockChildren(bool, blink::SubtreeLayoutScope&, blink::LayoutUnit, blink::LayoutUnit)           /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:1483
  009c7e37  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:549
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  v------>  blink::LayoutObject::layoutIfNeeded()                                                                                         /third_party/WebKit/Source/core/layout/LayoutObject.h:1026
  009c0675  blink::LayoutBlock::layoutPositionedObjects(bool, blink::LayoutBlock::PositionedLayoutBehavior)                               /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:811
  009c809b  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:619
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  009c8927  blink::LayoutBlockFlow::positionAndLayoutOnceIfNeeded(blink::LayoutBox&, blink::LayoutUnit, blink::BlockChildrenLayoutInfo&)  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:778
  009c8b49  blink::LayoutBlockFlow::layoutBlockChild(blink::LayoutBox&, blink::BlockChildrenLayoutInfo&)                                  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:841
  009cae67  blink::LayoutBlockFlow::layoutBlockChildren(bool, blink::SubtreeLayoutScope&, blink::LayoutUnit, blink::LayoutUnit)           /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:1483
  009c7e37  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:549
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  009c8927  blink::LayoutBlockFlow::positionAndLayoutOnceIfNeeded(blink::LayoutBox&, blink::LayoutUnit, blink::BlockChildrenLayoutInfo&)  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:778
  009c8b49  blink::LayoutBlockFlow::layoutBlockChild(blink::LayoutBox&, blink::BlockChildrenLayoutInfo&)                                  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:841
  009cae67  blink::LayoutBlockFlow::layoutBlockChildren(bool, blink::SubtreeLayoutScope&, blink::LayoutUnit, blink::LayoutUnit)           /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:1483
  009c7e37  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:549
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  009c8927  blink::LayoutBlockFlow::positionAndLayoutOnceIfNeeded(blink::LayoutBox&, blink::LayoutUnit, blink::BlockChildrenLayoutInfo&)  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:778
  009c8b49  blink::LayoutBlockFlow::layoutBlockChild(blink::LayoutBox&, blink::BlockChildrenLayoutInfo&)                                  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:841
  009cae67  blink::LayoutBlockFlow::layoutBlockChildren(bool, blink::SubtreeLayoutScope&, blink::LayoutUnit, blink::LayoutUnit)           /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:1483
  009c7e37  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:549
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  009c8927  blink::LayoutBlockFlow::positionAndLayoutOnceIfNeeded(blink::LayoutBox&, blink::LayoutUnit, blink::BlockChildrenLayoutInfo&)  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:778
  009c8b49  blink::LayoutBlockFlow::layoutBlockChild(blink::LayoutBox&, blink::BlockChildrenLayoutInfo&)                                  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:841
  009cae67  blink::LayoutBlockFlow::layoutBlockChildren(bool, blink::SubtreeLayoutScope&, blink::LayoutUnit, blink::LayoutUnit)           /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:1483
  009c7e37  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:549
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  v------>  blink::LayoutObject::layoutIfNeeded()                                                                                         /third_party/WebKit/Source/core/layout/LayoutObject.h:1026
  009c0675  blink::LayoutBlock::layoutPositionedObjects(bool, blink::LayoutBlock::PositionedLayoutBehavior)                               /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:811
  009c809b  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:619
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  009fa92f  blink::LayoutFlexibleBox::constructFlexItem(blink::LayoutBox&, blink::LayoutFlexibleBox::ChildLayoutType)                     /third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp:1353
  009f8455  blink::LayoutFlexibleBox::layoutFlexItems(bool, blink::SubtreeLayoutScope&)                                                   /third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp:962
  009f804f  blink::LayoutFlexibleBox::layoutBlock(bool)                                                                                   /third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp:372
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  009fa92f  blink::LayoutFlexibleBox::constructFlexItem(blink::LayoutBox&, blink::LayoutFlexibleBox::ChildLayoutType)                     /third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp:1353
  009f8455  blink::LayoutFlexibleBox::layoutFlexItems(bool, blink::SubtreeLayoutScope&)                                                   /third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp:962
  009f804f  blink::LayoutFlexibleBox::layoutBlock(bool)                                                                                   /third_party/WebKit/Source/core/layout/LayoutFlexibleBox.cpp:372
  009bf5a5  blink::LayoutBlock::layout()                                                                                                  /third_party/WebKit/Source/core/layout/LayoutBlock.cpp:407
  009c8927  blink::LayoutBlockFlow::positionAndLayoutOnceIfNeeded(blink::LayoutBox&, blink::LayoutUnit, blink::BlockChildrenLayoutInfo&)  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:778
  009c8b49  blink::LayoutBlockFlow::layoutBlockChild(blink::LayoutBox&, blink::BlockChildrenLayoutInfo&)                                  /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:841
  009cae67  blink::LayoutBlockFlow::layoutBlockChildren(bool, blink::SubtreeLayoutScope&, blink::LayoutUnit, blink::LayoutUnit)           /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:1483
  009c7e37  blink::LayoutBlockFlow::layoutBlockFlow(bool, blink::LayoutUnit&, blink::SubtreeLayoutScope&)                                 /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:549
  009c7a5d  blink::LayoutBlockFlow::layoutBlock(bool)                                                                                     /third_party/WebKit/Source/core/layout/LayoutBlockFlow.cpp:455


 
I can confirm that the DCHECK crashes once I click Start on the home page and allow camera access.
Wasn't able to inspect the page due to some DevTools problem.
Logging |visibleWidth| and |absoluteXOffset| showed the following values when opening the page and trying to scroll around:

visibleWidth: "412", absoluteXOffset: "0"
visibleWidth: "412", absoluteXOffset: "450"
visibleWidth: "412", absoluteXOffset: "1124"
visibleWidth: "412", absoluteXOffset: "790"
visibleWidth: "412", absoluteXOffset: "60"
visibleWidth: "412", absoluteXOffset: "456"
visibleWidth: "412", absoluteXOffset: "456"
visibleWidth: "412", absoluteXOffset: "456"
visibleWidth: "412", absoluteXOffset: "456"
visibleWidth: "412", absoluteXOffset: "456"
visibleWidth: "412", absoluteXOffset: "456"
visibleWidth: "412", absoluteXOffset: "11"
visibleWidth: "412", absoluteXOffset: "390.5"
visibleWidth: "412", absoluteXOffset: "390.5"
visibleWidth: "412", absoluteXOffset: "6"
visibleWidth: "412", absoluteXOffset: "390.5"
visibleWidth: "412", absoluteXOffset: "11"
visibleWidth: "412", absoluteXOffset: "390.5"
visibleWidth: "412", absoluteXOffset: "390.5"
Status: Started (was: Untriaged)
Project Member

Comment 3 by bugdroid1@chromium.org, Nov 18 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/467481c23e2c416c34e5d4a34766d59a5aeefcf2

commit 467481c23e2c416c34e5d4a34766d59a5aeefcf2
Author: mlamouri <mlamouri@chromium.org>
Date: Fri Nov 18 16:54:05 2016

Media Controls: don't "cut" controls if fully hidden.

A media element might be outside of the page and can't be accessed and
for some reasons would have the controls enabled. Instead of having a
DCHECK, we should early return and use the default value.

BUG= 664097 
R=eae@chromium.org

Review-Url: https://codereview.chromium.org/2499013003
Cr-Commit-Position: refs/heads/master@{#433219}

[add] https://crrev.com/467481c23e2c416c34e5d4a34766d59a5aeefcf2/third_party/WebKit/LayoutTests/media/controls/overflow-fully-hidden.html
[modify] https://crrev.com/467481c23e2c416c34e5d4a34766d59a5aeefcf2/third_party/WebKit/Source/core/layout/LayoutMedia.cpp

Labels: Merge-Request-56

Comment 5 by dimu@chromium.org, Nov 18 2016

Labels: -Merge-Request-56 Merge-Approved-56 Hotlist-Merge-Approved
Your change meets the bar and is auto-approved for M56 (branch: 2924)
Project Member

Comment 6 by bugdroid1@chromium.org, Nov 29 2016

Labels: -merge-approved-56 merge-merged-2924
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/142f327a0dd5b924790af733c9e1b2a0f1aee38b

commit 142f327a0dd5b924790af733c9e1b2a0f1aee38b
Author: Mounir Lamouri <mlamouri@chromium.org>
Date: Tue Nov 29 17:36:15 2016

Media Controls: don't "cut" controls if fully hidden.

A media element might be outside of the page and can't be accessed and
for some reasons would have the controls enabled. Instead of having a
DCHECK, we should early return and use the default value.

BUG= 664097 
R=eae@chromium.org

Review-Url: https://codereview.chromium.org/2499013003
Cr-Commit-Position: refs/heads/master@{#433219}
(cherry picked from commit 467481c23e2c416c34e5d4a34766d59a5aeefcf2)

Review URL: https://codereview.chromium.org/2534183003 .

Cr-Commit-Position: refs/branch-heads/2924@{#158}
Cr-Branched-From: 3a87aecc31cd1ffe751dd72c04e5a96a1fc8108a-refs/heads/master@{#433059}

[add] https://crrev.com/142f327a0dd5b924790af733c9e1b2a0f1aee38b/third_party/WebKit/LayoutTests/media/controls/overflow-fully-hidden.html
[modify] https://crrev.com/142f327a0dd5b924790af733c9e1b2a0f1aee38b/third_party/WebKit/Source/core/layout/LayoutMedia.cpp

Status: Fixed (was: Started)

Sign in to add a comment