<?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>73647</bug_id>
          
          <creation_ts>2011-12-02 04:43:02 -0800</creation_ts>
          <short_desc>[Qt] [WK2] Use input event timestamps in WebEvents if available</short_desc>
          <delta_ts>2011-12-02 06:46:02 -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>WebKit2</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>Qt</keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andras Becsi">abecsi</reporter>
          <assigned_to name="Andras Becsi">abecsi</assigned_to>
          <cc>hausmann</cc>
    
    <cc>vestbo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>513679</commentid>
    <comment_count>0</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-12-02 04:43:02 -0800</bug_when>
    <thetext>Qt5 input events already have a native timestamp, use this timestamp in WK2&apos;s WebEventFactoryQt instead of WTF::currentTime if it is available.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513680</commentid>
    <comment_count>1</comment_count>
      <attachid>117609</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-12-02 04:47:52 -0800</bug_when>
    <thetext>Created attachment 117609
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513681</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-02 04:49:45 -0800</bug_when>
    <thetext>Attachment 117609 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit2/ChangeLog&apos;, u&apos;Source/WebKit...&quot; exit_code: 1

Source/WebKit2/Shared/qt/WebEventFactoryQt.h:45:  The parameter name &quot;e&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513682</commentid>
    <comment_count>3</comment_count>
      <attachid>117610</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-12-02 04:51:22 -0800</bug_when>
    <thetext>Created attachment 117610
proposed patch

D&apos;oh, qtcreator...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513683</commentid>
    <comment_count>4</comment_count>
      <attachid>117610</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-12-02 04:55:45 -0800</bug_when>
    <thetext>Comment on attachment 117610
proposed patch

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

Looks ok

&gt; Source/WebKit2/Shared/qt/WebEventFactoryQt.cpp:42
&gt; +static inline double computeCurrentTimeSeconds(const QInputEvent* event)

InSeconds ? TimeSeconds sounds strange.

I think currentTimeForEvent(ev) would be fine</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513686</commentid>
    <comment_count>5</comment_count>
      <attachid>117611</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-12-02 05:08:00 -0800</bug_when>
    <thetext>Created attachment 117611
proposed patch

Renamed to currentTimeForEvent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513693</commentid>
    <comment_count>6</comment_count>
      <attachid>117611</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-12-02 05:32:51 -0800</bug_when>
    <thetext>Comment on attachment 117611
proposed patch

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

&gt; Source/WebKit2/Shared/qt/WebEventFactoryQt.cpp:51
&gt; +    if (event-&gt;timestamp())
&gt; +        return static_cast&lt;double&gt;(event-&gt;timestamp()) / 1000;
&gt; +
&gt; +    return WTF::currentTime();

Hrmm, a run-time check. Isn&apos;t this going to be cause all sorts of havoc if _some_ events had time stamps and some didn&apos;t?

Imagine: first mouse events has a time stamp, second one doesn&apos;t and we use WTF::currentTime(). What if by chance WTF::currentTime() is less than the previous time stamp?

Perhaps we should try to protect ourselves against this situation. Perhaps by keeping track which events (of which type that is) have a &quot;native&quot; time stamp and which ones require &quot;emulation&quot;, and
we let the first event decide. This could even be done in debug builds only.

Perhaps this is overkill, just a thought. Otherwise I think the patch is good :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513715</commentid>
    <comment_count>7</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-12-02 06:17:10 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 117611 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=117611&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/Shared/qt/WebEventFactoryQt.cpp:51
&gt; &gt; +    if (event-&gt;timestamp())
&gt; &gt; +        return static_cast&lt;double&gt;(event-&gt;timestamp()) / 1000;
&gt; &gt; +
&gt; &gt; +    return WTF::currentTime();
&gt; 
&gt; Hrmm, a run-time check. Isn&apos;t this going to be cause all sorts of havoc if _some_ events had time stamps and some didn&apos;t?
&gt; 
&gt; Imagine: first mouse events has a time stamp, second one doesn&apos;t and we use WTF::currentTime(). What if by chance WTF::currentTime() is less than the previous time stamp?
&gt; 
&gt; Perhaps we should try to protect ourselves against this situation. Perhaps by keeping track which events (of which type that is) have a &quot;native&quot; time stamp and which ones require &quot;emulation&quot;, and
&gt; we let the first event decide. This could even be done in debug builds only.
&gt; 

All the input events should have timestamps now so this scenario should never happen.
But when creating custom events someone forgets to set the timestamp this could be a real concern.
I&apos;m going to land this patch as is and try to figure out something which could catch these cases in debug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513723</commentid>
    <comment_count>8</comment_count>
      <attachid>117611</attachid>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-12-02 06:45:54 -0800</bug_when>
    <thetext>Comment on attachment 117611
proposed patch

Clearing flags on attachment: 117611

Committed r101791: &lt;http://trac.webkit.org/changeset/101791&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513724</commentid>
    <comment_count>9</comment_count>
    <who name="Andras Becsi">abecsi</who>
    <bug_when>2011-12-02 06:46:02 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117609</attachid>
            <date>2011-12-02 04:47:52 -0800</date>
            <delta_ts>2011-12-02 04:51:22 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>0001-Use-input-event-timestamps-in-WebEvents-if-available.patch</filename>
            <type>text/plain</type>
            <size>5457</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSA1MjEzOWNmZmFmMzM1NjRkZWVmMmZhMDFiMzFhNjU2ZGVjNjIzMTQ1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IEZyaSwgMiBEZWMgMjAxMSAxMzo0Njo0NCArMDEwMApTdWJqZWN0OiBbUEFUQ0hdIFVz
