New issue
Advanced search Search tips

Issue 852289 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Bug



Sign in to add a comment

Crash when video requests Picture-in-Picture the second time

Project Member Reported by fbeaufort@chromium.org, Jun 13 2018

Issue description

Google Chrome	69.0.3455.1 (Official Build) canary (64-bit)
Revision	536bf28fc53301a97ac4e616d6e7b7d5b3604e74-refs/branch-heads/3455@{#2}
Platform	10775.0.0 (Official Build) canary-channel eve

What steps will reproduce the problem?
(1) The chrome://flags/#enable-experimental-web-platform-features and chrome://flags/#enable-surfaces-for-videos flags must be enabled.
(2) Go to https://googlechrome.github.io/samples/picture-in-picture/
(3) Hit "Play" video control 
(4) Click "Toogle Picture-in-Picture" button to enter Picture-in-Picture
(5) Close Picture-in-Picture window by clicking the Close button on the window
(6) Click "Toogle Picture-in-Picture" button

What is the expected result?
Video should enter Picture-in-Picture for the second time

What happens instead?
Browser crashes.

 

Comment 1 Deleted

Crash ID: crash/7a7ceb900b915071
Owner: fbeaufort@chromium.org
Status: Started (was: Untriaged)
I'm compiling ChromeOS on Linux to be able to reproduce as I can't on Linux.
Here's the trace I got:

Received signal 11 <unknown> 000000000000
#0 0x7f874f93bbcd base::debug::StackTrace::StackTrace()
#1 0x7f874f68c98c base::debug::StackTrace::StackTrace()
#2 0x7f874f93b658 base::debug::(anonymous namespace)::StackDumpSignalHandler()
#3 0x7f872b788390 <unknown>
#4 0x7f8743cd545d ui::Layer::SetBounds()
#5 0x7f8748f063c9 content::OverlaySurfaceEmbedder::UpdateLayerBounds()
#6 0x7f8748f078d9 content::PictureInPictureWindowControllerImpl::UpdateLayerBounds()
#7 0x5580d5d96052 OverlayWindowViews::UpdateVideoLayerSizeWithAspectRatio()
#8 0x5580d5d95217 OverlayWindowViews::CalculateAndUpdateWindowBounds()
#9 0x5580d5d968d0 OverlayWindowViews::UpdateVideoSize()
#10 0x7f8748f0760e content::PictureInPictureWindowControllerImpl::EmbedSurface()
#11 0x5580d59c96e3 Browser::EnterPictureInPicture()
#12 0x5580d59c9744 Browser::EnterPictureInPicture()
#13 0x7f874949fc51 content::WebContentsImpl::EnterPictureInPicture()
#14 0x7f8748e33ef2 content::MediaWebContentsObserver::OnPictureInPictureModeStarted()
#15 0x7f8748e38146 _ZN3IPC20DispatchToMethodImplIN7content24MediaWebContentsObserverEMS2_FvPNS1_15RenderFrameHostEiRKN3viz9SurfaceIdERKN3gfx4SizeEiES3_NSt3__15tupleIJiS6_SA_iEEEJLm0ELm1ELm2ELm3EEEEvPT_T0_PT1_OT2_NSF_16integer_sequenceImJXspT3_EEEE
#16 0x7f8748e37ff0 _ZN3IPC16DispatchToMethodIN7content24MediaWebContentsObserverENS1_15RenderFrameHostEJiRKN3viz9SurfaceIdERKN3gfx4SizeEiENSt3__15tupleIJiS5_S9_iEEEEENSC_9enable_ifIXeqsZT1_sr3std10tuple_sizeINSC_5decayIT2_E4typeEEE5valueEvE4typeEPT_MSM_FvPT0_DpT1_ESP_OSH_
#17 0x7f8748e36745 _ZN3IPC8MessageTI61MediaPlayerDelegateHostMsg_OnPictureInPictureModeStarted_MetaNSt3__15tupleIJiN3viz9SurfaceIdEN3gfx4SizeEiEEEvE8DispatchIN7content24MediaWebContentsObserverESC_NSB_15RenderFrameHostEMSC_FvPSD_iRKS5_RKS7_iEEEbPKNS_7MessageEPT_PT0_PT1_T2_
#18 0x7f8748e33469 content::MediaWebContentsObserver::OnMessageReceived()
#19 0x7f87494765a3 content::WebContentsImpl::OnMessageReceived()
#20 0x7f8748a8902c content::RenderFrameHostImpl::OnMessageReceived()
#21 0x7f87490d82e3 content::RenderProcessHostImpl::OnMessageReceived()
#22 0x7f874da58d05 IPC::ChannelProxy::Context::OnDispatchMessage()
#23 0x7f874da5ea9f _ZN4base8internal13FunctorTraitsIMN3IPC12ChannelProxy7ContextEFvRKNS2_7MessageEEvE6InvokeIS9_RK13scoped_refptrIS4_EJS7_EEEvT_OT0_DpOT1_
#24 0x7f874da5e9ff _ZN4base8internal12InvokeHelperILb0EvE8MakeItSoIRKMN3IPC12ChannelProxy7ContextEFvRKNS4_7MessageEEJRK13scoped_refptrIS6_ES9_EEEvOT_DpOT0_
#25 0x7f874da5e98d _ZN4base8internal7InvokerINS0_9BindStateIMN3IPC12ChannelProxy7ContextEFvRKNS3_7MessageEEJ13scoped_refptrIS5_ES6_EEEFvvEE7RunImplIRKSA_RKNSt3__15tupleIJSC_S6_EEEJLm0ELm1EEEEvOT_OT0_NSJ_16integer_sequenceImJXspT1_EEEE
#26 0x7f874da5e89c _ZN4base8internal7InvokerINS0_9BindStateIMN3IPC12ChannelProxy7ContextEFvRKNS3_7MessageEEJ13scoped_refptrIS5_ES6_EEEFvvEE3RunEPNS0_13BindStateBaseE
#27 0x7f874f63dcbe _ZNO4base12OnceCallbackIFvvEE3RunEv
#28 0x7f874f68dd7a base::debug::TaskAnnotator::RunTask()
#29 0x7f874f71785a base::internal::IncomingTaskQueue::RunTask()
#30 0x7f874f720a8b base::MessageLoop::RunTask()
#31 0x7f874f720cd5 base::MessageLoop::DeferOrRunPendingTask()
#32 0x7f874f720fb4 base::MessageLoop::DoWork()
#33 0x7f874f9803fb base::MessagePumpLibevent::Run()
#34 0x7f874f72037e base::MessageLoop::Run()
#35 0x7f874f7c8032 base::RunLoop::Run()
#36 0x5580d190822a ChromeBrowserMainParts::MainMessageLoopRun()
#37 0x7f874858b12a content::BrowserMainLoop::RunMainMessageLoopParts()
#38 0x7f8748593230 content::BrowserMainRunnerImpl::Run()
#39 0x7f874857eb69 content::BrowserMain()
#40 0x7f874a6073ab content::RunBrowserProcessMain()
#41 0x7f874a6093b5 content::ContentMainRunnerImpl::Run()
#42 0x7f874a5fe0b5 content::ContentServiceManagerMainDelegate::RunEmbedderProcess()
#43 0x7f874fc4cd2b service_manager::Main()
#44 0x7f874a604255 content::ContentMain()
#45 0x5580ce7d86b6 ChromeMain
#46 0x5580ce7d85c2 main
#47 0x7f872a0a9830 __libc_start_main
#48 0x5580ce7d849a _start

Project Member

Comment 6 by bugdroid1@chromium.org, Jun 19 2018

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

commit 0032e6ccad86c2c92b5771e0427007ccaf73e2ad
Author: François Beaufort <beaufort.francois@gmail.com>
Date: Tue Jun 19 06:05:35 2018

[Picture-in-Picture] Fix crash in Chrome OS.

This make sure starting a new Picture-in-Picture session from the same
video doesn't crash in Chrome OS.

Bug:  852289 
Change-Id: I7f4f5f3bed9999c08ee6576e9fe96e559e92009f
Reviewed-on: https://chromium-review.googlesource.com/1102469
Commit-Queue: François Beaufort <beaufort.francois@gmail.com>
Reviewed-by: apacible <apacible@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568355}
[modify] https://crrev.com/0032e6ccad86c2c92b5771e0427007ccaf73e2ad/chrome/browser/picture_in_picture/picture_in_picture_window_controller_browsertest.cc
[modify] https://crrev.com/0032e6ccad86c2c92b5771e0427007ccaf73e2ad/content/browser/picture_in_picture/overlay_surface_embedder.cc

Cc: mlamouri@chromium.org
fbeaufort@, is this fixed?
It should* be. As soon as Chrome OS Canary reaches 69.0.3466.0, I'll be able to mark it as verified.
Status: Verified (was: Started)
Verified in Chrome OS 69.0.3474.0

Sign in to add a comment