<?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>148529</bug_id>
          
          <creation_ts>2015-08-27 09:42:59 -0700</creation_ts>
          <short_desc>REGRESSION(r188548): Some tests crash after r188548 because injected bundle messages are received after the test finishes</short_desc>
          <delta_ts>2015-09-07 04:37:26 -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>Tools / Tests</component>
          <version>WebKit Local 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>Regression</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>148528</dependson>
          <blocked>148093</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>darin</cc>
    
    <cc>ossy</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1121323</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-08-27 09:42:59 -0700</bug_when>
    <thetext>1   0x431b17 bin/WebKitTestRunner(WTFCrash+0x17) [0x431b17]
2   0x430bed bin/WebKitTestRunner(_ZN3WTR16EventSenderProxy17releaseTouchPointEi+0x18d) [0x430bed]
3   0x424f08 bin/WebKitTestRunner(_ZN3WTR14TestController46didReceiveSynchronousMessageFromInjectedBundleEPK14OpaqueWKStringPKv+0x6d8) [0x424f08]
4   0x424fa9 bin/WebKitTestRunner(_ZN3WTR14TestController50didReceiveSynchronousPageMessageFromInjectedBundleEPK12OpaqueWKPagePK14OpaqueWKStringPKvPS8_S8_+0x19) [0x424fa9]
5   0x7f5ae50ed886 /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN6WebKit27WebPageInjectedBundleClient46didReceiveSynchronousMessageFromInjectedBundleEPNS_12WebPageProxyERKN3WTF6StringEPN3API6ObjectERNS3_6RefPtrIS8_EE+0xb6) [0x7f5ae50ed886]
6   0x7f5ae50f3f5d /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN6WebKit12WebPageProxy24handleSynchronousMessageERN3IPC10ConnectionERKN3WTF6StringERKNS_8UserDataERS8_+0x7d) [0x7f5ae50f3f5d]
7   0x7f5ae5302608 /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN6WebKit12WebPageProxy21didReceiveSyncMessageERN3IPC10ConnectionERNS1_14MessageDecoderERSt10unique_ptrINS1_14MessageEncoderESt14default_deleteIS7_EE+0x12f8) [0x7f5ae5302608]
8   0x7f5ae506f5d1 /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN3IPC18MessageReceiverMap19dispatchSyncMessageERNS_10ConnectionERNS_14MessageDecoderERSt10unique_ptrINS_14MessageEncoderESt14default_deleteIS6_EE+0x2b1) [0x7f5ae506f5d1]
9   0x7f5ae512391b /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN6WebKit15WebProcessProxy21didReceiveSyncMessageERN3IPC10ConnectionERNS1_14MessageDecoderERSt10unique_ptrINS1_14MessageEncoderESt14default_deleteIS7_EE+0x1b) [0x7f5ae512391b]
10  0x7f5ae506b5fb /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN3IPC10Connection19dispatchSyncMessageERNS_14MessageDecoderE+0x1cb) [0x7f5ae506b5fb]
11  0x7f5ae506b6ed /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN3IPC10Connection15dispatchMessageESt10unique_ptrINS_14MessageDecoderESt14default_deleteIS2_EE+0xdd) [0x7f5ae506b6ed]
12  0x7f5ae506c0d3 /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN3IPC10Connection18dispatchOneMessageEv+0xd3) [0x7f5ae506c0d3]
13  0x7f5ae67142cf /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN3WTF7RunLoop11performWorkEv+0x3ef) [0x7f5ae67142cf]
14  0x4735b5 bin/WebKitTestRunner(_ZN3WTF15GMainLoopSource12voidCallbackEv+0x295) [0x4735b5]
15  0x471b6a bin/WebKitTestRunner(_ZN3WTF15GMainLoopSource18voidSourceCallbackEPS0_+0xa) [0x471b6a]
16  0x7f5ae1f8abdd /home/cgarcia/gnome/lib/libglib-2.0.so.0(g_main_context_dispatch+0x13d) [0x7f5ae1f8abdd]
17  0x7f5ae1f8af78 /home/cgarcia/gnome/lib/libglib-2.0.so.0(+0x48f78) [0x7f5ae1f8af78]
18  0x7f5ae1f8b292 /home/cgarcia/gnome/lib/libglib-2.0.so.0(g_main_loop_run+0xc2) [0x7f5ae1f8b292]
19  0x7f5ae67193e0 /home/cgarcia/src/git/gnome/WebKit/WebKitBuild/Release/lib/libwebkit2gtk-4.0.so.37(_ZN3WTF7RunLoop3runEv+0x120) [0x7f5ae67193e0]
20  0x42ee4f bin/WebKitTestRunner(_ZN3WTR14TestController16platformRunUntilERbd+0xbf) [0x42ee4f]
21  0x422db4 bin/WebKitTestRunner(_ZN3WTR14TestController28resetStateToConsistentValuesEv+0x2f4) [0x422db4]
22  0x42baa5 bin/WebKitTestRunner(_ZN3WTR14TestInvocation6invokeEv+0x375) [0x42baa5]
23  0x423b89 bin/WebKitTestRunner(_ZN3WTR14TestController7runTestEPKc+0xb9) [0x423b89]
24  0x4278b4 bin/WebKitTestRunner(_ZN3WTR14TestControllerC1EiPPKc+0x1f4) [0x4278b4]
25  0x41dee6 bin/WebKitTestRunner(main+0x56) [0x41dee6]
26  0x7f5ada630b45 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7f5ada630b45]
27  0x41df68 bin/WebKitTestRunner() [0x41df68]

