<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>186370</bug_id>
          
          <creation_ts>2018-06-06 16:32:50 -0700</creation_ts>
          <short_desc>Crash in lambda function WTF::Function&lt;void ()&gt;::CallableWrapper&lt;WebKit::DisplayLink::displayLinkCallback</short_desc>
          <delta_ts>2018-06-06 17:42:49 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Per Arne Vollan">pvollan</reporter>
          <assigned_to name="Per Arne Vollan">pvollan</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>commit-queue</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1430620</commentid>
    <comment_count>0</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-06-06 16:32:50 -0700</bug_when>
    <thetext>Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib        	0x00007fff6665e1be __abort_with_payload + 10
1   libsystem_kernel.dylib        	0x00007fff66658202 abort_with_payload_wrapper_internal + 82
2   libsystem_kernel.dylib        	0x00007fff666581b0 abort_with_reason + 22
3   libobjc.A.dylib               	0x00007fff6557c63b _objc_fatalv(unsigned long long, unsigned long long, char const*, __va_list_tag*) + 108
4   libobjc.A.dylib               	0x00007fff6557c4fd _objc_fatal(char const*, ...) + 127
5   libobjc.A.dylib               	0x00007fff6557ffd1 checkIsKnownClass(objc_class*) + 52
6   libobjc.A.dylib               	0x00007fff6556cd9b lookUpImpOrForward + 116
7   libobjc.A.dylib               	0x00007fff6556c894 _objc_msgSend_uncached + 68
8   com.apple.WebKit              	0x00007fff48392a8b WTF::Function&lt;void ()&gt;::CallableWrapper&lt;WebKit::DisplayLink::displayLinkCallback(__CVDisplayLink*, CVTimeStamp const*, CVTimeStamp const*, unsigned long long, unsigned long long*, void*)::$_0&gt;::~CallableWrapper() + 39
9   com.apple.JavaScriptCore      	0x00007fff3c993917 WTF::dispatchFunctionsFromMainThread() + 263
10  com.apple.Foundation          	0x00007fff3b6ff0a4 __NSThreadPerformPerform + 325
11  com.apple.CoreFoundation      	0x00007fff392ea69e __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
12  com.apple.CoreFoundation      	0x00007fff3938bada __CFRunLoopDoSource0 + 108
13  com.apple.CoreFoundation      	0x00007fff392d0d8b __CFRunLoopDoSources0 + 228
14  com.apple.CoreFoundation      	0x00007fff392d030f __CFRunLoopRun + 1246
15  com.apple.CoreFoundation      	0x00007fff392cfc0d CFRunLoopRunSpecific + 510
16  com.apple.HIToolbox           	0x00007fff3856ff4d RunCurrentEventLoopInMode + 293
17  com.apple.HIToolbox           	0x00007fff3856fc87 ReceiveNextEventCommon + 618
18  com.apple.HIToolbox           	0x00007fff3856fa04 _BlockUntilNextEventMatchingListInModeWithFilter + 64
19  com.apple.AppKit              	0x00007fff368b8dd2 _DPSNextEvent + 1000
20  com.apple.AppKit              	0x00007fff36ff6f48 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1356
21  com.apple.Safari.framework    	0x00007fff5d48575a -[BrowserApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 273
22  com.apple.AppKit              	0x00007fff368ae66e -[NSApplication run] + 699
23  com.apple.AppKit              	0x00007fff3687e87a NSApplicationMain + 780
24  libdyld.dylib                 	0x00007fff664f0f44 0x7fff664f0000 + 3908</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1430621</commentid>
    <comment_count>1</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-06-06 16:34:48 -0700</bug_when>
    <thetext>&lt;rdar://problem/40439109&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1430627</commentid>
    <comment_count>2</comment_count>
      <attachid>342095</attachid>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-06-06 16:47:12 -0700</bug_when>
    <thetext>Created attachment 342095
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1430629</commentid>
    <comment_count>3</comment_count>
      <attachid>342095</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2018-06-06 16:50:39 -0700</bug_when>
    <thetext>Comment on attachment 342095
Patch

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

r=me, if EWS is satisfied.

&gt; Source/WebKit/UIProcess/mac/DisplayLink.cpp:101
&gt; +    RunLoop::main().dispatch([weakPtr = webPageProxy-&gt;createWeakPtr()] {

You should be able to use &quot;weakPtr = makeWeakPtr(*webPageProxy)&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1430638</commentid>
    <comment_count>4</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-06-06 17:17:04 -0700</bug_when>
    <thetext>(In reply to Brent Fulgham from comment #3)
&gt; Comment on attachment 342095 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=342095&amp;action=review
&gt; 
&gt; r=me, if EWS is satisfied.
&gt; 
&gt; &gt; Source/WebKit/UIProcess/mac/DisplayLink.cpp:101
&gt; &gt; +    RunLoop::main().dispatch([weakPtr = webPageProxy-&gt;createWeakPtr()] {
&gt; 
&gt; You should be able to use &quot;weakPtr = makeWeakPtr(*webPageProxy)&quot;

It seems the WebPageProxy class does not have the method weakPtrFactory() which appears to be needed to do this.

Thanks for reviewing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1430640</commentid>
    <comment_count>5</comment_count>
    <who name="Per Arne Vollan">pvollan</who>
    <bug_when>2018-06-06 17:21:13 -0700</bug_when>
    <thetext>&lt;rdar://problem/39791647&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1430646</commentid>
    <comment_count>6</comment_count>
      <attachid>342095</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-06-06 17:42:48 -0700</bug_when>
    <thetext>Comment on attachment 342095
Patch

Clearing flags on attachment: 342095

Committed r232564: &lt;https://trac.webkit.org/changeset/232564&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1430647</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-06-06 17:42:49 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>342095</attachid>
            <date>2018-06-06 16:47:12 -0700</date>
            <delta_ts>2018-06-06 17:42:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-186370-20180606164711.patch</filename>
            <type>text/plain</type>
            <size>2629</size>
            <attacher name="Per Arne Vollan">pvollan</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzI1NDMpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIzIEBACisyMDE4LTA2LTA2ICBQZXIgQXJuZSBW
b2xsYW4gIDxwdm9sbGFuQGFwcGxlLmNvbT4KKworICAgICAgICBDcmFzaCBpbiBsYW1iZGEgZnVu
Y3Rpb24gV1RGOjpGdW5jdGlvbjx2b2lkICgpPjo6Q2FsbGFibGVXcmFwcGVyPFdlYktpdDo6RGlz
cGxheUxpbms6OmRpc3BsYXlMaW5rQ2FsbGJhY2sKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NjM3MAorICAgICAgICA8cmRhcjovL3Byb2JsZW0vMzk3
OTE2NDc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
V2hlbiB0aGUgZGlzcGxheSBsaW5rIGlzIGZpcmluZywgdGhlIGNhbGxiYWNrIGZ1bmN0aW9uIGlz
IGNhbGxlZCBvbiB0aGUgZGlzcGxheSBsaW5rIHRocmVhZCwgd2hlcmUgYSBsYW1iZGEgZnVuY3Rp
b24KKyAgICAgICAgaXMgY3JlYXRlZCB0byBiZSBleGVjdXRlZCBvbiB0aGUgbWFpbiB0aHJlYWQu
IFRoZSBXZWJQYWdlUHJveHkgb2JqZWN0IGlzIGNhcHR1cmVkIGFzIGEgUmVmUHRyIGluIHRoZSBs
YW1iZGEuIFRoaXMKKyAgICAgICAgbWlnaHQgY3Jhc2ggd2hlbiBleGVjdXRpbmcgb24gdGhlIG1h
aW4gdGhyZWFkLCBzaW5jZSB0aGUgV2ViUGFnZVByb3h5IG9iamVjdCBpcyBwb3NzaWJseSBkZWxl
dGVkIHRoZW4uIENhcHR1cmluZworICAgICAgICB0aGUgV2ViUGFnZVByb3h5IHdpbGwgbm90IHBy
ZXZlbnQgdGhlIG9iamVjdCBmcm9tIGJlaW5nIGRlbGV0ZWQgaWYgdGhlIGRlc3RydWN0aW9uIG9m
IHRoZSBXZWJQYWdlUHJveHkgb2JqZWN0IGFscmVhZHkKKyAgICAgICAgaGFzIHN0YXJ0ZWQgb24g
dGhlIG1haW4gdGhyZWFkIHdoZW4gdGhlIG9iamVjdCBpcyBjYXB0dXJlZCwgd2hpY2ggc29tZXRp
bWVzIGlzIHRoZSBjYXNlLiBJbnN0ZWFkLCB3ZSBjYW4gY3JlYXRlIGEKKyAgICAgICAgd2VhayBw
b2ludGVyIHRvIHRoZSBvYmplY3QsIHdoaWNoIHdpbGwgd29yayBhcyBpbnRlbmRlZCwgZXZlbiBp
ZiB0aGUgV2ViUGFnZVByb3h5IG9iamVjdCBpcyBpbiB0aGUgcHJvY2VzcyBvZiBiZWluZworICAg
ICAgICBkZWxldGVkLiBUaGlzIGFsc28gbWF0Y2hlcyB0aGUgZGlzcGxheSBsaW5rIGltcGxlbWVu
dGF0aW9uIHVzZWQgd2hlbiB0aGUgV2ViQ29udGVudCBwcm9jZXNzIGhhcyBhY2Nlc3MgdG8gdGhl
CisgICAgICAgIFdpbmRvd1NlcnZlci4gVGhpcyBpcyBub3QgYSBmcmVxdWVudCBjcmFzaC4gSSBo
YXZlIG5vdCBiZWVuIGFibGUgdG8gcmVwcm9kdWNlIGl0LgorIAorICAgICAgICAqIFVJUHJvY2Vz
cy9tYWMvRGlzcGxheUxpbmsuY3BwOgorICAgICAgICAoV2ViS2l0OjpEaXNwbGF5TGluazo6ZGlz
cGxheUxpbmtDYWxsYmFjayk6CisKIDIwMTgtMDYtMDUgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xs
YW5AYXBwbGUuY29tPgogCiAgICAgICAgIE1vdmUgT3BlbkdMIGRpc3BsYXkgbWFzayB0byBzY3Jl
ZW4gZGF0YSBzdHJ1Y3QuCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvRGlzcGxh
eUxpbmsuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9EaXNw
bGF5TGluay5jcHAJKHJldmlzaW9uIDIzMjU0MykKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L21hYy9EaXNwbGF5TGluay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk4LDggKzk4LDkgQEAgdm9p
ZCBEaXNwbGF5TGluazo6cmVzdW1lKCkKIENWUmV0dXJuIERpc3BsYXlMaW5rOjpkaXNwbGF5TGlu
a0NhbGxiYWNrKENWRGlzcGxheUxpbmtSZWYgZGlzcGxheUxpbmtSZWYsIGNvbnN0IENWVGltZVN0
YW1wKiwgY29uc3QgQ1ZUaW1lU3RhbXAqLCBDVk9wdGlvbkZsYWdzLCBDVk9wdGlvbkZsYWdzKiwg
dm9pZCogZGF0YSkKIHsKICAgICBXZWJQYWdlUHJveHkqIHdlYlBhZ2VQcm94eSA9IHJlaW50ZXJw
cmV0X2Nhc3Q8V2ViUGFnZVByb3h5Kj4oZGF0YSk7Ci0gICAgY2FsbE9uTWFpblRocmVhZChbd2Vi
UGFnZVByb3h5ID0gbWFrZVJlZlB0cih3ZWJQYWdlUHJveHkpXSB7Ci0gICAgICAgIHdlYlBhZ2VQ
cm94eS0+cHJvY2VzcygpLnNlbmQoTWVzc2FnZXM6OkRyYXdpbmdBcmVhOjpEaXNwbGF5V2FzUmVm
cmVzaGVkKCksIHdlYlBhZ2VQcm94eS0+cGFnZUlEKCkpOworICAgIFJ1bkxvb3A6Om1haW4oKS5k
aXNwYXRjaChbd2Vha1B0ciA9IHdlYlBhZ2VQcm94eS0+Y3JlYXRlV2Vha1B0cigpXSB7CisgICAg
ICAgIGlmIChhdXRvKiBwcm94eSA9IHdlYWtQdHIuZ2V0KCkpCisgICAgICAgICAgICBwcm94eS0+
cHJvY2VzcygpLnNlbmQoTWVzc2FnZXM6OkRyYXdpbmdBcmVhOjpEaXNwbGF5V2FzUmVmcmVzaGVk
KCksIHByb3h5LT5wYWdlSUQoKSk7CiAgICAgfSk7CiAgICAgcmV0dXJuIGtDVlJldHVyblN1Y2Nl
c3M7CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>