ZSBpbnB1dCBldmVudCB0aW1lc3RhbXBzIGluIFdlYkV2ZW50cyBpZiBhdmFpbGFibGUKCi0tLQog
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTggKysr
KysrKysrKysrKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5
UXQuY3BwIHwgICAyMCArKysrKysrKysrKysrKysrLS0tLQogU291cmNlL1dlYktpdDIvU2hhcmVk
L3F0L1dlYkV2ZW50RmFjdG9yeVF0LmggICB8ICAgIDIgKy0KIDMgZmlsZXMgY2hhbmdlZCwgMzUg
aW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNDk0YTc5Zi4uYWYx
MGY4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDExLTEyLTAyICBBbmRyYXMgQmVj
c2kgIDxhbmRyYXMuYmVjc2lAbm9raWEuY29tPgorCisgICAgICAgIFtRdF0gW1dLMl0gVXNlIGlu
cHV0IGV2ZW50IHRpbWVzdGFtcHMgaW4gV2ViRXZlbnRzIGlmIGF2YWlsYWJsZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzM2NDcKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBRdDUgaW5wdXQgZXZlbnRzIGFs
cmVhZHkgaGF2ZSBhIG5hdGl2ZSB0aW1lc3RhbXAsIHVzZSB0aGlzIHRpbWVzdGFtcAorICAgICAg
ICBpbiBXZWJFdmVudEZhY3RvcnkgaW5zdGVhZCBvZiBXVEY6OmN1cnJlbnRUaW1lIGlmIGl0IGlz
IGF2YWlsYWJsZS4KKworICAgICAgICAqIFNoYXJlZC9xdC9XZWJFdmVudEZhY3RvcnlRdC5jcHA6
CisgICAgICAgIChXZWJLaXQ6OmNvbXB1dGVDdXJyZW50VGltZVNlY29uZHMpOgorICAgICAgICAo
V2ViS2l0OjpXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYk1vdXNlRXZlbnQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQpOgorICAgICAgICAo
V2ViS2l0OjpXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYktleWJvYXJkRXZlbnQpOgorICAgICAg
ICAoV2ViS2l0OjpXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYlRvdWNoRXZlbnQpOgorICAgICAg
ICAqIFNoYXJlZC9xdC9XZWJFdmVudEZhY3RvcnlRdC5oOgorCiAyMDExLTEyLTAyICBLZW5uZXRo
IFJvaGRlIENocmlzdGlhbnNlbiAgPGtlbm5ldGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBbUXRd
IERvIG5vdCBhcHBseSB0aGUgdHJhbnNpdGlvbiBzdGF0ZSBiZWZvcmUgd2UgYXJlIHVuc3VzcGVu
ZGVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5
UXQuY3BwIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL3F0L1dlYkV2ZW50RmFjdG9yeVF0LmNwcApp
bmRleCA4YmY0YWRiLi5iNGFiZmI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
cXQvV2ViRXZlbnRGYWN0b3J5UXQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9xdC9X
ZWJFdmVudEZhY3RvcnlRdC5jcHAKQEAgLTM5LDYgKzM5LDE4IEBAIHVzaW5nIG5hbWVzcGFjZSBX
ZWJDb3JlOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAorc3RhdGljIGlubGluZSBkb3VibGUgY29t
cHV0ZUN1cnJlbnRUaW1lU2Vjb25kcyhjb25zdCBRSW5wdXRFdmVudCogZXZlbnQpCit7CisgICAg
QVNTRVJUKGV2ZW50KTsKKworICAgIC8vIFVzZSB0aGUgaW5wdXQgZXZlbnQgdGltZXN0YW1wcyBp
ZiB0aGV5IGFyZSBhdmFpbGFibGUuCisgICAgLy8gVGhlc2UgdGltZXN0YW1wcyBhcmUgaW4gbWls
bGlzZWNvbmRzLCB0aHVzIGNvbnZlcnQgdGhlbSB0byBzZWNvbmRzLgorICAgIGlmIChldmVudC0+
dGltZXN0YW1wKCkpCisgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxkb3VibGU+KGV2ZW50LT50
aW1lc3RhbXAoKSkgLyAxMDAwOworCisgICAgcmV0dXJuIFdURjo6Y3VycmVudFRpbWUoKTsKK30K
Kwogc3RhdGljIFdlYk1vdXNlRXZlbnQ6OkJ1dHRvbiBtb3VzZUJ1dHRvbkZvckV2ZW50KFFNb3Vz
ZUV2ZW50ICpldmVudCkKIHsKICAgICBpZiAoZXZlbnQtPmJ1dHRvbigpID09IFF0OjpMZWZ0QnV0
dG9uIHx8IChldmVudC0+YnV0dG9ucygpICYgUXQ6OkxlZnRCdXR0b24pKQpAQCAtMTA0LDcgKzEx
Niw3IEBAIFdlYk1vdXNlRXZlbnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJNb3VzZUV2ZW50
KFFNb3VzZUV2ZW50KiBldmVudCwgaW50IGV2ZW50CiAgICAgZmxvYXQgZGVsdGFZICAgICAgICAg
ICAgICAgICAgICA9IGV2ZW50LT5wb3MoKS55KCkgLSBsYXN0UG9zLnkoKTsKICAgICBpbnQgY2xp
Y2tDb3VudCAgICAgICAgICAgICAgICAgID0gZXZlbnRDbGlja0NvdW50OwogICAgIFdlYkV2ZW50
OjpNb2RpZmllcnMgbW9kaWZpZXJzICAgPSBtb2RpZmllcnNGb3JFdmVudChldmVudC0+bW9kaWZp
ZXJzKCkpOwotICAgIGRvdWJsZSB0aW1lc3RhbXAgICAgICAgICAgICAgICAgPSBXVEY6OmN1cnJl
bnRUaW1lKCk7CisgICAgZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAgICA9IGNvbXB1dGVD
dXJyZW50VGltZVNlY29uZHMoZXZlbnQpOwogICAgIGxhc3RQb3Muc2V0KGV2ZW50LT5sb2NhbFBv
cygpLngoKSwgZXZlbnQtPmxvY2FsUG9zKCkueSgpKTsKIAogICAgIHJldHVybiBXZWJNb3VzZUV2
ZW50KHR5cGUsIGJ1dHRvbiwgZXZlbnQtPmxvY2FsUG9zKCkudG9Qb2ludCgpLCBldmVudC0+c2Ny
ZWVuUG9zKCkudG9Qb2ludCgpLCBkZWx0YVgsIGRlbHRhWSwgMC4wZiwgY2xpY2tDb3VudCwgbW9k
aWZpZXJzLCB0aW1lc3RhbXApOwpAQCAtMTE4LDcgKzEzMCw3IEBAIFdlYldoZWVsRXZlbnQgV2Vi
RXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJXaGVlbEV2ZW50KFFXaGVlbEV2ZW50KiBlKQogICAgIGZs
b2F0IHdoZWVsVGlja3NZICAgICAgICAgICAgICAgICAgICAgICA9IDA7CiAgICAgV2ViV2hlZWxF
dmVudDo6R3JhbnVsYXJpdHkgZ3JhbnVsYXJpdHkgID0gV2ViV2hlZWxFdmVudDo6U2Nyb2xsQnlQ
aXhlbFdoZWVsRXZlbnQ7CiAgICAgV2ViRXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmllcnMgICAgICAg
ICAgID0gbW9kaWZpZXJzRm9yRXZlbnQoZS0+bW9kaWZpZXJzKCkpOwotICAgIGRvdWJsZSB0aW1l
c3RhbXAgICAgICAgICAgICAgICAgICAgICAgICA9IFdURjo6Y3VycmVudFRpbWUoKTsKKyAgICBk
b3VibGUgdGltZXN0YW1wICAgICAgICAgICAgICAgICAgICAgICAgPSBjb21wdXRlQ3VycmVudFRp
bWVTZWNvbmRzKGUpOwogCiAgICAgLy8gQSBkZWx0YSB0aGF0IGlzIG5vdCBtb2QgMTIwIGluZGlj
YXRlcyBhIGRldmljZSB0aGF0IGlzIHNlbmRpbmcKICAgICAvLyBmaW5lLXJlc29sdXRpb24gc2Ny
b2xsIGV2ZW50cywgc28gdXNlIHRoZSBkZWx0YSBhcyBudW1iZXIgb2Ygd2hlZWwgdGlja3MKQEAg
LTE1Niw3ICsxNjgsNyBAQCBXZWJLZXlib2FyZEV2ZW50IFdlYkV2ZW50RmFjdG9yeTo6Y3JlYXRl
V2ViS2V5Ym9hcmRFdmVudChRS2V5RXZlbnQqIGV2ZW50KQogICAgIGludCBuYXRpdmVWaXJ0dWFs
S2V5Q29kZSAgICAgICAgPSBldmVudC0+bmF0aXZlVmlydHVhbEtleSgpOwogICAgIGludCBtYWND
aGFyQ29kZSAgICAgICAgICAgICAgICAgPSAwOwogICAgIFdlYkV2ZW50OjpNb2RpZmllcnMgbW9k
aWZpZXJzICAgPSBtb2RpZmllcnNGb3JFdmVudChldmVudC0+bW9kaWZpZXJzKCkpOwotICAgIGRv
dWJsZSB0aW1lc3RhbXAgICAgICAgICAgICAgICAgPSBXVEY6OmN1cnJlbnRUaW1lKCk7CisgICAg
ZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAgICA9IGNvbXB1dGVDdXJyZW50VGltZVNlY29u
ZHMoZXZlbnQpOwogCiAgICAgcmV0dXJuIFdlYktleWJvYXJkRXZlbnQodHlwZSwgdGV4dCwgdW5t
b2RpZmllZFRleHQsIGtleUlkZW50aWZpZXIsIHdpbmRvd3NWaXJ0dWFsS2V5Q29kZSwgbmF0aXZl
VmlydHVhbEtleUNvZGUsIG1hY0NoYXJDb2RlLCBpc0F1dG9SZXBlYXQsIGlzS2V5cGFkLCBpc1N5
c3RlbUtleSwgbW9kaWZpZXJzLCB0aW1lc3RhbXApOwogfQpAQCAtMTY4LDcgKzE4MCw3IEBAIFdl
YlRvdWNoRXZlbnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJUb3VjaEV2ZW50KGNvbnN0IFFU
b3VjaEV2ZW50KiBldmVudCkKICAgICBXZWJQbGF0Zm9ybVRvdWNoUG9pbnQ6OlRvdWNoUG9pbnRT
dGF0ZSBzdGF0ZSA9IHN0YXRpY19jYXN0PFdlYlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hQb2lu
dFN0YXRlPigwKTsKICAgICB1bnNpZ25lZCBpbnQgaWQ7CiAgICAgV2ViRXZlbnQ6Ok1vZGlmaWVy
cyBtb2RpZmllcnMgICA9IG1vZGlmaWVyc0ZvckV2ZW50KGV2ZW50LT5tb2RpZmllcnMoKSk7Ci0g
ICAgZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAgICA9IFdURjo6Y3VycmVudFRpbWUoKTsK
KyAgICBkb3VibGUgdGltZXN0YW1wICAgICAgICAgICAgICAgID0gY29tcHV0ZUN1cnJlbnRUaW1l
U2Vjb25kcyhldmVudCk7CiAKICAgICBjb25zdCBRTGlzdDxRVG91Y2hFdmVudDo6VG91Y2hQb2lu
dD4mIHBvaW50cyA9IGV2ZW50LT50b3VjaFBvaW50cygpOwogICAgIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvU2hhcmVkL3F0L1dlYkV2ZW50RmFjdG9yeVF0LmggYi9Tb3VyY2UvV2ViS2l0
Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5UXQuaAppbmRleCA0Y2U2NDhlLi4yYzY1NTk1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5UXQuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5UXQuaApAQCAtNDIs
NyArNDIsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIGNsYXNzIFdlYkV2ZW50RmFjdG9yeSB7CiBw
dWJsaWM6CiAgICAgc3RhdGljIFdlYk1vdXNlRXZlbnQgY3JlYXRlV2ViTW91c2VFdmVudChRTW91
c2VFdmVudCosIGludCBldmVudENsaWNrQ291bnQpOwotICAgIHN0YXRpYyBXZWJXaGVlbEV2ZW50
IGNyZWF0ZVdlYldoZWVsRXZlbnQoUVdoZWVsRXZlbnQqKTsKKyAgICBzdGF0aWMgV2ViV2hlZWxF
dmVudCBjcmVhdGVXZWJXaGVlbEV2ZW50KFFXaGVlbEV2ZW50KiBlKTsKICAgICBzdGF0aWMgV2Vi
S2V5Ym9hcmRFdmVudCBjcmVhdGVXZWJLZXlib2FyZEV2ZW50KFFLZXlFdmVudCopOwogI2lmIEVO
QUJMRShUT1VDSF9FVkVOVFMpCiAgICAgc3RhdGljIFdlYlRvdWNoRXZlbnQgY3JlYXRlV2ViVG91
Y2hFdmVudChjb25zdCBRVG91Y2hFdmVudCopOwotLSAKMS43LjcuNAoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117610</attachid>
            <date>2011-12-02 04:51:22 -0800</date>
            <delta_ts>2011-12-02 05:08:00 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>0001-Use-input-event-timestamps-in-WebEvents-if-available.patch</filename>
            <type>text/plain</type>
            <size>4727</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSA3N2FjYTk2MjE1YmRlMTYzNWM5MGFiMjRiNTUwYmU3Y2U4MTE2NzBmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IEZyaSwgMiBEZWMgMjAxMSAxMzo0OTozNiArMDEwMApTdWJqZWN0OiBbUEFUQ0hdIFVz