This happens for example with fast/events/touch/inserted-fragment-touch-target.html because it does:

eventSender.addTouchPoint(x, y);
eventSender.touchStart();
eventSender.releaseTouchPoint(0);
eventSender.touchEnd();

The test adds a listener to touchstart from which calls notifyDone(). Then the tests finishes and resetStateToConsistentValues() is called. This creates a new EventSenderProxy and then load about:blank. When loading abpout:blank the run loop starts again and it processes the injected bundle message for the js calls after the touchStart, releaseTouchPoint and touchEnd, but those are processed by the new EvenSenderProxy, and in this case releaseTouchPoint crashes because this new event sender doesn&apos;t have any touch event to process. I&apos;ve added early returns when receiving injected bundle messages for the event sender when the test is not running and it fixes the crash, but I&apos;m not sure if that&apos;s the right fix or just a workaround. This depends on bug #148528.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1121628</commentid>
    <comment_count>1</comment_count>
      <attachid>260135</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-08-28 01:06:04 -0700</bug_when>
    <thetext>Created attachment 260135
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1122810</commentid>
    <comment_count>2</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2015-09-02 05:12:40 -0700</bug_when>
    <thetext>Committed r189246: &lt;http://trac.webkit.org/changeset/189246&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>260135</attachid>
            <date>2015-08-28 01:06:04 -0700</date>
            <delta_ts>2015-08-31 19:17:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>wtr-event-sender-messages-resseting.diff</filename>
            <type>text/plain</type>
            <size>2544</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBkMzI2
