[Webkit-unassigned] [Bug 198993] [Curl] CurlRequestScheduler doesn't terminate worker thread in a certain situation.
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Jun 19 20:54:18 PDT 2019
https://bugs.webkit.org/show_bug.cgi?id=198993
--- Comment #6 from Takashi Komori <Takashi.Komori at sony.com> ---
(In reply to Fujii Hironori from comment #2)
> (In reply to Takashi Komori from comment #0)
> > When calling CurlRequest::didReceiveData task is not processed properly, a
> > paused connection could remain.
>
> Why can it remain?
>
> > In this case CurlRequestScheduler never releases the client related to it.
>
> Really? It seems that CurlRequestScheduler calls completeTransfer.
To be precise, the task added by didreceiveData is not processed properly.
And when that task is not processed, the connection rmains paused.
CurlRequest::didReceiveData (PAUSE)
CurlRequest::invokeDidReceiveResponse
|
| (Add task by using callClient)
|
NetworkDataTaskCurl::curlDidReceiveResponse
NetworkDataTaskCurl::invokeDidReceiveResponse
CurlRequest::completeDidReceiveResponse (UNPAUSE)
CrrlRequest::didCompleteTransfer
In this case, paused connection won't return CURLMSG_DONE message and CurlRequestScheduler::completeTransfer will not be invoked.
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20190620/82192b0c/attachment-0001.html>
More information about the webkit-unassigned
mailing list