The "Capture Screenshot" is very buggy when using Device Mode
Reported by
chihuahu...@gmail.com,
Oct 11
|
|||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36 Steps to reproduce the problem: 1. Open Chrome 2. Navigate to http://example.com or any other website 3. Open Inspect Element 4. Open Device Mode ("Toggle device toolbar") 5. Set the resolution to something high (like 4444x1792). The higher the resolution, the higher the reproduction rate. 6. Using the menu in the top right of Device Mode, hit "Capture full size screenshot" 7. Using the same menu, hit "Capture full size screenshot" a second time 8. Using the same menu, hit "Capture screenshot". What is the expected behavior? Chrome should take a screenshot and not crash What went wrong? Chrome immediately crashes to the desktop with no error message. Crashed report ID: 4375e7d7-6529-4a82-96cc-16059306880c How much crashed? Whole browser Is it a problem with a plugin? N/A Did this work before? N/A Chrome version: 69.0.3497.100 Channel: stable OS Version: 6.1 (Windows 7, Windows Server 2008 R2) Flash Version: I was trying out the screenshot features mentioned above when Chrome suddenly crashed. I experimented with the features some more and found that the crashes were inconsistent but could be reproduced on multiple PCs (one is an older computer running Windows 7 and the other is a gaming PC running Windows 10). Eventually I was able to come up with the process listed above, which consistently (100%) causes a crash on both my PCs. Afterwards, I tried lowering the resolution to something smaller (1900 x 800). The three-step reproduction steps no longer caused a crash, but hitting the buttons a few more times did cause a crash. After that, I tried lowering the resolution to something even smaller (500 x 500). Reproducing the crash at this resolution was very difficult, but it finally crashed after I had hit the screenshot buttons enough times. I then decided to make the resolution even higher (8000 x 4000). This caused a crash after only two screenshots instead of three. Based on the information above, it might be a memory issue since bigger screenshots make the crashes "easier". At one point, I was also able to cause a crash by using the "Capture node screenshot" feature that you can access by clicking a node under Elements and hitting Ctrl+Shift+P. So the issue is not limited to the Screenshot and Full Size Screenshot features.
,
Oct 11
Thanks a lot for filing an issue! Could you please go to chrome://crashes and paste here the "Uploaded Crash Report ID"? This will help a lot with fixing the bug.
,
Oct 11
Interesting. I'll try it out on a third PC and record a video. Here are the crash IDs: 8cff3295bf289167 ea8c43899396ed4b dccab9722a791db6 ba6fbef9b8be62d8 fe23915ef965f7ef 1799bbce5d5dc9e8 Can you try a higher resolution like 8000 x 4000 to see if it makes a difference?
,
Oct 11
Thank you for providing more feedback. Adding the requester to the cc list. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Oct 11
Here's a video of the crash. At 8000x4000, I'm able to consistently crash Chrome with only two screenshots. Could it be that one screenshot hasn't finished rendering yet? Try pressing the buttons faster and see if you can reproduce it that way.
,
Oct 12
This is the closest I can get to reproducing the reported bug. Even with an extremely high resolution and clicking the screenshot button multiple times, I don't get chrome to crash. Version: Google Chrome 71.0.3577.0 (Official Build) canary (64-bit) (cohort: Clang-64)
,
Oct 15
Sorry I cannot reproduce, either. I tried clicking the buttons faster thank the previous screenshot finishes rendering, at resolution 9371x5000, but the browser is still ok. Version 69.0.3497.100 (Official Build) (64-bit) on macOS
,
Oct 29
Thanks for the report. I'm able to reproduce the thread error in terminal (gfx::Size::GetArea()) with high custom resolution (8k x 4k), but my browser/tab does not crash. After taking more screenshots, I get a different error: #0 0x7f94307c8cff base::debug::StackTrace::StackTrace() #1 0x7f94307c8871 base::debug::(anonymous namespace)::StackDumpSignalHandler() #2 0x7f9426a550c0 <unknown> #3 0x7f94248e2fcf gsignal #4 0x7f94248e43fa abort #5 0x7f9430115275 sk_abort_no_print() #6 0x7f94232f3e08 viz::SoftwareRenderer::AllocateRenderPassResourceIfNeeded() #7 0x7f94232bb006 viz::DirectRenderer::UseRenderPass() #8 0x7f94232ba7e0 viz::DirectRenderer::DrawRenderPass() #9 0x7f94232ba22b viz::DirectRenderer::DrawRenderPassAndExecuteCopyRequests() #10 0x7f94232b9ee1 viz::DirectRenderer::DrawFrame() #11 0x7f94232bef47 viz::Display::DrawAndSwap() #12 0x7f94232caa2d viz::DisplayScheduler::DrawAndSwap() #13 0x7f94232c9af4 viz::DisplayScheduler::OnBeginFrameDeadline() #14 0x7f943070dfb1 base::debug::TaskAnnotator::RunTask() Which DOES crash Chrome after I refresh the tab, with error: #3 0x7f046af1efcf gsignal #4 0x7f046af203fa abort #5 0x7f0476e036a5 base::debug::BreakDebugger() #6 0x7f0476d630fb logging::LogMessage::~LogMessage() #7 0x7f04749432e0 content::GpuDataManagerImplPrivate::FallBackToNextGpuMode() #8 0x7f047494099f content::GpuDataManagerImpl::FallBackToNextGpuMode() #9 0x7f047494b44e content::GpuProcessHost::OnProcessCrashed() #10 0x7f04747b268c content::BrowserChildProcessHostImpl::OnChildDisconnected() #11 0x7f04756eef2a IPC::internal::MessagePipeReader::OnPipeError() #12 0x7f047704826c mojo::InterfaceEndpointClient::NotifyError() #13 0x7f04756f73e7 IPC::(anonymous namespace)::ChannelAssociatedGroupController::NotifyEndpointOfError() #14 0x7f04756f86f4 IPC::(anonymous namespace)::ChannelAssociatedGroupController::OnPipeError() #15 0x7f04770449fb mojo::Connector::HandleError() #16 0x7f047701336a mojo::SimpleWatcher::OnHandleReady() #17 0x7f04770135a5 mojo::SimpleWatcher::Context::Notify() #18 0x7f0477012bb0 mojo::SimpleWatcher::Context::CallNotify() #19 0x7f046790ac49 mojo::core::WatcherDispatcher::InvokeWatchCallback() #20 0x7f046790a5bc mojo::core::Watch::InvokeCallback() #21 0x7f04679069ed mojo::core::RequestContext::~RequestContext() #22 0x7f04678fceb9 mojo::core::NodeChannel::OnChannelError() #23 0x7f046790f0d4 mojo::core::(anonymous namespace)::ChannelPosix::OnFileCanReadWithoutBlocking() #24 0x7f0476e1b1c7 base::MessagePumpLibevent::OnLibeventNotification() I think DevTools should be waiting for one screenshot to complete before starting the next one. I'll take a look. |
|||
►
Sign in to add a comment |
|||
Comment 1 by jmukthavaram@chromium.org
, Oct 11Components: Platform>DevTools
Labels: Needs-Triage-M69 Needs-Feedback
4.0 MB
4.0 MB View Download