Changeset 233032 in webkit


Ignore:
Timestamp:
Jun 21, 2018 2:54:30 AM (6 years ago)
Author:
Fujii Hironori
Message:

[GTK] http/tests/misc/bubble-drag-events.html crashes
https://bugs.webkit.org/show_bug.cgi?id=182352

Reviewed by Carlos Garcia Campos.

Source/WebKit:

PingLoad::didFinish was called twice if it is used with
NetworkDataTaskSoup. PingLoad is not a ref-counted object. It is
destructed when PingLoad::didFinish is called.

PingLoad::didReceiveChallenge calls the ChallengeCompletionHandler
with AuthenticationChallengeDisposition::Cancel to cancel the
challenge and calls PingLoad::didFinish.

NetworkDataTaskSoup::continueAuthenticate calls
didReceiveChallenge with a ChallengeCompletionHandler which calls
didCompleteWithError. PingLoad::didCompleteWithError calls
PingLoad::didFinish.

didCompleteWithError callback should not be called in the
ChallengeCompletionHandler.

  • NetworkProcess/soup/NetworkDataTaskSoup.cpp:

(WebKit::NetworkDataTaskSoup::continueAuthenticate): Do not call
didFail() in the ChallengeCompletionHandler. Call
invalidateAndCancel() instead.

LayoutTests:

  • platform/gtk/TestExpectations:

Marked http/tests/misc/bubble-drag-events.html as [ Failure ] not
[ Failure Timeout Crash ].
Unmarked http/tests/misc/cached-scripts.html.

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r233031 r233032  
     12018-06-21  Fujii Hironori  <Hironori.Fujii@sony.com>
     2
     3        [GTK] http/tests/misc/bubble-drag-events.html crashes
     4        https://bugs.webkit.org/show_bug.cgi?id=182352
     5
     6        Reviewed by Carlos Garcia Campos.
     7
     8        * platform/gtk/TestExpectations:
     9        Marked http/tests/misc/bubble-drag-events.html as [ Failure ] not
     10        [ Failure Timeout Crash ].
     11        Unmarked http/tests/misc/cached-scripts.html.
     12
    1132018-06-21  Zan Dobersek  <zdobersek@igalia.com>
    214
  • trunk/LayoutTests/platform/gtk/TestExpectations

    r233017 r233032  
    12971297webkit.org/b/186767 fast/hidpi/broken-image-icon-very-hidpi.html [ Crash Pass ]
    12981298
    1299 # This one crashes only on EWS.
    1300 webkit.org/b/186778 http/tests/misc/cached-scripts.html [ Crash Pass ]
    1301 
    13021299webkit.org/b/186779 http/tests/security/sandboxed-iframe-DENIED-modals.html [ Crash Pass ]
    13031300
     
    26632660Bug(GTK) http/tests/security/drag-over-remote-content-iframe.html [ Failure ]
    26642661Bug(GTK) fast/events/drag-in-frames.html [ Failure Timeout ]
    2665 webkit.org/b/182352 http/tests/misc/bubble-drag-events.html [ Failure Timeout Crash ]
     2662webkit.org/b/182352 http/tests/misc/bubble-drag-events.html [ Failure ]
    26662663
    26672664# Dragging images and links results in a DataTransfer object containing a non-empty files array
  • trunk/Source/WebKit/ChangeLog

    r233025 r233032  
     12018-06-21  Fujii Hironori  <Hironori.Fujii@sony.com>
     2
     3        [GTK] http/tests/misc/bubble-drag-events.html crashes
     4        https://bugs.webkit.org/show_bug.cgi?id=182352
     5
     6        Reviewed by Carlos Garcia Campos.
     7
     8        PingLoad::didFinish was called twice if it is used with
     9        NetworkDataTaskSoup. PingLoad is not a ref-counted object. It is
     10        destructed when PingLoad::didFinish is called.
     11
     12        PingLoad::didReceiveChallenge calls the ChallengeCompletionHandler
     13        with AuthenticationChallengeDisposition::Cancel to cancel the
     14        challenge and calls PingLoad::didFinish.
     15
     16        NetworkDataTaskSoup::continueAuthenticate calls
     17        didReceiveChallenge with a ChallengeCompletionHandler which calls
     18        didCompleteWithError. PingLoad::didCompleteWithError calls
     19        PingLoad::didFinish.
     20
     21        didCompleteWithError callback should not be called in the
     22        ChallengeCompletionHandler.
     23
     24        * NetworkProcess/soup/NetworkDataTaskSoup.cpp:
     25        (WebKit::NetworkDataTaskSoup::continueAuthenticate): Do not call
     26        didFail() in the ChallengeCompletionHandler. Call
     27        invalidateAndCancel() instead.
     28
    1292018-06-20  Wenson Hsieh  <wenson_hsieh@apple.com>
    230
  • trunk/Source/WebKit/NetworkProcess/soup/NetworkDataTaskSoup.cpp

    r231008 r233032  
    529529
    530530        if (disposition == AuthenticationChallengeDisposition::Cancel) {
    531             cancel();
    532             didFail(cancelledError(m_soupRequest.get()));
     531            invalidateAndCancel();
    533532            return;
    534533        }
Note: See TracChangeset for help on using the changeset viewer.