ZSBpbnB1dCBldmVudCB0aW1lc3RhbXBzIGluIFdlYkV2ZW50cyBpZiBhdmFpbGFibGUKCi0tLQog
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTggKysr
KysrKysrKysrKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5
UXQuY3BwIHwgICAyMCArKysrKysrKysrKysrKysrLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAzNCBp
bnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA0OTRhNzlmLi5hZjEw
ZjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMTItMDIgIEFuZHJhcyBCZWNz
aSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XSBbV0syXSBVc2UgaW5w
dXQgZXZlbnQgdGltZXN0YW1wcyBpbiBXZWJFdmVudHMgaWYgYXZhaWxhYmxlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MzY0NworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFF0NSBpbnB1dCBldmVudHMgYWxy
ZWFkeSBoYXZlIGEgbmF0aXZlIHRpbWVzdGFtcCwgdXNlIHRoaXMgdGltZXN0YW1wCisgICAgICAg
IGluIFdlYkV2ZW50RmFjdG9yeSBpbnN0ZWFkIG9mIFdURjo6Y3VycmVudFRpbWUgaWYgaXQgaXMg
YXZhaWxhYmxlLgorCisgICAgICAgICogU2hhcmVkL3F0L1dlYkV2ZW50RmFjdG9yeVF0LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6Y29tcHV0ZUN1cnJlbnRUaW1lU2Vjb25kcyk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViTW91c2VFdmVudCk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViV2hlZWxFdmVudCk6CisgICAgICAgIChX
ZWJLaXQ6OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViS2V5Ym9hcmRFdmVudCk6CisgICAgICAg
IChXZWJLaXQ6OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViVG91Y2hFdmVudCk6CisgICAgICAg
ICogU2hhcmVkL3F0L1dlYkV2ZW50RmFjdG9yeVF0Lmg6CisKIDIwMTEtMTItMDIgIEtlbm5ldGgg
Um9oZGUgQ2hyaXN0aWFuc2VuICA8a2VubmV0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFtRdF0g
RG8gbm90IGFwcGx5IHRoZSB0cmFuc2l0aW9uIHN0YXRlIGJlZm9yZSB3ZSBhcmUgdW5zdXNwZW5k
ZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9xdC9XZWJFdmVudEZhY3RvcnlR
dC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5UXQuY3BwCmlu
ZGV4IDhiZjRhZGIuLmI0YWJmYjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9x
dC9XZWJFdmVudEZhY3RvcnlRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL3F0L1dl
YkV2ZW50RmFjdG9yeVF0LmNwcApAQCAtMzksNiArMzksMTggQEAgdXNpbmcgbmFtZXNwYWNlIFdl
YkNvcmU7CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitzdGF0aWMgaW5saW5lIGRvdWJsZSBjb21w
dXRlQ3VycmVudFRpbWVTZWNvbmRzKGNvbnN0IFFJbnB1dEV2ZW50KiBldmVudCkKK3sKKyAgICBB
U1NFUlQoZXZlbnQpOworCisgICAgLy8gVXNlIHRoZSBpbnB1dCBldmVudCB0aW1lc3RhbXBzIGlm
IHRoZXkgYXJlIGF2YWlsYWJsZS4KKyAgICAvLyBUaGVzZSB0aW1lc3RhbXBzIGFyZSBpbiBtaWxs
aXNlY29uZHMsIHRodXMgY29udmVydCB0aGVtIHRvIHNlY29uZHMuCisgICAgaWYgKGV2ZW50LT50
aW1lc3RhbXAoKSkKKyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGRvdWJsZT4oZXZlbnQtPnRp
bWVzdGFtcCgpKSAvIDEwMDA7CisKKyAgICByZXR1cm4gV1RGOjpjdXJyZW50VGltZSgpOworfQor
CiBzdGF0aWMgV2ViTW91c2VFdmVudDo6QnV0dG9uIG1vdXNlQnV0dG9uRm9yRXZlbnQoUU1vdXNl
RXZlbnQgKmV2ZW50KQogewogICAgIGlmIChldmVudC0+YnV0dG9uKCkgPT0gUXQ6OkxlZnRCdXR0
b24gfHwgKGV2ZW50LT5idXR0b25zKCkgJiBRdDo6TGVmdEJ1dHRvbikpCkBAIC0xMDQsNyArMTE2
LDcgQEAgV2ViTW91c2VFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYk1vdXNlRXZlbnQo
UU1vdXNlRXZlbnQqIGV2ZW50LCBpbnQgZXZlbnQKICAgICBmbG9hdCBkZWx0YVkgICAgICAgICAg
ICAgICAgICAgID0gZXZlbnQtPnBvcygpLnkoKSAtIGxhc3RQb3MueSgpOwogICAgIGludCBjbGlj
a0NvdW50ICAgICAgICAgICAgICAgICAgPSBldmVudENsaWNrQ291bnQ7CiAgICAgV2ViRXZlbnQ6
Ok1vZGlmaWVycyBtb2RpZmllcnMgICA9IG1vZGlmaWVyc0ZvckV2ZW50KGV2ZW50LT5tb2RpZmll
cnMoKSk7Ci0gICAgZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAgICA9IFdURjo6Y3VycmVu
dFRpbWUoKTsKKyAgICBkb3VibGUgdGltZXN0YW1wICAgICAgICAgICAgICAgID0gY29tcHV0ZUN1
cnJlbnRUaW1lU2Vjb25kcyhldmVudCk7CiAgICAgbGFzdFBvcy5zZXQoZXZlbnQtPmxvY2FsUG9z
KCkueCgpLCBldmVudC0+bG9jYWxQb3MoKS55KCkpOwogCiAgICAgcmV0dXJuIFdlYk1vdXNlRXZl
bnQodHlwZSwgYnV0dG9uLCBldmVudC0+bG9jYWxQb3MoKS50b1BvaW50KCksIGV2ZW50LT5zY3Jl
ZW5Qb3MoKS50b1BvaW50KCksIGRlbHRhWCwgZGVsdGFZLCAwLjBmLCBjbGlja0NvdW50LCBtb2Rp
ZmllcnMsIHRpbWVzdGFtcCk7CkBAIC0xMTgsNyArMTMwLDcgQEAgV2ViV2hlZWxFdmVudCBXZWJF
dmVudEZhY3Rvcnk6OmNyZWF0ZVdlYldoZWVsRXZlbnQoUVdoZWVsRXZlbnQqIGUpCiAgICAgZmxv
YXQgd2hlZWxUaWNrc1kgICAgICAgICAgICAgICAgICAgICAgID0gMDsKICAgICBXZWJXaGVlbEV2
ZW50OjpHcmFudWxhcml0eSBncmFudWxhcml0eSAgPSBXZWJXaGVlbEV2ZW50OjpTY3JvbGxCeVBp
eGVsV2hlZWxFdmVudDsKICAgICBXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVycyAgICAgICAg
ICAgPSBtb2RpZmllcnNGb3JFdmVudChlLT5tb2RpZmllcnMoKSk7Ci0gICAgZG91YmxlIHRpbWVz
dGFtcCAgICAgICAgICAgICAgICAgICAgICAgID0gV1RGOjpjdXJyZW50VGltZSgpOworICAgIGRv
dWJsZSB0aW1lc3RhbXAgICAgICAgICAgICAgICAgICAgICAgICA9IGNvbXB1dGVDdXJyZW50VGlt
ZVNlY29uZHMoZSk7CiAKICAgICAvLyBBIGRlbHRhIHRoYXQgaXMgbm90IG1vZCAxMjAgaW5kaWNh
dGVzIGEgZGV2aWNlIHRoYXQgaXMgc2VuZGluZwogICAgIC8vIGZpbmUtcmVzb2x1dGlvbiBzY3Jv
bGwgZXZlbnRzLCBzbyB1c2UgdGhlIGRlbHRhIGFzIG51bWJlciBvZiB3aGVlbCB0aWNrcwpAQCAt
MTU2LDcgKzE2OCw3IEBAIFdlYktleWJvYXJkRXZlbnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVX
ZWJLZXlib2FyZEV2ZW50KFFLZXlFdmVudCogZXZlbnQpCiAgICAgaW50IG5hdGl2ZVZpcnR1YWxL
ZXlDb2RlICAgICAgICA9IGV2ZW50LT5uYXRpdmVWaXJ0dWFsS2V5KCk7CiAgICAgaW50IG1hY0No
YXJDb2RlICAgICAgICAgICAgICAgICA9IDA7CiAgICAgV2ViRXZlbnQ6Ok1vZGlmaWVycyBtb2Rp
ZmllcnMgICA9IG1vZGlmaWVyc0ZvckV2ZW50KGV2ZW50LT5tb2RpZmllcnMoKSk7Ci0gICAgZG91
YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAgICA9IFdURjo6Y3VycmVudFRpbWUoKTsKKyAgICBk
b3VibGUgdGltZXN0YW1wICAgICAgICAgICAgICAgID0gY29tcHV0ZUN1cnJlbnRUaW1lU2Vjb25k
cyhldmVudCk7CiAKICAgICByZXR1cm4gV2ViS2V5Ym9hcmRFdmVudCh0eXBlLCB0ZXh0LCB1bm1v
ZGlmaWVkVGV4dCwga2V5SWRlbnRpZmllciwgd2luZG93c1ZpcnR1YWxLZXlDb2RlLCBuYXRpdmVW
aXJ0dWFsS2V5Q29kZSwgbWFjQ2hhckNvZGUsIGlzQXV0b1JlcGVhdCwgaXNLZXlwYWQsIGlzU3lz
dGVtS2V5LCBtb2RpZmllcnMsIHRpbWVzdGFtcCk7CiB9CkBAIC0xNjgsNyArMTgwLDcgQEAgV2Vi
VG91Y2hFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYlRvdWNoRXZlbnQoY29uc3QgUVRv
dWNoRXZlbnQqIGV2ZW50KQogICAgIFdlYlBsYXRmb3JtVG91Y2hQb2ludDo6VG91Y2hQb2ludFN0
YXRlIHN0YXRlID0gc3RhdGljX2Nhc3Q8V2ViUGxhdGZvcm1Ub3VjaFBvaW50OjpUb3VjaFBvaW50
U3RhdGU+KDApOwogICAgIHVuc2lnbmVkIGludCBpZDsKICAgICBXZWJFdmVudDo6TW9kaWZpZXJz
IG1vZGlmaWVycyAgID0gbW9kaWZpZXJzRm9yRXZlbnQoZXZlbnQtPm1vZGlmaWVycygpKTsKLSAg
ICBkb3VibGUgdGltZXN0YW1wICAgICAgICAgICAgICAgID0gV1RGOjpjdXJyZW50VGltZSgpOwor
ICAgIGRvdWJsZSB0aW1lc3RhbXAgICAgICAgICAgICAgICAgPSBjb21wdXRlQ3VycmVudFRpbWVT
ZWNvbmRzKGV2ZW50KTsKIAogICAgIGNvbnN0IFFMaXN0PFFUb3VjaEV2ZW50OjpUb3VjaFBvaW50
PiYgcG9pbnRzID0gZXZlbnQtPnRvdWNoUG9pbnRzKCk7CiAgICAgCi0tIAoxLjcuNy40Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117611</attachid>
            <date>2011-12-02 05:08:00 -0800</date>
            <delta_ts>2011-12-02 06:45:54 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>0001-Use-input-event-timestamps-in-WebEvents-if-available.patch</filename>
            <type>text/plain</type>
            <size>4691</size>
            <attacher name="Andras Becsi">abecsi</attacher>
            
              <data encoding="base64">RnJvbSBkZWQ3ZmNhZmUxZTk5Nzc0NjU0OWJjNDY5Y2ZmNDU2MTMxMzRiMzczIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyYXMgQmVjc2kgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+
