<?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>170392</bug_id>
          
          <creation_ts>2017-04-02 10:23:51 -0700</creation_ts>
          <short_desc>Share implementation of JSRunLoopTimer::timerDidFire</short_desc>
          <delta_ts>2017-04-02 22:41:40 -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>JavaScriptCore</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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Garcia Campos">cgarcia</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>buildbot</cc>
    
    <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1293537</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-04-02 10:23:51 -0700</bug_when>
    <thetext>The code is cross-platform but it&apos;s duplicated in CF and GLib implementations, it could be shared instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1293539</commentid>
    <comment_count>1</comment_count>
      <attachid>306056</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-04-02 10:26:53 -0700</bug_when>
    <thetext>Created attachment 306056
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1293580</commentid>
    <comment_count>2</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-04-02 22:41:40 -0700</bug_when>
    <thetext>Committed r214732: &lt;http://trac.webkit.org/changeset/214732&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>306056</attachid>
            <date>2017-04-02 10:26:53 -0700</date>
            <delta_ts>2017-04-02 11:01:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>jsc-timers-fired.diff</filename>
            <type>text/plain</type>
            <size>4769</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGY5ODA1ODI2OGE3Li4yZmEzMTM2MDQwYiAxMDA2
NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMjAgQEAKIDIwMTctMDQtMDIgIENhcmxv
cyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29tPgogCisgICAgICAgIFNoYXJlIGlt
cGxlbWVudGF0aW9uIG9mIEpTUnVuTG9vcFRpbWVyOjp0aW1lckRpZEZpcmUKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3MDM5MgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoZSBjb2RlIGlzIGNyb3NzLXBs
YXRmb3JtIGJ1dCBpdCdzIGR1cGxpY2F0ZWQgaW4gQ0YgYW5kIEdMaWIgaW1wbGVtZW50YXRpb25z
LCBpdCBjb3VsZCBiZSBzaGFyZWQgaW5zdGVhZC4KKworICAgICAgICAqIHJ1bnRpbWUvSlNSdW5M
b29wVGltZXIuY3BwOgorICAgICAgICAoSlNDOjpKU1J1bkxvb3BUaW1lcjo6dGltZXJEaWRGaXJl
KTogTW92ZSBjb21tb24gaW1wbGVtZW50YXRpb24gaGVyZS4KKyAgICAgICAgKEpTQzo6SlNSdW5M
b29wVGltZXI6OnNldFJ1bkxvb3ApOiBVc2UgdGltZXJEaWRGaXJlQ2FsbGJhY2suCisgICAgICAg
IChKU0M6OkpTUnVuTG9vcFRpbWVyOjp0aW1lckRpZEZpcmVDYWxsYmFjayk6IENhbGwgSlNSdW5M
b29wVGltZXI6OnRpbWVyRGlkRmlyZSgpLgorICAgICAgICAqIHJ1bnRpbWUvSlNSdW5Mb29wVGlt
ZXIuaDoKKworMjAxNy0wNC0wMiAgQ2FybG9zIEdhcmNpYSBDYW1wb3MgIDxjZ2FyY2lhQGlnYWxp
YS5jb20+CisKICAgICAgICAgSW1wbGVtZW50IFByb21pc2VEZWZlcnJlZFRpbWVyIGZvciBub24g
Q0YgYmFzZWQgcG9ydHMKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTE3MDM5MQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGlt
ZS9KU1J1bkxvb3BUaW1lci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1J1
bkxvb3BUaW1lci5jcHAKaW5kZXggYWZjMTM5MWE2NjIuLmFkM2Y5Zjg0ODA0IDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1J1bkxvb3BUaW1lci5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNSdW5Mb29wVGltZXIuY3BwCkBAIC00MSw2
ICs0MSwyNSBAQAogCiBuYW1lc3BhY2UgSlNDIHsKIAordm9pZCBKU1J1bkxvb3BUaW1lcjo6dGlt
ZXJEaWRGaXJlKCkKK3sKKyAgICBtX2FwaUxvY2stPmxvY2soKTsKKworICAgIFJlZlB0cjxWTT4g
dm0gPSBtX2FwaUxvY2stPnZtKCk7CisgICAgaWYgKCF2bSkgeworICAgICAgICAvLyBUaGUgVk0g
aGFzIGJlZW4gZGVzdHJveWVkLCBzbyB3ZSBzaG91bGQganVzdCBnaXZlIHVwLgorICAgICAgICBt
X2FwaUxvY2stPnVubG9jaygpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgeworICAg
ICAgICBKU0xvY2tIb2xkZXIgbG9ja2VyKHZtLmdldCgpKTsKKyAgICAgICAgZG9Xb3JrKCk7Cisg
ICAgfQorCisgICAgbV9hcGlMb2NrLT51bmxvY2soKTsKK30KKwogI2lmIFVTRShDRikKIAogY29u
c3QgQ0ZUaW1lSW50ZXJ2YWwgSlNSdW5Mb29wVGltZXI6OnNfZGVjYWRlID0gNjAgKiA2MCAqIDI0
ICogMzY1ICogMTA7CkBAIC02NSw3ICs4NCw3IEBAIHZvaWQgSlNSdW5Mb29wVGltZXI6OnNldFJ1
bkxvb3AoQ0ZSdW5Mb29wUmVmIHJ1bkxvb3ApCiAgICAgICAgIG1fcnVuTG9vcCA9IHJ1bkxvb3A7
CiAgICAgICAgIG1lbXNldCgmbV9jb250ZXh0LCAwLCBzaXplb2YoQ0ZSdW5Mb29wVGltZXJDb250
ZXh0KSk7CiAgICAgICAgIG1fY29udGV4dC5pbmZvID0gdGhpczsKLSAgICAgICAgbV90aW1lciA9
IGFkb3B0Q0YoQ0ZSdW5Mb29wVGltZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwgQ0ZBYnNv
bHV0ZVRpbWVHZXRDdXJyZW50KCkgKyBzX2RlY2FkZSwgc19kZWNhZGUsIDAsIDAsIEpTUnVuTG9v
cFRpbWVyOjp0aW1lckRpZEZpcmUsICZtX2NvbnRleHQpKTsKKyAgICAgICAgbV90aW1lciA9IGFk
b3B0Q0YoQ0ZSdW5Mb29wVGltZXJDcmVhdGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwgQ0ZBYnNvbHV0
ZVRpbWVHZXRDdXJyZW50KCkgKyBzX2RlY2FkZSwgc19kZWNhZGUsIDAsIDAsIEpTUnVuTG9vcFRp
bWVyOjp0aW1lckRpZEZpcmVDYWxsYmFjaywgJm1fY29udGV4dCkpOwogICAgICAgICBDRlJ1bkxv
b3BBZGRUaW1lcihtX3J1bkxvb3AuZ2V0KCksIG1fdGltZXIuZ2V0KCksIGtDRlJ1bkxvb3BDb21t
b25Nb2Rlcyk7CiAgICAgfQogfQpAQCAtNzUsMjQgKzk0LDkgQEAgSlNSdW5Mb29wVGltZXI6On5K
U1J1bkxvb3BUaW1lcigpCiAgICAgc2V0UnVuTG9vcCgwKTsKIH0KIAotdm9pZCBKU1J1bkxvb3BU
aW1lcjo6dGltZXJEaWRGaXJlKENGUnVuTG9vcFRpbWVyUmVmLCB2b2lkKiBjb250ZXh0UHRyKQor
dm9pZCBKU1J1bkxvb3BUaW1lcjo6dGltZXJEaWRGaXJlQ2FsbGJhY2soQ0ZSdW5Mb29wVGltZXJS
ZWYsIHZvaWQqIGNvbnRleHRQdHIpCiB7Ci0gICAgSlNSdW5Mb29wVGltZXIqIHRpbWVyID0gc3Rh
dGljX2Nhc3Q8SlNSdW5Mb29wVGltZXIqPihjb250ZXh0UHRyKTsKLSAgICB0aW1lci0+bV9hcGlM
b2NrLT5sb2NrKCk7Ci0KLSAgICBSZWZQdHI8Vk0+IHZtID0gdGltZXItPm1fYXBpTG9jay0+dm0o
KTsKLSAgICBpZiAoIXZtKSB7Ci0gICAgICAgIC8vIFRoZSBWTSBoYXMgYmVlbiBkZXN0cm95ZWQs
IHNvIHdlIHNob3VsZCBqdXN0IGdpdmUgdXAuCi0gICAgICAgIHRpbWVyLT5tX2FwaUxvY2stPnVu
bG9jaygpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgewotICAgICAgICBKU0xvY2tI
b2xkZXIgbG9ja2VyKHZtLmdldCgpKTsKLSAgICAgICAgdGltZXItPmRvV29yaygpOwotICAgIH0K
LQotICAgIHRpbWVyLT5tX2FwaUxvY2stPnVubG9jaygpOworICAgIHN0YXRpY19jYXN0PEpTUnVu
TG9vcFRpbWVyKj4oY29udGV4dFB0ciktPnRpbWVyRGlkRmlyZSgpOwogfQogCiB2b2lkIEpTUnVu
TG9vcFRpbWVyOjpzY2hlZHVsZVRpbWVyKGRvdWJsZSBpbnRlcnZhbEluU2Vjb25kcykKQEAgLTE0
NCwyNCArMTQ4LDYgQEAgSlNSdW5Mb29wVGltZXI6On5KU1J1bkxvb3BUaW1lcigpCiAgICAgZ19z
b3VyY2VfZGVzdHJveShtX3RpbWVyLmdldCgpKTsKIH0KIAotdm9pZCBKU1J1bkxvb3BUaW1lcjo6
dGltZXJEaWRGaXJlKCkKLXsKLSAgICBtX2FwaUxvY2stPmxvY2soKTsKLQotICAgIGlmICghbV9h
cGlMb2NrLT52bSgpKSB7Ci0gICAgICAgIC8vIFRoZSBWTSBoYXMgYmVlbiBkZXN0cm95ZWQsIHNv
IHdlIHNob3VsZCBqdXN0IGdpdmUgdXAuCi0gICAgICAgIG1fYXBpTG9jay0+dW5sb2NrKCk7Ci0g
ICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICB7Ci0gICAgICAgIEpTTG9ja0hvbGRlciBsb2Nr
ZXIobV92bSk7Ci0gICAgICAgIGRvV29yaygpOwotICAgIH0KLQotICAgIG1fYXBpTG9jay0+dW5s
b2NrKCk7Ci19Ci0KIHZvaWQgSlNSdW5Mb29wVGltZXI6OnNjaGVkdWxlVGltZXIoZG91YmxlIGlu
dGVydmFsSW5TZWNvbmRzKQogewogICAgIGdfc291cmNlX3NldF9yZWFkeV90aW1lKG1fdGltZXIu
Z2V0KCksIGdfZ2V0X21vbm90b25pY190aW1lKCkgKyBpbnRlcnZhbEluU2Vjb25kcyAqIEdfVVNF
Q19QRVJfU0VDKTsKQEAgLTE4MywxMCArMTY5LDYgQEAgSlNSdW5Mb29wVGltZXI6On5KU1J1bkxv
b3BUaW1lcigpCiB7CiB9CiAKLXZvaWQgSlNSdW5Mb29wVGltZXI6OmludmFsaWRhdGUoKQotewot
fQotCiB2b2lkIEpTUnVuTG9vcFRpbWVyOjpzY2hlZHVsZVRpbWVyKGRvdWJsZSkKIHsKIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTUnVuTG9vcFRpbWVyLmgg
Yi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU1J1bkxvb3BUaW1lci5oCmluZGV4IDgz
ZWNiOWNiYzQzLi4zYjE5YThmMzcwOCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L3J1bnRpbWUvSlNSdW5Mb29wVGltZXIuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVu
dGltZS9KU1J1bkxvb3BUaW1lci5oCkBAIC00OCw3ICs0OCw3IEBAIGNsYXNzIEpTUnVuTG9vcFRp
bWVyIDogcHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPEpTUnVuTG9vcFRpbWVyPiB7CiBwdWJs
aWM6CiAgICAgSlNSdW5Mb29wVGltZXIoVk0qKTsKICNpZiBVU0UoQ0YpCi0gICAgc3RhdGljIHZv
aWQgdGltZXJEaWRGaXJlKENGUnVuTG9vcFRpbWVyUmVmLCB2b2lkKik7CisgICAgc3RhdGljIHZv
aWQgdGltZXJEaWRGaXJlQ2FsbGJhY2soQ0ZSdW5Mb29wVGltZXJSZWYsIHZvaWQqKTsKICNlbmRp
ZgogCiAgICAgSlNfRVhQT1JUX1BSSVZBVEUgdmlydHVhbCB+SlNSdW5Mb29wVGltZXIoKTsKQEAg
LTc4LDEyICs3OCwxMSBAQCBwcm90ZWN0ZWQ6CiAgICAgTG9jayBtX3NodXRkb3duTXV0ZXg7CiAj
ZWxpZiBVU0UoR0xJQikKICAgICBzdGF0aWMgY29uc3QgbG9uZyBzX2RlY2FkZTsKLSAgICB2b2lk
IHRpbWVyRGlkRmlyZSgpOwogICAgIEdSZWZQdHI8R1NvdXJjZT4gbV90aW1lcjsKICNlbmRpZgog
ICAgIAogcHJpdmF0ZToKLSAgICB2b2lkIGludmFsaWRhdGUoKTsKKyAgICB2b2lkIHRpbWVyRGlk
RmlyZSgpOwogfTsKICAgICAKIH0gLy8gbmFtZXNwYWNlIEpTQwo=
</data>
<flag name="review"
          id="327435"
          type_id="1"
          status="+"
          setter="mcatanzaro"
    />
          </attachment>
      

    </bug>

</bugzilla>