[webkit-reviews] review granted: [Bug 197893] [WK2][iOS] UIProcess may get killed because it is taking too long to release its background task after expiration : [Attachment 369894] Patch

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed May 15 07:42:03 PDT 2019


Alex Christensen <achristensen at apple.com> has granted Chris Dumez
<cdumez at apple.com>'s request for review:
Bug 197893: [WK2][iOS] UIProcess may get killed because it is taking too long
to release its background task after expiration
https://bugs.webkit.org/show_bug.cgi?id=197893

Attachment 369894: Patch

https://bugs.webkit.org/attachment.cgi?id=369894&action=review




--- Comment #4 from Alex Christensen <achristensen at apple.com> ---
Comment on attachment 369894
  --> https://bugs.webkit.org/attachment.cgi?id=369894
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=369894&action=review

r=me

> Source/WebKit/ChangeLog:15
> +	   1. Send the ProcessWillSuspendImminently asynchronously so that all
processes can do their processing in parallel

\o/

> Source/WebKit/UIProcess/ios/ProcessAssertionIOS.mm:123
> +    _pendingTaskReleaseTask =
dispatch_block_create((dispatch_block_flags_t)0, ^{

Do we need to do any freeing of this block?  I also don't understand why you
used dispatch_block_create instead of just a BlockPtr and a regular block and
setting it to null when you would've called dispatch_block_cancel below

> Source/WebKit/WebProcess/WebProcess.h:-421
> -    void didReceiveSyncWebProcessMessage(IPC::Connection&, IPC::Decoder&,
std::unique_ptr<IPC::Encoder>&);

\o/


More information about the webkit-reviews mailing list