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

Issue 763964 link

Starred by 0 users

Issue metadata

Status: Verified
Owner:
Closed: Sep 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 1
Type: Bug-Regression



Sign in to add a comment

Blank page displayed in webview after restoring tabs from crash.

Project Member Reported by srikanthg@chromium.org, Sep 11 2017

Issue description

App Version: 62.0.3202.16 beta
iOS Version: 11.0, 10.3.3
Device: iPhone7 plus, iPhone6
URL: na

Steps to reproduce:
  1. Launch Google Chrome
  2. Navigate to any webpage
  3. Navigate to about://inducebrowsercrashforrealz in the same tab to crash the app
  4. Relaunch the app, tap Restore in the infobar

Observed results: Observe that the tabs are restored but the webview is not displayed.
Entering and exiting tabswticher shows the webview correctly

Good Version → 62.0.3181.0 #c8166b0
Bad Version → 62.0.3182.0 #5200820

Expected results: Webview should be displayed correctly after restoring from crash


Number of times you were able to reproduce: 5/5
Bug reproducible after clean install: Yes
Bug reproducible after clearing cache and cookies: Yes
Bug reproducible on Chrome Mobile on Android: NA
Bug reproducible on Safari/Firefox: Firefox: NA, Safari: NA
Bug reproducible on current stable build (App Version, iOS Version): M61 NO
Bug reproducible on the current beta channel build (App Version, iOS Version): M62 Yes

Link to video/image: https://drive.google.com/file/d/0B-xmXLQhjeKuZVZ1em5XUS01Rkk/view 
 

Comment 1 by pkl@chromium.org, Sep 11 2017

Cc: rohitrao@chromium.org
Components: Mobile>WebView>Glue
Labels: -Pri-2 M-62 Pri-1
Owner: eugene...@chromium.org
Status: Assigned (was: Untriaged)
Labels: Needs-Feedback
Srikanth, could you please update Good revision. c8166b0 is not correct git ref object.
Cc: eugene...@chromium.org
Components: -Mobile>WebView>Glue UI>Browser>Core
Labels: -Needs-Feedback ReleaseBlock-Stable
Owner: sdefresne@chromium.org
WebState's view is not inserted into view hierarchy and that's why it is not displayed. Regressed here: https://chromium-review.googlesource.com/555498
Project Member

Comment 4 by bugdroid1@chromium.org, Sep 13 2017

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

commit 13de370253569d63904948735f6d5e65ab543daa
Author: Sylvain Defresne <sdefresne@chromium.org>
Date: Wed Sep 13 13:50:08 2017

Fix restoration of session after a crash.

Disable sending kTabModelNewTabWillOpenNotification notification
when the TabModel is restoring a session as this breaks the BVC
state that does not expect the notification to be sent when a tab
is added due to session restoration.

Bug:  763964 
Change-Id: I404487b5a561e43fe4d23303c004e4d3e8701dfe
Reviewed-on: https://chromium-review.googlesource.com/664557
Reviewed-by: Rohit Rao (ping after 24h) <rohitrao@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501614}
[modify] https://crrev.com/13de370253569d63904948735f6d5e65ab543daa/ios/chrome/browser/tabs/BUILD.gn
[modify] https://crrev.com/13de370253569d63904948735f6d5e65ab543daa/ios/chrome/browser/tabs/tab_model.mm
[modify] https://crrev.com/13de370253569d63904948735f6d5e65ab543daa/ios/chrome/browser/tabs/tab_model_notification_observer.h
[modify] https://crrev.com/13de370253569d63904948735f6d5e65ab543daa/ios/chrome/browser/tabs/tab_model_notification_observer.mm
[add] https://crrev.com/13de370253569d63904948735f6d5e65ab543daa/ios/chrome/browser/tabs/tab_model_web_usage_enabled_observer.h
[add] https://crrev.com/13de370253569d63904948735f6d5e65ab543daa/ios/chrome/browser/tabs/tab_model_web_usage_enabled_observer.mm

Labels: Merge-Request-62
Status: Fixed (was: Assigned)
Project Member

Comment 6 by bugdroid1@chromium.org, Sep 13 2017

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

commit 0da6675954e76134e3fd351fab92f712f17ffca1
Author: Sylvain Defresne <sdefresne@chromium.org>
Date: Wed Sep 13 17:02:24 2017

Revert "Fix restoration of session after a crash."

This reverts commit 13de370253569d63904948735f6d5e65ab543daa.