CkRhdGU6IEZyaSwgMiBEZWMgMjAxMSAxNDowMzozNyArMDEwMApTdWJqZWN0OiBbUEFUQ0hdIFVz
ZSBpbnB1dCBldmVudCB0aW1lc3RhbXBzIGluIFdlYkV2ZW50cyBpZiBhdmFpbGFibGUKCi0tLQog
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTggKysr
KysrKysrKysrKysrKysrCiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5
UXQuY3BwIHwgICAyMCArKysrKysrKysrKysrKysrLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAzNCBp
bnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA0OTRhNzlmLi5hZjEw
ZjhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dl
YktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMTEtMTItMDIgIEFuZHJhcyBCZWNz
aSAgPGFuZHJhcy5iZWNzaUBub2tpYS5jb20+CisKKyAgICAgICAgW1F0XSBbV0syXSBVc2UgaW5w
dXQgZXZlbnQgdGltZXN0YW1wcyBpbiBXZWJFdmVudHMgaWYgYXZhaWxhYmxlCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MzY0NworCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFF0NSBpbnB1dCBldmVudHMgYWxy
ZWFkeSBoYXZlIGEgbmF0aXZlIHRpbWVzdGFtcCwgdXNlIHRoaXMgdGltZXN0YW1wCisgICAgICAg
IGluIFdlYkV2ZW50RmFjdG9yeSBpbnN0ZWFkIG9mIFdURjo6Y3VycmVudFRpbWUgaWYgaXQgaXMg
YXZhaWxhYmxlLgorCisgICAgICAgICogU2hhcmVkL3F0L1dlYkV2ZW50RmFjdG9yeVF0LmNwcDoK
KyAgICAgICAgKFdlYktpdDo6Y3VycmVudFRpbWVGb3JFdmVudCk6CisgICAgICAgIChXZWJLaXQ6
OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViTW91c2VFdmVudCk6CisgICAgICAgIChXZWJLaXQ6
OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViV2hlZWxFdmVudCk6CisgICAgICAgIChXZWJLaXQ6
OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViS2V5Ym9hcmRFdmVudCk6CisgICAgICAgIChXZWJL
aXQ6OldlYkV2ZW50RmFjdG9yeTo6Y3JlYXRlV2ViVG91Y2hFdmVudCk6CisgICAgICAgICogU2hh
cmVkL3F0L1dlYkV2ZW50RmFjdG9yeVF0Lmg6CisKIDIwMTEtMTItMDIgIEtlbm5ldGggUm9oZGUg
Q2hyaXN0aWFuc2VuICA8a2VubmV0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFtRdF0gRG8gbm90
IGFwcGx5IHRoZSB0cmFuc2l0aW9uIHN0YXRlIGJlZm9yZSB3ZSBhcmUgdW5zdXNwZW5kZWQKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9xdC9XZWJFdmVudEZhY3RvcnlRdC5jcHAg
Yi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvcXQvV2ViRXZlbnRGYWN0b3J5UXQuY3BwCmluZGV4IDhi
ZjRhZGIuLjNkYzU5NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9xdC9XZWJF
dmVudEZhY3RvcnlRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL3F0L1dlYkV2ZW50
RmFjdG9yeVF0LmNwcApAQCAtMzksNiArMzksMTggQEAgdXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7
CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCitzdGF0aWMgaW5saW5lIGRvdWJsZSBjdXJyZW50VGlt
ZUZvckV2ZW50KGNvbnN0IFFJbnB1dEV2ZW50KiBldmVudCkKK3sKKyAgICBBU1NFUlQoZXZlbnQp
OworCisgICAgLy8gVXNlIHRoZSBpbnB1dCBldmVudCB0aW1lc3RhbXBzIGlmIHRoZXkgYXJlIGF2
YWlsYWJsZS4KKyAgICAvLyBUaGVzZSB0aW1lc3RhbXBzIGFyZSBpbiBtaWxsaXNlY29uZHMsIHRo
dXMgY29udmVydCB0aGVtIHRvIHNlY29uZHMuCisgICAgaWYgKGV2ZW50LT50aW1lc3RhbXAoKSkK
KyAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PGRvdWJsZT4oZXZlbnQtPnRpbWVzdGFtcCgpKSAv
IDEwMDA7CisKKyAgICByZXR1cm4gV1RGOjpjdXJyZW50VGltZSgpOworfQorCiBzdGF0aWMgV2Vi
TW91c2VFdmVudDo6QnV0dG9uIG1vdXNlQnV0dG9uRm9yRXZlbnQoUU1vdXNlRXZlbnQgKmV2ZW50
KQogewogICAgIGlmIChldmVudC0+YnV0dG9uKCkgPT0gUXQ6OkxlZnRCdXR0b24gfHwgKGV2ZW50
LT5idXR0b25zKCkgJiBRdDo6TGVmdEJ1dHRvbikpCkBAIC0xMDQsNyArMTE2LDcgQEAgV2ViTW91
c2VFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0ZVdlYk1vdXNlRXZlbnQoUU1vdXNlRXZlbnQq
IGV2ZW50LCBpbnQgZXZlbnQKICAgICBmbG9hdCBkZWx0YVkgICAgICAgICAgICAgICAgICAgID0g
ZXZlbnQtPnBvcygpLnkoKSAtIGxhc3RQb3MueSgpOwogICAgIGludCBjbGlja0NvdW50ICAgICAg
ICAgICAgICAgICAgPSBldmVudENsaWNrQ291bnQ7CiAgICAgV2ViRXZlbnQ6Ok1vZGlmaWVycyBt
b2RpZmllcnMgICA9IG1vZGlmaWVyc0ZvckV2ZW50KGV2ZW50LT5tb2RpZmllcnMoKSk7Ci0gICAg
ZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAgICA9IFdURjo6Y3VycmVudFRpbWUoKTsKKyAg
ICBkb3VibGUgdGltZXN0YW1wICAgICAgICAgICAgICAgID0gY3VycmVudFRpbWVGb3JFdmVudChl
dmVudCk7CiAgICAgbGFzdFBvcy5zZXQoZXZlbnQtPmxvY2FsUG9zKCkueCgpLCBldmVudC0+bG9j
YWxQb3MoKS55KCkpOwogCiAgICAgcmV0dXJuIFdlYk1vdXNlRXZlbnQodHlwZSwgYnV0dG9uLCBl
dmVudC0+bG9jYWxQb3MoKS50b1BvaW50KCksIGV2ZW50LT5zY3JlZW5Qb3MoKS50b1BvaW50KCks
IGRlbHRhWCwgZGVsdGFZLCAwLjBmLCBjbGlja0NvdW50LCBtb2RpZmllcnMsIHRpbWVzdGFtcCk7
CkBAIC0xMTgsNyArMTMwLDcgQEAgV2ViV2hlZWxFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNyZWF0
ZVdlYldoZWVsRXZlbnQoUVdoZWVsRXZlbnQqIGUpCiAgICAgZmxvYXQgd2hlZWxUaWNrc1kgICAg
ICAgICAgICAgICAgICAgICAgID0gMDsKICAgICBXZWJXaGVlbEV2ZW50OjpHcmFudWxhcml0eSBn
cmFudWxhcml0eSAgPSBXZWJXaGVlbEV2ZW50OjpTY3JvbGxCeVBpeGVsV2hlZWxFdmVudDsKICAg
ICBXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVycyAgICAgICAgICAgPSBtb2RpZmllcnNGb3JF
dmVudChlLT5tb2RpZmllcnMoKSk7Ci0gICAgZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAgICAg
ICAgICAgICAgID0gV1RGOjpjdXJyZW50VGltZSgpOworICAgIGRvdWJsZSB0aW1lc3RhbXAgICAg
ICAgICAgICAgICAgICAgICAgICA9IGN1cnJlbnRUaW1lRm9yRXZlbnQoZSk7CiAKICAgICAvLyBB
IGRlbHRhIHRoYXQgaXMgbm90IG1vZCAxMjAgaW5kaWNhdGVzIGEgZGV2aWNlIHRoYXQgaXMgc2Vu
ZGluZwogICAgIC8vIGZpbmUtcmVzb2x1dGlvbiBzY3JvbGwgZXZlbnRzLCBzbyB1c2UgdGhlIGRl
bHRhIGFzIG51bWJlciBvZiB3aGVlbCB0aWNrcwpAQCAtMTU2LDcgKzE2OCw3IEBAIFdlYktleWJv
YXJkRXZlbnQgV2ViRXZlbnRGYWN0b3J5OjpjcmVhdGVXZWJLZXlib2FyZEV2ZW50KFFLZXlFdmVu
dCogZXZlbnQpCiAgICAgaW50IG5hdGl2ZVZpcnR1YWxLZXlDb2RlICAgICAgICA9IGV2ZW50LT5u
YXRpdmVWaXJ0dWFsS2V5KCk7CiAgICAgaW50IG1hY0NoYXJDb2RlICAgICAgICAgICAgICAgICA9
IDA7CiAgICAgV2ViRXZlbnQ6Ok1vZGlmaWVycyBtb2RpZmllcnMgICA9IG1vZGlmaWVyc0ZvckV2
ZW50KGV2ZW50LT5tb2RpZmllcnMoKSk7Ci0gICAgZG91YmxlIHRpbWVzdGFtcCAgICAgICAgICAg
ICAgICA9IFdURjo6Y3VycmVudFRpbWUoKTsKKyAgICBkb3VibGUgdGltZXN0YW1wICAgICAgICAg
ICAgICAgID0gY3VycmVudFRpbWVGb3JFdmVudChldmVudCk7CiAKICAgICByZXR1cm4gV2ViS2V5
Ym9hcmRFdmVudCh0eXBlLCB0ZXh0LCB1bm1vZGlmaWVkVGV4dCwga2V5SWRlbnRpZmllciwgd2lu
ZG93c1ZpcnR1YWxLZXlDb2RlLCBuYXRpdmVWaXJ0dWFsS2V5Q29kZSwgbWFjQ2hhckNvZGUsIGlz
QXV0b1JlcGVhdCwgaXNLZXlwYWQsIGlzU3lzdGVtS2V5LCBtb2RpZmllcnMsIHRpbWVzdGFtcCk7
CiB9CkBAIC0xNjgsNyArMTgwLDcgQEAgV2ViVG91Y2hFdmVudCBXZWJFdmVudEZhY3Rvcnk6OmNy
ZWF0ZVdlYlRvdWNoRXZlbnQoY29uc3QgUVRvdWNoRXZlbnQqIGV2ZW50KQogICAgIFdlYlBsYXRm
b3JtVG91Y2hQb2ludDo6VG91Y2hQb2ludFN0YXRlIHN0YXRlID0gc3RhdGljX2Nhc3Q8V2ViUGxh
dGZvcm1Ub3VjaFBvaW50OjpUb3VjaFBvaW50U3RhdGU+KDApOwogICAgIHVuc2lnbmVkIGludCBp
ZDsKICAgICBXZWJFdmVudDo6TW9kaWZpZXJzIG1vZGlmaWVycyAgID0gbW9kaWZpZXJzRm9yRXZl
bnQoZXZlbnQtPm1vZGlmaWVycygpKTsKLSAgICBkb3VibGUgdGltZXN0YW1wICAgICAgICAgICAg
ICAgID0gV1RGOjpjdXJyZW50VGltZSgpOworICAgIGRvdWJsZSB0aW1lc3RhbXAgICAgICAgICAg
ICAgICAgPSBjdXJyZW50VGltZUZvckV2ZW50KGV2ZW50KTsKIAogICAgIGNvbnN0IFFMaXN0PFFU
b3VjaEV2ZW50OjpUb3VjaFBvaW50PiYgcG9pbnRzID0gZXZlbnQtPnRvdWNoUG9pbnRzKCk7CiAg
ICAgCi0tIAoxLjcuNy40Cgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>