• Danyao Wang's avatar
    [Nav Experiment] Fix error retry state corruption for WebErrorPages. · 268a40ff
    Danyao Wang authored
    When an error page is displayed in web view, the error retry state of
    the navigation item is never transitioned to
    kDisplayingWebErrorForFailedNavigation. This does not prevent the
    displaying of error page on the first failure, but subsequent back-
    forward navigation to this item starts with the incorrect state and
    can result in DCHECKs of unexpected error state, error view not
    being loaded and poor interaction with other types of errors, such as
    SSL interstitial.
    
    This CL refactors the state transitions for WebErrorPages so it is
    handled identically to native error. This also required web error
    load to not skip DidFinishNavigation callback to correctly update
    the ErrorRetryStateMachine.
    
    Also parameterized error_page_inttest.mm so both navigation manager
    implementations are tested on trybots.
    
    Bug: 837210
    Cq-Include-Trybots: luci.chromium.try:ios-simulator-full-configs;master.tryserver.chromium.mac:ios-simulator-cronet
    Change-Id: I4f63c3c9bae21158deb705a3da5ed3eeab59a8bb
    Reviewed-on: https://chromium-review.googlesource.com/1151542
    Commit-Queue: Danyao Wang <danyao@chromium.org>
    Reviewed-by: default avatarKurt Horimoto <kkhorimoto@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#578853}
    268a40ff
error_page_inttest.mm 10.9 KB