Reason for revert: breaks '-[ExternalURLSigninTestCase testSignInReauthenticate]' EarlGrey test.

Original change's description:
> Fix restoration of session after a crash.
> 
> Disable sending kTabModelNewTabWillOpenNotification notification
> when the TabModel is restoring a session as this breaks the BVC
> state that does not expect the notification to be sent when a tab
> is added due to session restoration.
> 
> Bug:  763964 
> Change-Id: I404487b5a561e43fe4d23303c004e4d3e8701dfe
> Reviewed-on: https://chromium-review.googlesource.com/664557
> Reviewed-by: Rohit Rao (ping after 24h) <rohitrao@chromium.org>
> Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#501614}

TBR=rohitrao@chromium.org,sdefresne@chromium.org

Change-Id: I917e129b14d351bf66527a6620c4f67f97eaa8aa
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  763964 
Reviewed-on: https://chromium-review.googlesource.com/664706
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501667}
[modify] https://crrev.com/0da6675954e76134e3fd351fab92f712f17ffca1/ios/chrome/browser/tabs/BUILD.gn
[modify] https://crrev.com/0da6675954e76134e3fd351fab92f712f17ffca1/ios/chrome/browser/tabs/tab_model.mm
[modify] https://crrev.com/0da6675954e76134e3fd351fab92f712f17ffca1/ios/chrome/browser/tabs/tab_model_notification_observer.h
[modify] https://crrev.com/0da6675954e76134e3fd351fab92f712f17ffca1/ios/chrome/browser/tabs/tab_model_notification_observer.mm
[delete] https://crrev.com/d8a72b4f350364f8581a1bfe9cc2b5e438781045/ios/chrome/browser/tabs/tab_model_web_usage_enabled_observer.h
[delete] https://crrev.com/d8a72b4f350364f8581a1bfe9cc2b5e438781045/ios/chrome/browser/tabs/tab_model_web_usage_enabled_observer.mm

Labels: -Merge-Request-62
Status: Started (was: Fixed)
Fix was reverted as it breaks '-[ExternalURLSigninTestCase testSignInReauthenticate]'. Re-opening.
Project Member

Comment 8 by bugdroid1@chromium.org, Sep 14 2017

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

commit e8ae6ad6b282f367b21c5c6bae38a27e7e8336cc
Author: Sylvain Defresne <sdefresne@chromium.org>
Date: Thu Sep 14 14:22:10 2017

Fix restoration of session after a crash.

Disable sending kTabModelNewTabWillOpenNotification notification
when the TabModel is restoring a session as this breaks the BVC
state that does not expect the notification to be sent when a tab
is added due to session restoration.

This is a reland of http://crrev.com/c/664557 that fixes EG tests
by correctly initialising TabModelNotificationObserver (should not
be disabled except during the restoration of the session).

This CL also improves on the original CL by using a scoped closure
runner to re-enable TabModelNotificationObserver to protect against
early returns in -restoreSessionWindow:persistState:.

