Allow loading other pages if current page is SSL interstitial.
commit091f125aeb51eaf19275575c29b1dd13812ecfca
authoreugenebut <eugenebut@chromium.org>
Tue, 25 Aug 2015 15:32:03 +0000 (25 08:32 -0700)
committerCommit bot <commit-bot@chromium.org>
Tue, 25 Aug 2015 15:32:33 +0000 (25 15:32 +0000)
tree7726bf718704fbec1b076c0a7f73576deabfa0e3
parente7e901b0e4d96bc629e0ce6223a284c4a5dec498
Allow loading other pages if current page is SSL interstitial.

Before this change there was no way to load other pages (f.e. using
omnibox, or invoking history) if current page was SSL interstitial,
except after going back. The reason is that |clearTransientContentView|
was called after adding a pending nav item for the new site, as a result
pending item was discarded as a part of removing transient content view.

Marking nav item with bad SSL cert as Unsafe and calling
|clearTransientContentView| before adding a pending item causes removal
of 'unsafe' item as well as alows loading newly added pending item.

BUG=430090

Review URL: https://codereview.chromium.org/1291863004

Cr-Commit-Position: refs/heads/master@{#345330}
ios/web/navigation/crw_session_controller.mm
ios/web/web_state/ui/crw_web_controller.mm
ios/web/web_state/web_state_impl.mm