New issue
Advanced search Search tips

Issue 824193 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner: ----
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug
Proj-XR
Proj-XR-VR

Blocking:
issue 808716
issue 808722



Sign in to add a comment

Chrome on Android crashes when attempting to close all incognito tabs

Project Member Reported by cjgrant@chromium.org, Mar 21 2018

Issue description

Chrome Version: Chrome Canary 67.0.3376.0
OS: Android

What steps will reproduce the problem?
(1) Start the browser
(2) Open a new incognito tab
(3) Tab the tab switcher icon
(4) From the menu, select "Close incognito tabs"

The resulting crash happens 100% of the time.  I found it while implementing part of the VR UI, but the crash also happens in Canary via normal UI.

The actual crash is due to nested trace events, due to nested TabModelImpl.setIndex() calls.  The calls may be on different managers (incognito vs not), but the tracing doesn't care.

A snippet of the trace:

java.lang.IllegalArgumentException: Multiple pending trace events can't have the same name
   at org.chromium.base.EarlyTraceEvent.begin(EarlyTraceEvent.java:170)
   at org.chromium.base.TraceEvent.begin(TraceEvent.java:353)
   at org.chromium.base.TraceEvent.begin(TraceEvent.java:344)
   at org.chromium.chrome.browser.tabmodel.TabModelImpl.setIndex(TabModelImpl.java:476)
   at org.chromium.chrome.browser.tabmodel.TabModelUtils.setIndex(TabModelUtils.java:154)
   at org.chromium.chrome.browser.tabmodel.TabModelSelectorImpl.selectModel(TabModelSelectorImpl.java:233)
   at org.chromium.chrome.browser.tabmodel.TabModelImpl.setIndex(TabModelImpl.java:480)
   at org.chromium.chrome.browser.tabmodel.TabModelImpl.removeTabAndSelectNext(TabModelImpl.java:571)
   at org.chromium.chrome.browser.tabmodel.TabModelImpl.startTabClosure(TabModelImpl.java:530)
   at org.chromium.chrome.browser.tabmodel.TabModelImpl.closeTab(TabModelImpl.java:365)
   at org.chromium.chrome.browser.tabmodel.TabModelImpl.closeAllTabs(TabModelImpl.java:423)
   at org.chromium.chrome.browser.tabmodel.TabModelImpl.closeAllTabs(TabModelImpl.java:401)
   at org.chromium.chrome.browser.tabmodel.IncognitoTabModel.closeAllTabs(IncognitoTabModel.java:138)

 
Blocking: 808722
Cc: twelling...@chromium.org
Cc: tedc...@chromium.org
Status: Unconfirmed (was: Untriaged)
cjgrant@ - I'm not able to reproduce this on ToT or on Canary 67.0.3376.0. Will you please upload a video with the repro?
Cc: lizeb@chromium.org
+lizeb@ for EarlyTraceEvent knowledge.  You shouldn't be able to manipulate the tab model until native is loaded, so I'm surprised it's using EarlyTraceEvent at all.
Interesting, the attached video doesn't show the incognito tab content.  You can mostly still see what I'm doing though - nothing crazy.
20180321_135646.mp4
12.6 MB View Download
You need this command line flag to capture video or screenshots in incognito:

 --enable-incognito-snapshots-in-android-recents


Maybe we can work around this by using a different tracing name for incognito and normal models.
Do you need a new video captured?  I don't know if it'll add new information, but I can if it'll help!
I don't need another video, but some device details would be helpful. What Android version is this reproducing on?
When checking this, I found that the device was on a Android O build from December, and had not updated itself since.  I reloaded a March OC MR1 build, and can no longer repro the issue.

I have no idea why such a change would change the tab code call sequence, but if I can't repro this with a new build, then I guess it's probably not worth pursuing.

@twellington, if you agree, feel free to close.
Status: WontFix (was: Unconfirmed)
I agree. If we get another repro we can reopen.

Comment 11 by ericde@google.com, Mar 23 2018

Blocking: 808716

Sign in to add a comment