NDIxLi5iM2E0YjFkIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjIgQEAKKzIwMTUtMDgtMjggIENhcmxvcyBHYXJjaWEgQ2FtcG9z
ICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgorCisgICAgICAgIFJFR1JFU1NJT04ocjE4ODU0OCk6IFNv
bWUgdGVzdHMgY3Jhc2ggYWZ0ZXIgcjE4ODU0OCBiZWNhdXNlIGluamVjdGVkIGJ1bmRsZSBtZXNz
YWdlcyBhcmUgcmVjZWl2ZWQgYWZ0ZXIgdGhlIHRlc3QgZmluaXNoZXMKKyAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODUyOQorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gdGhlcmUgYXJlIHBlbmRpbmcg
RXZlbnRTZW5kZXIgbWVzc2FnZXMgYWZ0ZXIgYSB0ZXN0IGZpbmlzaGVzLAorICAgICAgICB0aGV5
IGNvdWxkIGJlIHByb2Nlc3NlZCBpbiB0aGUgbWFpbiBsb29wIHN0YXJ0ZWQgYnkgdGhlCisgICAg
ICAgIHJlc2V0U3RhdGVUb0NvbnNpc3RlbnRWYWx1ZXMoKSwgYnV0IHRoZSBvbGQgRXZlbnRTZW5k
ZXIgaGFzIGJlZW4KKyAgICAgICAgcmVwbGFjZWQgYnkgYSBuZXcgb25lIGF0IHRoYXQgcG9pbnQu
IFRoZSBuZXcgRXZlbnRzZW5kZXIgY2FuIGNyYXNoCisgICAgICAgIHdoZW4gcHJvY2Vzc2luZyBt
ZXNzYWdlcyB0aGF0IHdlcmUgc2VudCB0byB0aGUgb2xkIG9uZS4gVG8gYXZvaWQKKyAgICAgICAg
dGhpcywgd2UgcmV0dXJuIGVhcmx5IHdoZW4gcmVjZWl2aW5nIGFuIEV2ZW50U2VuZGVyIG1lc3Nh
Z2UgYW5kCisgICAgICAgIHRoZSBUZXN0Q29udHJvbGxlciBzdGF0ZSBpcyBub3QgUnVubmluZ1Rl
c3QuCisKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAg
ICAgICAgKFdUUjo6VGVzdENvbnRyb2xsZXI6OmRpZFJlY2VpdmVLZXlEb3duTWVzc2FnZUZyb21J
bmplY3RlZEJ1bmRsZSk6CisgICAgICAgIChXVFI6OlRlc3RDb250cm9sbGVyOjpkaWRSZWNlaXZl
TWVzc2FnZUZyb21JbmplY3RlZEJ1bmRsZSk6CisKIDIwMTUtMDgtMjcgIENhcmxvcyBHYXJjaWEg
Q2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjE4ODU0
OCk6IFRlc3RDb250cm9sbGVyIHN0YXRlIGlzIFJlc3NldGluZyB3aGlsZSB0ZXN0cyBhcmUgcnVu
bmluZyBhZnRlciByMTg4NTQ4CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rl
c3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIu
Y3BwCmluZGV4IDFlNWYyNjkuLjhmZmRkNmUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVz
dENvbnRyb2xsZXIuY3BwCkBAIC0xMDEwLDYgKzEwMTAsOSBAQCB2b2lkIFRlc3RDb250cm9sbGVy
OjpkaWRSZWNlaXZlS2V5RG93bk1lc3NhZ2VGcm9tSW5qZWN0ZWRCdW5kbGUoV0tEaWN0aW9uYXJ5
UmVmCiB2b2lkIFRlc3RDb250cm9sbGVyOjpkaWRSZWNlaXZlTWVzc2FnZUZyb21JbmplY3RlZEJ1
bmRsZShXS1N0cmluZ1JlZiBtZXNzYWdlTmFtZSwgV0tUeXBlUmVmIG1lc3NhZ2VCb2R5KQogewog
ICAgIGlmIChXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nKG1lc3NhZ2VOYW1lLCAiRXZlbnRT
ZW5kZXIiKSkgeworICAgICAgICBpZiAobV9zdGF0ZSAhPSBSdW5uaW5nVGVzdCkKKyAgICAgICAg
ICAgIHJldHVybjsKKwogICAgICAgICBBU1NFUlQoV0tHZXRUeXBlSUQobWVzc2FnZUJvZHkpID09
IFdLRGljdGlvbmFyeUdldFR5cGVJRCgpKTsKICAgICAgICAgV0tEaWN0aW9uYXJ5UmVmIG1lc3Nh
Z2VCb2R5RGljdGlvbmFyeSA9IHN0YXRpY19jYXN0PFdLRGljdGlvbmFyeVJlZj4obWVzc2FnZUJv
ZHkpOwogCkBAIC0xMDgwLDYgKzEwODMsOSBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjpkaWRSZWNl
aXZlTWVzc2FnZUZyb21JbmplY3RlZEJ1bmRsZShXS1N0cmluZ1JlZiBtZXNzYWdlTmFtZQogV0tS
ZXRhaW5QdHI8V0tUeXBlUmVmPiBUZXN0Q29udHJvbGxlcjo6ZGlkUmVjZWl2ZVN5bmNocm9ub3Vz
TWVzc2FnZUZyb21JbmplY3RlZEJ1bmRsZShXS1N0cmluZ1JlZiBtZXNzYWdlTmFtZSwgV0tUeXBl
UmVmIG1lc3NhZ2VCb2R5KQogewogICAgIGlmIChXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5n
KG1lc3NhZ2VOYW1lLCAiRXZlbnRTZW5kZXIiKSkgeworICAgICAgICBpZiAobV9zdGF0ZSAhPSBS
dW5uaW5nVGVzdCkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOworCiAgICAgICAgIEFTU0VS
VChXS0dldFR5cGVJRChtZXNzYWdlQm9keSkgPT0gV0tEaWN0aW9uYXJ5R2V0VHlwZUlEKCkpOwog
ICAgICAgICBXS0RpY3Rpb25hcnlSZWYgbWVzc2FnZUJvZHlEaWN0aW9uYXJ5ID0gc3RhdGljX2Nh
c3Q8V0tEaWN0aW9uYXJ5UmVmPihtZXNzYWdlQm9keSk7CiAK
</data>
<flag name="review"
          id="285328"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>