Bug:  763964 
Change-Id: Ie950ac3f35b13566abcc1ca6eae774512ed7a16a
Reviewed-on: https://chromium-review.googlesource.com/665238
Reviewed-by: Rohit Rao (ping after 24h) <rohitrao@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/heads/master@{#501944}
[modify] https://crrev.com/e8ae6ad6b282f367b21c5c6bae38a27e7e8336cc/ios/chrome/browser/tabs/BUILD.gn
[modify] https://crrev.com/e8ae6ad6b282f367b21c5c6bae38a27e7e8336cc/ios/chrome/browser/tabs/tab_model.mm
[modify] https://crrev.com/e8ae6ad6b282f367b21c5c6bae38a27e7e8336cc/ios/chrome/browser/tabs/tab_model_notification_observer.h
[modify] https://crrev.com/e8ae6ad6b282f367b21c5c6bae38a27e7e8336cc/ios/chrome/browser/tabs/tab_model_notification_observer.mm
[add] https://crrev.com/e8ae6ad6b282f367b21c5c6bae38a27e7e8336cc/ios/chrome/browser/tabs/tab_model_web_usage_enabled_observer.h
[add] https://crrev.com/e8ae6ad6b282f367b21c5c6bae38a27e7e8336cc/ios/chrome/browser/tabs/tab_model_web_usage_enabled_observer.mm

Labels: Merge-Request-62
Status: Fixed (was: Started)
Project Member

Comment 10 by sheriffbot@chromium.org, Sep 14 2017

Labels: -Merge-Request-62 Merge-Review-62 Hotlist-Merge-Review
This bug requires manual review: Less than 29 days to go before AppStore submit on M62
Please contact the milestone owner if you have questions.
Owners: amineer@(Android), cmasso@(iOS), bhthompson@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: Assigned (was: Fixed)
This introduced the dual omnibox issue similar to http://crbug/755179 again.
After restoring from crash, I am able to see the webpage contents but trying to do Pull to refresh displays the omnibox twice. Can you please take a look?

I have tested on iPhone7 plus(iOS11), iPhone6s(iOS10.3.3) with M63.0.3216.0 canary
Cc: jif@chromium.org cma...@chromium.org
I think the Pull to refresh graphical glitch is minor vs the app being unresponsive after at "Restore". Can we consider the RBS fixed, merge the fix, and open a new bug to track the incorrect graphical glitch?

+cmasso
I agree sdefresne@. Let's fix the app being unresponsive which is what this bug is about, then if more work needs to be done about correcting the graphical glitch, open a new bug for it. 
Labels: -Hotlist-Merge-Review -Merge-Review-62
Hey Sylvain, what are you planning to merge now since the cl was reverted?
The CL was relanded with a fix (https://chromium-review.googlesource.com/c/chromium/src/+/665238). This is the CL that I'd like to merge.
Labels: Merge-Approved-62
Srikanth, please verify in canary 
Status: Verified (was: Assigned)
Verified on M63.0.3219.0 canary, dev
Device: iPhone7 plus
iOS: 11 GM seed.

Webview is displayed correctly after restoring from crash.
I will report a new bug about the double omnibox issue.
Project Member

Comment 19 by bugdroid1@chromium.org, Sep 20 2017

Labels: -merge-approved-62 merge-merged-3202
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/add2a72a91ab90d826bd12631719015f6850ae51

commit add2a72a91ab90d826bd12631719015f6850ae51
Author: Sylvain Defresne <sdefresne@chromium.org>
Date: Wed Sep 20 08:43:21 2017

Fix restoration of session after a crash.

Disable sending kTabModelNewTabWillOpenNotification notification
when the TabModel is restoring a session as this breaks the BVC
state that does not expect the notification to be sent when a tab
is added due to session restoration.

This is a reland of http://crrev.com/c/664557 that fixes EG tests
by correctly initialising TabModelNotificationObserver (should not
be disabled except during the restoration of the session).

This CL also improves on the original CL by using a scoped closure
runner to re-enable TabModelNotificationObserver to protect against
early returns in -restoreSessionWindow:persistState:.

Bug:  763964 
Change-Id: Ie950ac3f35b13566abcc1ca6eae774512ed7a16a
Reviewed-on: https://chromium-review.googlesource.com/665238
Reviewed-by: Rohit Rao (ping after 24h) <rohitrao@chromium.org>
Commit-Queue: Sylvain Defresne <sdefresne@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#501944}(cherry picked from commit e8ae6ad6b282f367b21c5c6bae38a27e7e8336cc)
Reviewed-on: https://chromium-review.googlesource.com/674983
Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
Cr-Commit-Position: refs/branch-heads/3202@{#353}
Cr-Branched-From: fa6a5d87adff761bc16afc5498c3f5944c1daa68-refs/heads/master@{#499098}
[modify] https://crrev.com/add2a72a91ab90d826bd12631719015f6850ae51/ios/chrome/browser/tabs/BUILD.gn
[modify] https://crrev.com/add2a72a91ab90d826bd12631719015f6850ae51/ios/chrome/browser/tabs/tab_model.mm
[modify] https://crrev.com/add2a72a91ab90d826bd12631719015f6850ae51/ios/chrome/browser/tabs/tab_model_notification_observer.h
[modify] https://crrev.com/add2a72a91ab90d826bd12631719015f6850ae51/ios/chrome/browser/tabs/tab_model_notification_observer.mm
[add] https://crrev.com/add2a72a91ab90d826bd12631719015f6850ae51/ios/chrome/browser/tabs/tab_model_web_usage_enabled_observer.h
[add] https://crrev.com/add2a72a91ab90d826bd12631719015f6850ae51/ios/chrome/browser/tabs/tab_model_web_usage_enabled_observer.mm

Verified on 62.0.3202.35 beta in iPhone7 plus(iOS10.3.3) and iPad Air(iOS 11)
Webview is displayed correctly after restoring from crash.

Sign in to add a comment