<?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>109731</bug_id>
          
          <creation_ts>2013-02-13 12:25:49 -0800</creation_ts>
          <short_desc>Don&apos;t restart shared timer if both the current and the new fire time are in the past</short_desc>
          <delta_ts>2013-02-13 15:11:25 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Platform</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>kling</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>832186</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-02-13 12:25:49 -0800</bug_when>
    <thetext>In ~50% of cases we reschedule the shared timer both the old and the new fire time have already passed. We can skip rescheduling in this case, the shared timer will fire immediately anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832297</commentid>
    <comment_count>1</comment_count>
      <attachid>188171</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-02-13 13:45:15 -0800</bug_when>
    <thetext>Created attachment 188171
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>832401</commentid>
    <comment_count>2</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2013-02-13 15:11:25 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/142811</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>188171</attachid>
            <date>2013-02-13 13:45:15 -0800</date>
            <delta_ts>2013-02-13 13:55:56 -0800</delta_ts>
            <desc>patch</desc>
            <filename>timer-resechedule-past.patch</filename>
            <type>text/plain</type>
            <size>4063</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE0Mjc3OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDEzLTAyLTEzICBBbnR0aSBL
b2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBEb24ndCByZXN0YXJ0IHNoYXJl
ZCB0aW1lciBpZiBib3RoIHRoZSBjdXJyZW50IGFuZCB0aGUgbmV3IGZpcmUgdGltZSBhcmUgaW4g
dGhlIHBhc3QKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwOTczMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEluIDQwLTUwJSBvZiBjYXNlcyB3ZSByZXNjaGVkdWxlIHRoZSBzaGFyZWQgdGltZXIgYm90aCB0
aGUgb2xkIGFuZCB0aGUgbmV3IGZpcmUgdGltZSBoYXZlIGFscmVhZHkgcGFzc2VkLiBUaGlzIGNh
biBoYXBwZW4gYXQgbGVhc3Qgd2hlbiByZXNjaGVkdWxpbmcgCisgICAgICAgIGEgemVybyBkdXJh
dGlvbiB0aW1lciBhbmQgd2hlbiBzdG9wcGluZyBhIHRpbWVyIHRoYXQgd2FzIHJlYWR5IHRvIGZp
cmUuCisKKyAgICAgICAgV2UgY2FuIHNraXAgcmVzY2hlZHVsaW5nIGluIHRoaXMgY2FzZSwgdGhl
IHNoYXJlZCB0aW1lciB3aWxsIGZpcmUgaW1tZWRpYXRlbHkgYW55d2F5LgorICAgICAgICAKKyAg
ICAgICAgU2NoZWR1bGluZyB0aW1lcnMgY2FsbHMgaW50byBwbGF0Zm9ybSBsYXllciBhbmQgY2Fu
IGJlIHNsb3cuIFRoaXMgYWJvdXQgaGFsdmVzIHRoZSB0aW1lIHVuZGVyIHNldFNoYXJlZFRpbWVy
RmlyZUludGVydmFsIGluIFBMVDMKKyAgICAgICAgZm9yIH4wLjElIHRvdGFsIENQVSB0aW1lIHJl
ZHVjdGlvbi4KKworICAgICAgICAqIHBsYXRmb3JtL1RocmVhZFRpbWVycy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpUaHJlYWRUaW1lcnM6OlRocmVhZFRpbWVycyk6CisgICAgICAgIChXZWJDb3Jl
OjpUaHJlYWRUaW1lcnM6OnNldFNoYXJlZFRpbWVyKToKKyAgICAgICAgKFdlYkNvcmU6OlRocmVh
ZFRpbWVyczo6dXBkYXRlU2hhcmVkVGltZXIpOgorICAgICAgICAoV2ViQ29yZTo6VGhyZWFkVGlt
ZXJzOjpzaGFyZWRUaW1lckZpcmVkSW50ZXJuYWwpOgorICAgICAgICAqIHBsYXRmb3JtL1RocmVh
ZFRpbWVycy5oOgorICAgICAgICAoVGhyZWFkVGltZXJzKToKKwogMjAxMy0wMi0xMyAgRGVhbiBK
YWNrc29uICA8ZGlub0BhcHBsZS5jb20+CiAKICAgICAgICAgU21hbGwgdXBkYXRlIHRvIHNwZWVj
aCBidWJibGUgZm9yIGNhcHRpb25zIG1lbnUgW01hY10KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1RocmVhZFRpbWVycy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vVGhyZWFkVGltZXJzLmNwcAkocmV2aXNpb24gMTQyMjUwKQorKysgU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vVGhyZWFkVGltZXJzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTQsNiArNTQs
NyBAQCBzdGF0aWMgTWFpblRocmVhZFNoYXJlZFRpbWVyKiBtYWluVGhyZWFkCiBUaHJlYWRUaW1l
cnM6OlRocmVhZFRpbWVycygpCiAgICAgOiBtX3NoYXJlZFRpbWVyKDApCiAgICAgLCBtX2Zpcmlu
Z1RpbWVycyhmYWxzZSkKKyAgICAsIG1fcGVuZGluZ1NoYXJlZFRpbWVyRmlyZVRpbWUoMCkKIHsK
ICAgICBpZiAoaXNNYWluVGhyZWFkKCkpCiAgICAgICAgIHNldFNoYXJlZFRpbWVyKG1haW5UaHJl
YWRTaGFyZWRUaW1lcigpKTsKQEAgLTY2LDYgKzY3LDcgQEAgdm9pZCBUaHJlYWRUaW1lcnM6OnNl
dFNoYXJlZFRpbWVyKFNoYXJlZAogICAgIGlmIChtX3NoYXJlZFRpbWVyKSB7CiAgICAgICAgIG1f
c2hhcmVkVGltZXItPnNldEZpcmVkRnVuY3Rpb24oMCk7CiAgICAgICAgIG1fc2hhcmVkVGltZXIt
PnN0b3AoKTsKKyAgICAgICAgbV9wZW5kaW5nU2hhcmVkVGltZXJGaXJlVGltZSA9IDA7CiAgICAg
fQogICAgIAogICAgIG1fc2hhcmVkVGltZXIgPSBzaGFyZWRUaW1lcjsKQEAgLTgxLDEwICs4Mywy
MCBAQCB2b2lkIFRocmVhZFRpbWVyczo6dXBkYXRlU2hhcmVkVGltZXIoKQogICAgIGlmICghbV9z
aGFyZWRUaW1lcikKICAgICAgICAgcmV0dXJuOwogICAgICAgICAKLSAgICBpZiAobV9maXJpbmdU
aW1lcnMgfHwgbV90aW1lckhlYXAuaXNFbXB0eSgpKQorICAgIGlmIChtX2ZpcmluZ1RpbWVycyB8
fCBtX3RpbWVySGVhcC5pc0VtcHR5KCkpIHsKKyAgICAgICAgbV9wZW5kaW5nU2hhcmVkVGltZXJG
aXJlVGltZSA9IDA7CiAgICAgICAgIG1fc2hhcmVkVGltZXItPnN0b3AoKTsKLSAgICBlbHNlCi0g
ICAgICAgIG1fc2hhcmVkVGltZXItPnNldEZpcmVJbnRlcnZhbChtYXgobV90aW1lckhlYXAuZmly
c3QoKS0+bV9uZXh0RmlyZVRpbWUgLSBtb25vdG9uaWNhbGx5SW5jcmVhc2luZ1RpbWUoKSwgMC4w
KSk7CisgICAgfSBlbHNlIHsKKyAgICAgICAgZG91YmxlIG5leHRGaXJlVGltZSA9IG1fdGltZXJI
ZWFwLmZpcnN0KCktPm1fbmV4dEZpcmVUaW1lOworICAgICAgICBkb3VibGUgY3VycmVudE1vbm90
b25pY1RpbWUgPSBtb25vdG9uaWNhbGx5SW5jcmVhc2luZ1RpbWUoKTsKKyAgICAgICAgaWYgKG1f
cGVuZGluZ1NoYXJlZFRpbWVyRmlyZVRpbWUpIHsKKyAgICAgICAgICAgIC8vIE5vIG5lZWQgdG8g
cmVzdGFydCB0aGUgdGltZXIgaWYgYm90aCB0aGUgcGVuZGluZyBmaXJlIHRpbWUgYW5kIHRoZSBu
ZXcgZmlyZSB0aW1lIGFyZSBpbiB0aGUgcGFzdC4KKyAgICAgICAgICAgIGlmIChtX3BlbmRpbmdT
aGFyZWRUaW1lckZpcmVUaW1lIDw9IGN1cnJlbnRNb25vdG9uaWNUaW1lICYmIG5leHRGaXJlVGlt
ZSA8PSBjdXJyZW50TW9ub3RvbmljVGltZSkKKyAgICAgICAgICAgICAgICByZXR1cm47CisgICAg
ICAgIH0gCisgICAgICAgIG1fcGVuZGluZ1NoYXJlZFRpbWVyRmlyZVRpbWUgPSBuZXh0RmlyZVRp
bWU7CisgICAgICAgIG1fc2hhcmVkVGltZXItPnNldEZpcmVJbnRlcnZhbChtYXgobmV4dEZpcmVU
aW1lIC0gY3VycmVudE1vbm90b25pY1RpbWUsIDAuMCkpOworICAgIH0KIH0KIAogdm9pZCBUaHJl
YWRUaW1lcnM6OnNoYXJlZFRpbWVyRmlyZWQoKQpAQCAtOTksNiArMTExLDcgQEAgdm9pZCBUaHJl
YWRUaW1lcnM6OnNoYXJlZFRpbWVyRmlyZWRJbnRlcgogICAgIGlmIChtX2ZpcmluZ1RpbWVycykK
ICAgICAgICAgcmV0dXJuOwogICAgIG1fZmlyaW5nVGltZXJzID0gdHJ1ZTsKKyAgICBtX3BlbmRp
bmdTaGFyZWRUaW1lckZpcmVUaW1lID0gMDsKIAogICAgIGRvdWJsZSBmaXJlVGltZSA9IG1vbm90
b25pY2FsbHlJbmNyZWFzaW5nVGltZSgpOwogICAgIGRvdWJsZSB0aW1lVG9RdWl0ID0gZmlyZVRp
bWUgKyBtYXhEdXJhdGlvbk9mRmlyaW5nVGltZXJzOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vVGhyZWFkVGltZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vVGhyZWFkVGltZXJzLmgJKHJldmlzaW9uIDE0MjI1MCkKKysrIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1RocmVhZFRpbWVycy5oCSh3b3JraW5nIGNvcHkpCkBAIC01OSw2ICs1OSw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgVmVjdG9yPFRpbWVyQmFzZSo+IG1fdGltZXJIZWFw
OwogICAgICAgICBTaGFyZWRUaW1lciogbV9zaGFyZWRUaW1lcjsgLy8gRXh0ZXJuYWwgb2JqZWN0
LCBjYW4gYmUgYSBydW4gbG9vcCBvbiBhIHdvcmtlciB0aHJlYWQuIE5vcm1hbGx5IHNldC9yZXNl
dCBieSB3b3JrZXIgdGhyZWFkLgogICAgICAgICBib29sIG1fZmlyaW5nVGltZXJzOyAvLyBSZWVu
dHJhbmN5IGd1YXJkLgorICAgICAgICBkb3VibGUgbV9wZW5kaW5nU2hhcmVkVGltZXJGaXJlVGlt
ZTsKICAgICB9OwogCiB9Cg==
</data>
<flag name="review"
          id="208211"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>