New issue
Advanced search Search tips

Issue 824196 link

Starred by 0 users

Issue metadata

Status: Verified
Owner:
Closed: Mar 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: iOS
Pri: 1
Type: Bug



Sign in to add a comment

Invalid history entries displayed after cold start.

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

Issue description

App Version: 67.0.3377.0 canary
iOS Version: 11.2.6, 10.3.3
Device: iPhone, iPad
URL: any

Precondition: Enable #slim-navigation-manager flag

Steps to reproduce:
  1. Launch Google Chrome
  2. Open a webpage
  3. Background the app and force quit
  4. Launch the app again
  5. Tap Menu → History

Observed results: Observe that invalid entries file://var/containers/… is displayed in History

Expected results: Only valid navigational entries should be displayed.

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): M65 NO
Bug reproducible on the current beta channel build (App Version, iOS Version): M66 NO

Link to video/image: https://drive.google.com/file/d/1e81UHz70rSxo2y3SAIrWXjQLRDc5ail0/view 
 
Components: UI>Browser>Navigation
Labels: ReleaseBlock-Stable M-67
Owner: danyao@chromium.org
Status: Assigned (was: Untriaged)

Comment 2 by danyao@chromium.org, Mar 28 2018

Yikes. These are restore_session.html entries that are actually used to restore history after a cold start. They should be hidden from WebStateObservers. Fix on the way.
Project Member

Comment 3 by bugdroid1@chromium.org, Mar 29 2018

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

commit 5524065f1900edf77cd2f18e69851191bb5633e0
Author: Danyao Wang <danyao@google.com>
Date: Thu Mar 29 22:41:25 2018

[Nav Experiment] Rename wk_based_restore_session_util.

This is the first of three CLs to hide restore_session.html navigations
from WebStateObserver. It's a simple refactor to rename
wk_based_restore_session_util to wk_navigation_util.

Bug:  824196 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: Ie1fb82828c8ddc42657d8396d7fb37b364daca9b
Reviewed-on: https://chromium-review.googlesource.com/985144
Reviewed-by: Eugene But <eugenebut@chromium.org>
Commit-Queue: Danyao Wang <danyao@chromium.org>
Cr-Commit-Position: refs/heads/master@{#546993}
[modify] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/BUILD.gn
[modify] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/navigation/BUILD.gn
[modify] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/navigation/navigation_manager_impl.mm
[modify] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/navigation/wk_based_navigation_manager_impl.mm
[modify] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/navigation/wk_based_navigation_manager_impl_unittest.mm
[rename] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/navigation/wk_navigation_util.h
[rename] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/navigation/wk_navigation_util.mm
[rename] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/navigation/wk_navigation_util_unittest.mm
[modify] https://crrev.com/5524065f1900edf77cd2f18e69851191bb5633e0/ios/web/web_state/ui/crw_web_controller.mm

Project Member

Comment 4 by bugdroid1@chromium.org, Mar 30 2018

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

commit 571e6dfece7e71599701cf2733165566c1245c98
Author: Danyao Wang <danyao@google.com>
Date: Fri Mar 30 15:19:10 2018

[Nav Experiment] Remove placeholder_navigation_util.

And merge it with wk_navigation_util. Also add IsWKInternalUrl() helper
to simplify some conditions in crw_web_controller.mm.

This is the second of three CLs to hide restore_session.html navigations
from WebStateObserver. This is a refactor with no functional changes.

Bug:  824196 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I7f4008c9d8bfe2ae3471ff5df522716b263a0388
Reviewed-on: https://chromium-review.googlesource.com/986935
Commit-Queue: Danyao Wang <danyao@chromium.org>
Reviewed-by: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#547161}
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/BUILD.gn
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/navigation/BUILD.gn
[delete] https://crrev.com/2e24ff6ba3a0e52c485d4e15183cd8a54b681ef3/ios/web/navigation/placeholder_navigation_util.h
[delete] https://crrev.com/2e24ff6ba3a0e52c485d4e15183cd8a54b681ef3/ios/web/navigation/placeholder_navigation_util.mm
[delete] https://crrev.com/2e24ff6ba3a0e52c485d4e15183cd8a54b681ef3/ios/web/navigation/placeholder_navigation_util_unittest.mm
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/navigation/wk_based_navigation_manager_impl.mm
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/navigation/wk_navigation_util.h
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/navigation/wk_navigation_util.mm
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/navigation/wk_navigation_util_unittest.mm
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/web_state/ui/crw_web_controller.mm
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/web_state/web_state_impl.mm
[modify] https://crrev.com/571e6dfece7e71599701cf2733165566c1245c98/ios/web/web_state/web_state_impl_unittest.mm

Project Member

Comment 5 by bugdroid1@chromium.org, Mar 30 2018

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

commit 3b3d4abb31a795df25a53e95f7de26802c7266fa
Author: Danyao Wang <danyao@google.com>
Date: Fri Mar 30 15:29:13 2018

[Nav Experiment] Hide restore_session URL from WebStateObserver.

This fixes the bug where restore_session.html URL is exposed in
Menu > History.

Bug:  824196 
Cq-Include-Trybots: master.tryserver.chromium.mac:ios-simulator-cronet;master.tryserver.chromium.mac:ios-simulator-full-configs
Change-Id: I70e7d180d12a008fdb21304fe8232a954ead92e7
Reviewed-on: https://chromium-review.googlesource.com/986979
Commit-Queue: Danyao Wang <danyao@chromium.org>
Reviewed-by: Eugene But <eugenebut@chromium.org>
Cr-Commit-Position: refs/heads/master@{#547166}
[modify] https://crrev.com/3b3d4abb31a795df25a53e95f7de26802c7266fa/ios/web/web_state/web_state_impl.mm

Comment 6 by danyao@chromium.org, Mar 30 2018

Status: Fixed (was: Assigned)
Status: Verified (was: Fixed)
Verified on chrome canary version 67.0.3387.0 on iPhone 8 plus and iPad Air with iOS 11.2.6, 11.3  beta 6 following steps mentioned in comment #0.  Valid navigational history is displayed in chrome history.  Looks good.

Sign in to add a comment