<?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>147020</bug_id>
          
          <creation_ts>2015-07-16 14:54:29 -0700</creation_ts>
          <short_desc>Improve behavior of media elements in page cache.</short_desc>
          <delta_ts>2016-06-19 17:09:17 -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>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=147254</see_also>
    
    <see_also>https://bugs.webkit.org/show_bug.cgi?id=158914</see_also>
          <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="Andreas Kling">kling</reporter>
          <assigned_to name="Andreas Kling">kling</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>kling</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1109988</commentid>
    <comment_count>0</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-07-16 14:54:29 -0700</bug_when>
    <thetext>Now that we&apos;re caching more pages with media elements, we need to make some improvements to the suspend/resume behavior:

1) Scheduled events should be suspended, not canceled altogether.
2) &lt;source&gt; elements should suspend their error event delivery.
3) When in page cache, network buffering should be turned off.

&lt;rdar://problem/21712311&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110016</commentid>
    <comment_count>1</comment_count>
      <attachid>256936</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-07-16 16:05:46 -0700</bug_when>
    <thetext>Created attachment 256936
Patch for EWS

This patch implements the functionality, but will need tests. Letting EWS have a chew.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110017</commentid>
    <comment_count>2</comment_count>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-07-16 16:09:07 -0700</bug_when>
    <thetext>Thought for posterity: Maybe it would be neat to have event queues that automatically respond to page cache suspend/resume without the owner having to worry about it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110026</commentid>
    <comment_count>3</comment_count>
      <attachid>256936</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-07-16 16:28:15 -0700</bug_when>
    <thetext>Comment on attachment 256936
Patch for EWS

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

&gt; Source/WebCore/html/HTMLSourceElement.cpp:119
&gt; +void HTMLSourceElement::suspendErrorEventDispatch()

Maybe we should just mark HTMLSourceElement as an ActiveDOMObject and have it implement suspend() / resume(). Instead of having HTMLMediaElement worry about the source elements when suspending.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110196</commentid>
    <comment_count>4</comment_count>
      <attachid>256985</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-07-17 13:42:44 -0700</bug_when>
    <thetext>Created attachment 256985
Patch for EWS

Again for EWS with HTMLSourceElement now inheriting from ActiveDOMObject.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110513</commentid>
    <comment_count>5</comment_count>
      <attachid>257065</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2015-07-19 13:33:25 -0700</bug_when>
    <thetext>Created attachment 257065
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110637</commentid>
    <comment_count>6</comment_count>
      <attachid>257065</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2015-07-20 09:32:00 -0700</bug_when>
    <thetext>Comment on attachment 257065
Proposed patch

nice, r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110729</commentid>
    <comment_count>7</comment_count>
      <attachid>257065</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-20 13:17:36 -0700</bug_when>
    <thetext>Comment on attachment 257065
Proposed patch

Clearing flags on attachment: 257065

Committed r187031: &lt;http://trac.webkit.org/changeset/187031&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1110730</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-20 13:17:40 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1203649</commentid>
    <comment_count>9</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2016-06-19 17:09:17 -0700</bug_when>
    <thetext>This broke layout test media/restore-from-page-cache.html for GTK, see bug #158914. Sorry it took a year to be noticed.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256936</attachid>
            <date>2015-07-16 16:05:46 -0700</date>
            <delta_ts>2015-07-17 13:42:44 -0700</delta_ts>
            <desc>Patch for EWS</desc>
            <filename>ews-147020.diff</filename>
            <type>text/plain</type>
            <size>5731</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9HZW5lcmljRXZlbnRRdWV1ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9kb20vR2VuZXJpY0V2ZW50UXVldWUuY3BwCmluZGV4IDEwYzAzNGMuLmZh
Mzk3ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9HZW5lcmljRXZlbnRRdWV1ZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0dlbmVyaWNFdmVudFF1ZXVlLmNwcApAQCAtNDUs
MjAgKzQ1LDIyIEBAIEdlbmVyaWNFdmVudFF1ZXVlOjp+R2VuZXJpY0V2ZW50UXVldWUoKQogewog
fQogCi1ib29sIEdlbmVyaWNFdmVudFF1ZXVlOjplbnF1ZXVlRXZlbnQoUGFzc1JlZlB0cjxFdmVu
dD4gZXZlbnQpCit2b2lkIEdlbmVyaWNFdmVudFF1ZXVlOjplbnF1ZXVlRXZlbnQoUGFzc1JlZlB0
cjxFdmVudD4gZXZlbnQpCiB7CiAgICAgaWYgKG1faXNDbG9zZWQpCi0gICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKGV2ZW50LT50YXJnZXQoKSA9PSAmbV9v
d25lcikKICAgICAgICAgZXZlbnQtPnNldFRhcmdldCgwKTsKIAogICAgIG1fcGVuZGluZ0V2ZW50
cy5hcHBlbmQoZXZlbnQpOworCisgICAgaWYgKG1faXNTdXNwZW5kZWQpCisgICAgICAgIHJldHVy
bjsKKwogICAgIHBlbmRpbmdRdWV1ZXMoKS5hcHBlbmQobV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVX
ZWFrUHRyKCkpOwogICAgIGlmICghc2hhcmVkVGltZXIoKS5pc0FjdGl2ZSgpKQogICAgICAgICBz
aGFyZWRUaW1lcigpLnN0YXJ0T25lU2hvdCgwKTsKLQotICAgIHJldHVybiB0cnVlOwogfQogCiBU
aW1lciYgR2VuZXJpY0V2ZW50UXVldWU6OnNoYXJlZFRpbWVyKCkKQEAgLTEyMCw0ICsxMjIsMjYg
QEAgYm9vbCBHZW5lcmljRXZlbnRRdWV1ZTo6aGFzUGVuZGluZ0V2ZW50cygpIGNvbnN0CiAgICAg
cmV0dXJuICFtX3BlbmRpbmdFdmVudHMuaXNFbXB0eSgpOwogfQogCit2b2lkIEdlbmVyaWNFdmVu
dFF1ZXVlOjpzdXNwZW5kKCkKK3sKKyAgICBBU1NFUlQoIW1faXNTdXNwZW5kZWQpOworICAgIG1f
aXNTdXNwZW5kZWQgPSB0cnVlOworICAgIG1fd2Vha1B0ckZhY3RvcnkucmV2b2tlQWxsKCk7Cit9
CisKK3ZvaWQgR2VuZXJpY0V2ZW50UXVldWU6OnJlc3VtZSgpCit7CisgICAgQVNTRVJUKG1faXNT
dXNwZW5kZWQpOworICAgIG1faXNTdXNwZW5kZWQgPSBmYWxzZTsKKworICAgIGlmIChtX3BlbmRp
bmdFdmVudHMuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3IgKHVuc2lnbmVk
IGkgPSAwOyBpIDwgbV9wZW5kaW5nRXZlbnRzLnNpemUoKTsgKytpKQorICAgICAgICBwZW5kaW5n
UXVldWVzKCkuYXBwZW5kKG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRlV2Vha1B0cigpKTsKKworICAg
IGlmICghc2hhcmVkVGltZXIoKS5pc0FjdGl2ZSgpKQorICAgICAgICBzaGFyZWRUaW1lcigpLnN0
YXJ0T25lU2hvdCgwKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0dl
bmVyaWNFdmVudFF1ZXVlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vR2VuZXJpY0V2ZW50UXVldWUu
aAppbmRleCA2YmE4NmUyLi4yYjVlNDhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
R2VuZXJpY0V2ZW50UXVldWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vR2VuZXJpY0V2ZW50
UXVldWUuaApAQCAtNDIsMTIgKzQyLDE1IEBAIHB1YmxpYzoKICAgICBleHBsaWNpdCBHZW5lcmlj
RXZlbnRRdWV1ZShFdmVudFRhcmdldCYpOwogICAgIH5HZW5lcmljRXZlbnRRdWV1ZSgpOwogCi0g
ICAgYm9vbCBlbnF1ZXVlRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4pOworICAgIHZvaWQgZW5xdWV1
ZUV2ZW50KFBhc3NSZWZQdHI8RXZlbnQ+KTsKICAgICB2b2lkIGNsb3NlKCk7CiAKICAgICB2b2lk
IGNhbmNlbEFsbEV2ZW50cygpOwogICAgIGJvb2wgaGFzUGVuZGluZ0V2ZW50cygpIGNvbnN0Owog
CisgICAgdm9pZCBzdXNwZW5kKCk7CisgICAgdm9pZCByZXN1bWUoKTsKKwogcHJpdmF0ZToKICAg
ICBzdGF0aWMgVGltZXImIHNoYXJlZFRpbWVyKCk7CiAgICAgc3RhdGljIHZvaWQgc2hhcmVkVGlt
ZXJGaXJlZCgpOwpAQCAtNTksNiArNjIsNyBAQCBwcml2YXRlOgogICAgIERlcXVlPFJlZlB0cjxF
dmVudD4+IG1fcGVuZGluZ0V2ZW50czsKICAgICBXZWFrUHRyRmFjdG9yeTxHZW5lcmljRXZlbnRR
dWV1ZT4gbV93ZWFrUHRyRmFjdG9yeTsKICAgICBib29sIG1faXNDbG9zZWQ7CisgICAgYm9vbCBt
X2lzU3VzcGVuZGVkIHsgZmFsc2UgfTsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuY3BwCmluZGV4IGM3MmQ0ZjcuLmI3ZDYyZDkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtNDg5MCw5ICs0ODkwLDYgQEAgdm9pZCBIVE1M
TWVkaWFFbGVtZW50OjpzdG9wV2l0aG91dERlc3Ryb3lpbmdNZWRpYVBsYXllcigpCiAgICAgICAg
IHJlbmRlcmVyKCktPnVwZGF0ZUZyb21FbGVtZW50KCk7CiAgICAgCiAgICAgc3RvcFBlcmlvZGlj
VGltZXJzKCk7Ci0gICAgY2FuY2VsUGVuZGluZ0V2ZW50c0FuZENhbGxiYWNrcygpOwotCi0gICAg
bV9hc3luY0V2ZW50UXVldWUuY2xvc2UoKTsKIAogICAgIHVwZGF0ZVNsZWVwRGlzYWJsaW5nKCk7
CiB9CkBAIC00OTAzLDYgKzQ5MDAsOSBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnN0b3AoKQog
CiAgICAgc3RvcFdpdGhvdXREZXN0cm95aW5nTWVkaWFQbGF5ZXIoKTsKIAorICAgIGNhbmNlbFBl
bmRpbmdFdmVudHNBbmRDYWxsYmFja3MoKTsKKyAgICBtX2FzeW5jRXZlbnRRdWV1ZS5jbG9zZSgp
OworCiAgICAgLy8gT25jZSBhbiBhY3RpdmUgRE9NIG9iamVjdCBoYXMgYmVlbiBzdG9wcGVkIGl0
IGNhbiBub3QgYmUgcmVzdGFydGVkLCBzbyB3ZSBjYW4gZGVhbGxvY2F0ZQogICAgIC8vIHRoZSBt
ZWRpYSBwbGF5ZXIgbm93LiBOb3RlIHRoYXQgdXNlckNhbmNlbGxlZExvYWQgd2lsbCBhbHJlYWR5
IGNhbGxlZCBjbGVhck1lZGlhUGxheWVyCiAgICAgLy8gaWYgdGhlIG1lZGlhIHdhcyBub3QgZnVs
bHkgbG9hZGVkLCBidXQgd2UgbmVlZCB0aGUgc2FtZSBjbGVhbnVwIGlmIHRoZSBmaWxlIHdhcyBj
b21wbGV0ZWx5CkBAIC00OTE4LDYgKzQ5MTgsMTAgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50Ojpz
dXNwZW5kKFJlYXNvbkZvclN1c3BlbnNpb24gd2h5KQogICAgIHsKICAgICAgICAgY2FzZSBQYWdl
Q2FjaGU6CiAgICAgICAgICAgICBzdG9wV2l0aG91dERlc3Ryb3lpbmdNZWRpYVBsYXllcigpOwor
ICAgICAgICAgICAgbV9hc3luY0V2ZW50UXVldWUuc3VzcGVuZCgpOworICAgICAgICAgICAgZm9y
IChhdXRvJiBzb3VyY2UgOiBjaGlsZHJlbk9mVHlwZTxIVE1MU291cmNlRWxlbWVudD4oKnRoaXMp
KQorICAgICAgICAgICAgICAgIHNvdXJjZS5zdXNwZW5kRXJyb3JFdmVudERpc3BhdGNoKCk7Cisg
ICAgICAgICAgICBzZXRTaG91bGRCdWZmZXJEYXRhKGZhbHNlKTsKICAgICAgICAgICAgIG1fbWVk
aWFTZXNzaW9uLT5hZGRCZWhhdmlvclJlc3RyaWN0aW9uKE1lZGlhRWxlbWVudFNlc3Npb246OlJl
cXVpcmVQYWdlQ29uc2VudFRvUmVzdW1lTWVkaWEpOwogICAgICAgICAgICAgYnJlYWs7CiAgICAg
ICAgIGNhc2UgRG9jdW1lbnRXaWxsQmVQYXVzZWQ6CkBAIC00OTM1LDYgKzQ5MzksMTMgQEAgdm9p
ZCBIVE1MTWVkaWFFbGVtZW50OjpyZXN1bWUoKQogCiAgICAgbV9pbkFjdGl2ZURvY3VtZW50ID0g
dHJ1ZTsKIAorICAgIG1fYXN5bmNFdmVudFF1ZXVlLnJlc3VtZSgpOworCisgICAgZm9yIChhdXRv
JiBzb3VyY2UgOiBjaGlsZHJlbk9mVHlwZTxIVE1MU291cmNlRWxlbWVudD4oKnRoaXMpKQorICAg
ICAgICBzb3VyY2UucmVzdW1lRXJyb3JFdmVudERpc3BhdGNoKCk7CisKKyAgICBzZXRTaG91bGRC
dWZmZXJEYXRhKHRydWUpOworCiAgICAgaWYgKCFtX21lZGlhU2Vzc2lvbi0+cGFnZUFsbG93c1Bs
YXliYWNrQWZ0ZXJSZXN1bWluZygqdGhpcykpCiAgICAgICAgIGRvY3VtZW50KCkuYWRkTWVkaWFD
YW5TdGFydExpc3RlbmVyKHRoaXMpOwogICAgIGVsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
U291cmNlRWxlbWVudC5jcHAKaW5kZXggMzAxOTUxYy4uZmQ1NWUyNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MU291cmNlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MU291cmNlRWxlbWVudC5jcHAKQEAgLTExNiw2ICsxMTYsMjEgQEAgdm9pZCBI
VE1MU291cmNlRWxlbWVudDo6ZXJyb3JFdmVudFRpbWVyRmlyZWQoKQogICAgIGRpc3BhdGNoRXZl
bnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkuZXJyb3JFdmVudCwgZmFsc2UsIHRydWUpKTsK
IH0KIAordm9pZCBIVE1MU291cmNlRWxlbWVudDo6c3VzcGVuZEVycm9yRXZlbnREaXNwYXRjaCgp
Cit7CisgICAgbV9zaG91bGRSZXNjaGVkdWxlRXJyb3JFdmVudE9uUmVzdW1lID0gbV9lcnJvckV2
ZW50VGltZXIuaXNBY3RpdmUoKTsKKyAgICBtX2Vycm9yRXZlbnRUaW1lci5zdG9wKCk7Cit9CisK
K3ZvaWQgSFRNTFNvdXJjZUVsZW1lbnQ6OnJlc3VtZUVycm9yRXZlbnREaXNwYXRjaCgpCit7Cisg
ICAgQVNTRVJUKCFtX2Vycm9yRXZlbnRUaW1lci5pc0FjdGl2ZSgpKTsKKyAgICBpZiAobV9zaG91
bGRSZXNjaGVkdWxlRXJyb3JFdmVudE9uUmVzdW1lKSB7CisgICAgICAgIG1fZXJyb3JFdmVudFRp
bWVyLnN0YXJ0T25lU2hvdCgwKTsKKyAgICAgICAgbV9zaG91bGRSZXNjaGVkdWxlRXJyb3JFdmVu
dE9uUmVzdW1lID0gZmFsc2U7CisgICAgfQorfQorCiBib29sIEhUTUxTb3VyY2VFbGVtZW50Ojpp
c1VSTEF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmIGF0dHJpYnV0ZSkgY29uc3QKIHsKICAgICBy
ZXR1cm4gYXR0cmlidXRlLm5hbWUoKSA9PSBzcmNBdHRyIHx8IEhUTUxFbGVtZW50Ojppc1VSTEF0
dHJpYnV0ZShhdHRyaWJ1dGUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
U291cmNlRWxlbWVudC5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU291cmNlRWxlbWVudC5o
CmluZGV4IDFkZjMxYzEuLjk2NDg4NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFNvdXJjZUVsZW1lbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTb3VyY2VF
bGVtZW50LmgKQEAgLTQ1LDYgKzQ1LDkgQEAgcHVibGljOgogICAgIHZvaWQgc2NoZWR1bGVFcnJv
ckV2ZW50KCk7CiAgICAgdm9pZCBjYW5jZWxQZW5kaW5nRXJyb3JFdmVudCgpOwogCisgICAgdm9p
ZCBzdXNwZW5kRXJyb3JFdmVudERpc3BhdGNoKCk7CisgICAgdm9pZCByZXN1bWVFcnJvckV2ZW50
RGlzcGF0Y2goKTsKKwogcHJpdmF0ZToKICAgICBIVE1MU291cmNlRWxlbWVudChjb25zdCBRdWFs
aWZpZWROYW1lJiwgRG9jdW1lbnQmKTsKICAgICAKQEAgLTU1LDYgKzU4LDcgQEAgcHJpdmF0ZToK
ICAgICB2b2lkIGVycm9yRXZlbnRUaW1lckZpcmVkKCk7CiAKICAgICBUaW1lciBtX2Vycm9yRXZl
bnRUaW1lcjsKKyAgICBib29sIG1fc2hvdWxkUmVzY2hlZHVsZUVycm9yRXZlbnRPblJlc3VtZSB7
IGZhbHNlIH07CiB9OwogCiB9IC8vbmFtZXNwYWNlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256985</attachid>
            <date>2015-07-17 13:42:44 -0700</date>
            <delta_ts>2015-07-19 13:33:25 -0700</delta_ts>
            <desc>Patch for EWS</desc>
            <filename>ews-147020-2.diff</filename>
            <type>text/plain</type>
            <size>6316</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9HZW5lcmljRXZlbnRRdWV1ZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9kb20vR2VuZXJpY0V2ZW50UXVldWUuY3BwCmluZGV4IDEwYzAzNGMuLmZh
Mzk3ZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9HZW5lcmljRXZlbnRRdWV1ZS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0dlbmVyaWNFdmVudFF1ZXVlLmNwcApAQCAtNDUs
MjAgKzQ1LDIyIEBAIEdlbmVyaWNFdmVudFF1ZXVlOjp+R2VuZXJpY0V2ZW50UXVldWUoKQogewog
fQogCi1ib29sIEdlbmVyaWNFdmVudFF1ZXVlOjplbnF1ZXVlRXZlbnQoUGFzc1JlZlB0cjxFdmVu
dD4gZXZlbnQpCit2b2lkIEdlbmVyaWNFdmVudFF1ZXVlOjplbnF1ZXVlRXZlbnQoUGFzc1JlZlB0
cjxFdmVudD4gZXZlbnQpCiB7CiAgICAgaWYgKG1faXNDbG9zZWQpCi0gICAgICAgIHJldHVybiBm
YWxzZTsKKyAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKGV2ZW50LT50YXJnZXQoKSA9PSAmbV9v
d25lcikKICAgICAgICAgZXZlbnQtPnNldFRhcmdldCgwKTsKIAogICAgIG1fcGVuZGluZ0V2ZW50
cy5hcHBlbmQoZXZlbnQpOworCisgICAgaWYgKG1faXNTdXNwZW5kZWQpCisgICAgICAgIHJldHVy
bjsKKwogICAgIHBlbmRpbmdRdWV1ZXMoKS5hcHBlbmQobV93ZWFrUHRyRmFjdG9yeS5jcmVhdGVX
ZWFrUHRyKCkpOwogICAgIGlmICghc2hhcmVkVGltZXIoKS5pc0FjdGl2ZSgpKQogICAgICAgICBz
aGFyZWRUaW1lcigpLnN0YXJ0T25lU2hvdCgwKTsKLQotICAgIHJldHVybiB0cnVlOwogfQogCiBU
aW1lciYgR2VuZXJpY0V2ZW50UXVldWU6OnNoYXJlZFRpbWVyKCkKQEAgLTEyMCw0ICsxMjIsMjYg
QEAgYm9vbCBHZW5lcmljRXZlbnRRdWV1ZTo6aGFzUGVuZGluZ0V2ZW50cygpIGNvbnN0CiAgICAg
cmV0dXJuICFtX3BlbmRpbmdFdmVudHMuaXNFbXB0eSgpOwogfQogCit2b2lkIEdlbmVyaWNFdmVu
dFF1ZXVlOjpzdXNwZW5kKCkKK3sKKyAgICBBU1NFUlQoIW1faXNTdXNwZW5kZWQpOworICAgIG1f
aXNTdXNwZW5kZWQgPSB0cnVlOworICAgIG1fd2Vha1B0ckZhY3RvcnkucmV2b2tlQWxsKCk7Cit9
CisKK3ZvaWQgR2VuZXJpY0V2ZW50UXVldWU6OnJlc3VtZSgpCit7CisgICAgQVNTRVJUKG1faXNT
dXNwZW5kZWQpOworICAgIG1faXNTdXNwZW5kZWQgPSBmYWxzZTsKKworICAgIGlmIChtX3BlbmRp
bmdFdmVudHMuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CisKKyAgICBmb3IgKHVuc2lnbmVk
IGkgPSAwOyBpIDwgbV9wZW5kaW5nRXZlbnRzLnNpemUoKTsgKytpKQorICAgICAgICBwZW5kaW5n
UXVldWVzKCkuYXBwZW5kKG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRlV2Vha1B0cigpKTsKKworICAg
IGlmICghc2hhcmVkVGltZXIoKS5pc0FjdGl2ZSgpKQorICAgICAgICBzaGFyZWRUaW1lcigpLnN0
YXJ0T25lU2hvdCgwKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0dl
bmVyaWNFdmVudFF1ZXVlLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vR2VuZXJpY0V2ZW50UXVldWUu
aAppbmRleCA2YmE4NmUyLi4yYjVlNDhhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
R2VuZXJpY0V2ZW50UXVldWUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vR2VuZXJpY0V2ZW50
UXVldWUuaApAQCAtNDIsMTIgKzQyLDE1IEBAIHB1YmxpYzoKICAgICBleHBsaWNpdCBHZW5lcmlj
RXZlbnRRdWV1ZShFdmVudFRhcmdldCYpOwogICAgIH5HZW5lcmljRXZlbnRRdWV1ZSgpOwogCi0g
ICAgYm9vbCBlbnF1ZXVlRXZlbnQoUGFzc1JlZlB0cjxFdmVudD4pOworICAgIHZvaWQgZW5xdWV1
ZUV2ZW50KFBhc3NSZWZQdHI8RXZlbnQ+KTsKICAgICB2b2lkIGNsb3NlKCk7CiAKICAgICB2b2lk
IGNhbmNlbEFsbEV2ZW50cygpOwogICAgIGJvb2wgaGFzUGVuZGluZ0V2ZW50cygpIGNvbnN0Owog
CisgICAgdm9pZCBzdXNwZW5kKCk7CisgICAgdm9pZCByZXN1bWUoKTsKKwogcHJpdmF0ZToKICAg
ICBzdGF0aWMgVGltZXImIHNoYXJlZFRpbWVyKCk7CiAgICAgc3RhdGljIHZvaWQgc2hhcmVkVGlt
ZXJGaXJlZCgpOwpAQCAtNTksNiArNjIsNyBAQCBwcml2YXRlOgogICAgIERlcXVlPFJlZlB0cjxF
dmVudD4+IG1fcGVuZGluZ0V2ZW50czsKICAgICBXZWFrUHRyRmFjdG9yeTxHZW5lcmljRXZlbnRR
dWV1ZT4gbV93ZWFrUHRyRmFjdG9yeTsKICAgICBib29sIG1faXNDbG9zZWQ7CisgICAgYm9vbCBt
X2lzU3VzcGVuZGVkIHsgZmFsc2UgfTsKIH07CiAKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxN
ZWRpYUVsZW1lbnQuY3BwCmluZGV4IGM3MmQ0ZjcuLmFhYzhiYjYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcApAQCAtNDg5MCw5ICs0ODkwLDYgQEAgdm9pZCBIVE1M
TWVkaWFFbGVtZW50OjpzdG9wV2l0aG91dERlc3Ryb3lpbmdNZWRpYVBsYXllcigpCiAgICAgICAg
IHJlbmRlcmVyKCktPnVwZGF0ZUZyb21FbGVtZW50KCk7CiAgICAgCiAgICAgc3RvcFBlcmlvZGlj
VGltZXJzKCk7Ci0gICAgY2FuY2VsUGVuZGluZ0V2ZW50c0FuZENhbGxiYWNrcygpOwotCi0gICAg
bV9hc3luY0V2ZW50UXVldWUuY2xvc2UoKTsKIAogICAgIHVwZGF0ZVNsZWVwRGlzYWJsaW5nKCk7
CiB9CkBAIC00OTAzLDYgKzQ5MDAsOCBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnN0b3AoKQog
CiAgICAgc3RvcFdpdGhvdXREZXN0cm95aW5nTWVkaWFQbGF5ZXIoKTsKIAorICAgIG1fYXN5bmNF
dmVudFF1ZXVlLmNsb3NlKCk7CisKICAgICAvLyBPbmNlIGFuIGFjdGl2ZSBET00gb2JqZWN0IGhh
cyBiZWVuIHN0b3BwZWQgaXQgY2FuIG5vdCBiZSByZXN0YXJ0ZWQsIHNvIHdlIGNhbiBkZWFsbG9j
YXRlCiAgICAgLy8gdGhlIG1lZGlhIHBsYXllciBub3cuIE5vdGUgdGhhdCB1c2VyQ2FuY2VsbGVk
TG9hZCB3aWxsIGFscmVhZHkgY2FsbGVkIGNsZWFyTWVkaWFQbGF5ZXIKICAgICAvLyBpZiB0aGUg
bWVkaWEgd2FzIG5vdCBmdWxseSBsb2FkZWQsIGJ1dCB3ZSBuZWVkIHRoZSBzYW1lIGNsZWFudXAg
aWYgdGhlIGZpbGUgd2FzIGNvbXBsZXRlbHkKQEAgLTQ5MTgsNiArNDkxNyw4IEBAIHZvaWQgSFRN
TE1lZGlhRWxlbWVudDo6c3VzcGVuZChSZWFzb25Gb3JTdXNwZW5zaW9uIHdoeSkKICAgICB7CiAg
ICAgICAgIGNhc2UgUGFnZUNhY2hlOgogICAgICAgICAgICAgc3RvcFdpdGhvdXREZXN0cm95aW5n
TWVkaWFQbGF5ZXIoKTsKKyAgICAgICAgICAgIG1fYXN5bmNFdmVudFF1ZXVlLnN1c3BlbmQoKTsK
KyAgICAgICAgICAgIHNldFNob3VsZEJ1ZmZlckRhdGEoZmFsc2UpOwogICAgICAgICAgICAgbV9t
ZWRpYVNlc3Npb24tPmFkZEJlaGF2aW9yUmVzdHJpY3Rpb24oTWVkaWFFbGVtZW50U2Vzc2lvbjo6
UmVxdWlyZVBhZ2VDb25zZW50VG9SZXN1bWVNZWRpYSk7CiAgICAgICAgICAgICBicmVhazsKICAg
ICAgICAgY2FzZSBEb2N1bWVudFdpbGxCZVBhdXNlZDoKQEAgLTQ5MzUsNiArNDkzNiwxMCBAQCB2
b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OnJlc3VtZSgpCiAKICAgICBtX2luQWN0aXZlRG9jdW1lbnQg
PSB0cnVlOwogCisgICAgbV9hc3luY0V2ZW50UXVldWUucmVzdW1lKCk7CisKKyAgICBzZXRTaG91
bGRCdWZmZXJEYXRhKHRydWUpOworCiAgICAgaWYgKCFtX21lZGlhU2Vzc2lvbi0+cGFnZUFsbG93
c1BsYXliYWNrQWZ0ZXJSZXN1bWluZygqdGhpcykpCiAgICAgICAgIGRvY3VtZW50KCkuYWRkTWVk
aWFDYW5TdGFydExpc3RlbmVyKHRoaXMpOwogICAgIGVsc2UKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MU291cmNlRWxlbWVudC5jcHAKaW5kZXggMzAxOTUxYy4uMzI0ZjVkOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU291cmNlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MU291cmNlRWxlbWVudC5jcHAKQEAgLTQwLDYgKzQwLDcgQEAgdXNpbmcg
bmFtZXNwYWNlIEhUTUxOYW1lczsKIAogaW5saW5lIEhUTUxTb3VyY2VFbGVtZW50OjpIVE1MU291
cmNlRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZG9jdW1l
bnQpCiAgICAgOiBIVE1MRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKKyAgICAsIEFjdGl2ZURP
TU9iamVjdCgmZG9jdW1lbnQpCiAgICAgLCBtX2Vycm9yRXZlbnRUaW1lcigqdGhpcywgJkhUTUxT
b3VyY2VFbGVtZW50OjplcnJvckV2ZW50VGltZXJGaXJlZCkKIHsKICAgICBMT0coTWVkaWEsICJI
VE1MU291cmNlRWxlbWVudDo6SFRNTFNvdXJjZUVsZW1lbnQgLSAlcCIsIHRoaXMpOwpAQCAtMTIx
LDYgKzEyMiwzNyBAQCBib29sIEhUTUxTb3VyY2VFbGVtZW50Ojppc1VSTEF0dHJpYnV0ZShjb25z
dCBBdHRyaWJ1dGUmIGF0dHJpYnV0ZSkgY29uc3QKICAgICByZXR1cm4gYXR0cmlidXRlLm5hbWUo
KSA9PSBzcmNBdHRyIHx8IEhUTUxFbGVtZW50Ojppc1VSTEF0dHJpYnV0ZShhdHRyaWJ1dGUpOwog
fQogCitjb25zdCBjaGFyKiBIVE1MU291cmNlRWxlbWVudDo6YWN0aXZlRE9NT2JqZWN0TmFtZSgp
IGNvbnN0Cit7CisgICAgcmV0dXJuICJIVE1MU291cmNlRWxlbWVudCI7Cit9CisKK2Jvb2wgSFRN
TFNvdXJjZUVsZW1lbnQ6OmNhblN1c3BlbmRGb3JQYWdlQ2FjaGUoKSBjb25zdAoreworICAgIHJl
dHVybiB0cnVlOworfQorCit2b2lkIEhUTUxTb3VyY2VFbGVtZW50OjpzdXNwZW5kKFJlYXNvbkZv
clN1c3BlbnNpb24gd2h5KQoreworICAgIGlmICh3aHkgPT0gUGFnZUNhY2hlKSB7CisgICAgICAg
IG1fc2hvdWxkUmVzY2hlZHVsZUVycm9yRXZlbnRPblJlc3VtZSA9IG1fZXJyb3JFdmVudFRpbWVy
LmlzQWN0aXZlKCk7CisgICAgICAgIG1fZXJyb3JFdmVudFRpbWVyLnN0b3AoKTsKKyAgICB9Cit9
CisKK3ZvaWQgSFRNTFNvdXJjZUVsZW1lbnQ6OnJlc3VtZSgpCit7CisgICAgaWYgKG1fc2hvdWxk
UmVzY2hlZHVsZUVycm9yRXZlbnRPblJlc3VtZSkgeworICAgICAgICBtX2Vycm9yRXZlbnRUaW1l
ci5zdGFydE9uZVNob3QoMCk7CisgICAgICAgIG1fc2hvdWxkUmVzY2hlZHVsZUVycm9yRXZlbnRP
blJlc3VtZSA9IGZhbHNlOworICAgIH0KK30KKwordm9pZCBIVE1MU291cmNlRWxlbWVudDo6c3Rv
cCgpCit7CisgICAgY2FuY2VsUGVuZGluZ0Vycm9yRXZlbnQoKTsKK30KKwogfQogCiAjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuaAppbmRleCAxZGYzMWMxLi5mMzcz
ZmI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxTb3VyY2VFbGVtZW50LmgK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU291cmNlRWxlbWVudC5oCkBAIC0zMiw3ICsz
Miw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgSFRNTFNvdXJjZUVsZW1lbnQg
ZmluYWwgOiBwdWJsaWMgSFRNTEVsZW1lbnQgeworY2xhc3MgSFRNTFNvdXJjZUVsZW1lbnQgZmlu
YWwgOiBwdWJsaWMgSFRNTEVsZW1lbnQsIHB1YmxpYyBBY3RpdmVET01PYmplY3QgewogcHVibGlj
OgogICAgIHN0YXRpYyBSZWY8SFRNTFNvdXJjZUVsZW1lbnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZp
ZWROYW1lJiwgRG9jdW1lbnQmKTsKIApAQCAtNTIsOSArNTIsMTcgQEAgcHJpdmF0ZToKICAgICB2
aXJ0dWFsIHZvaWQgcmVtb3ZlZEZyb20oQ29udGFpbmVyTm9kZSYpIG92ZXJyaWRlOwogICAgIHZp
cnR1YWwgYm9vbCBpc1VSTEF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmKSBjb25zdCBvdmVycmlk
ZTsKIAorICAgIC8vIEFjdGl2ZURPTU9iamVjdC4KKyAgICBjb25zdCBjaGFyKiBhY3RpdmVET01P
YmplY3ROYW1lKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgYm9vbCBjYW5TdXNwZW5kRm9yUGFnZUNh
Y2hlKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBzdXNwZW5kKFJlYXNvbkZvclN1c3BlbnNp
b24pIG92ZXJyaWRlOworICAgIHZvaWQgcmVzdW1lKCkgb3ZlcnJpZGU7CisgICAgdm9pZCBzdG9w
KCkgb3ZlcnJpZGU7CisKICAgICB2b2lkIGVycm9yRXZlbnRUaW1lckZpcmVkKCk7CiAKICAgICBU
aW1lciBtX2Vycm9yRXZlbnRUaW1lcjsKKyAgICBib29sIG1fc2hvdWxkUmVzY2hlZHVsZUVycm9y
RXZlbnRPblJlc3VtZSB7IGZhbHNlIH07CiB9OwogCiB9IC8vbmFtZXNwYWNlCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>257065</attachid>
            <date>2015-07-19 13:33:25 -0700</date>
            <delta_ts>2015-07-20 13:17:36 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-147020.diff</filename>
            <type>text/plain</type>
            <size>13066</size>
            <attacher name="Andreas Kling">kling</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1NjY5ZjE3Li5iOTA1NDVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTUtMDct
MTkgIEFuZHJlYXMgS2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAgICAgIEltcHJvdmUg
YmVoYXZpb3Igb2YgbWVkaWEgZWxlbWVudHMgaW4gcGFnZSBjYWNoZS4KKyAgICAgICAgPGh0dHBz
Oi8vd2Via2l0Lm9yZy9iLzE0NzAyMD4KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIxNzEyMzEx
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBz
b21lIGNvdmVyYWdlIGZvciBzdXNwZW5kL3Jlc3VtZSBvZiBxdWV1ZWQgZXZlbnRzIG9uIGNhY2hl
ZCBtZWRpYSBlbGVtZW50cy4KKworICAgICAgICAqIG1lZGlhL3Jlc3RvcmUtZnJvbS1wYWdlLWNh
Y2hlLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBtZWRpYS9yZXN0b3JlLWZyb20tcGFnZS1jYWNo
ZS5odG1sOgorCiAyMDE1LTA3LTE2ICBEYXZpZCBLaWx6ZXIgIDxkZGtpbHplckBhcHBsZS5jb20+
CiAKICAgICAgICAgTWFyayBmYXN0L2NhbnZhcy9jYW52YXMtdG9vLWxhcmdlLXRvLWRyYXcuaHRt
bCBhcyBjcmFzaGluZyBvbiBFbCBDYXBpdGFuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRp
YS9yZXN0b3JlLWZyb20tcGFnZS1jYWNoZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRp
YS9yZXN0b3JlLWZyb20tcGFnZS1jYWNoZS1leHBlY3RlZC50eHQKaW5kZXggZTA0YjFlZC4uM2M2
MTZlMSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvcmVzdG9yZS1mcm9tLXBhZ2UtY2Fj
aGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3Jlc3RvcmUtZnJvbS1wYWdl
LWNhY2hlLWV4cGVjdGVkLnR4dApAQCAtNSw4ICs1LDEyIEBAIEVWRU5UKGxvYWRzdGFydCkKIEVW
RU5UKGNhbnBsYXl0aHJvdWdoKQogRVhQRUNURUQgKGxvYWRDb3VudCA9PSAnMCcpIE9LCiAqKiog
UGFnZSBnb2luZyBpbnRvIGNhY2hlCisqKiogQ2hhbmdpbmcgcGxheWJhY2tSYXRlIGp1c3QgYmVm
b3JlIGdvaW5nIGludG8gY2FjaGUsIHRvIHNjaGVkdWxlIGEgcmF0ZWNoYW5nZSBldmVudC4KKyoq
KiBDaGFuZ2luZyB2b2x1bWUganVzdCBiZWZvcmUgZ29pbmcgaW50byBjYWNoZSwgdG8gc2NoZWR1
bGUgYSB2b2x1bWVjaGFuZ2UgZXZlbnQuCiAqKiogUGFnZSByZXR1cm5lZCBmcm9tIGNhY2hlCiBF
WFBFQ1RFRCAobG9hZENvdW50ID09ICcxJykgT0sKIEVYUEVDVEVEICh2aWRlb0NvbXB1dGVkU3R5
bGUud2lkdGggPT0gJzMyMHB4JykgT0sKIEVYUEVDVEVEICh2aWRlb0NvbXB1dGVkU3R5bGUuaGVp
Z2h0ID09ICcyNDBweCcpIE9LCisqKiogcmF0ZWNoYW5nZSBldmVudCBmaXJlZC4gVGhpcyBzaG91
bGQgaGFwcGVuIEFGVEVSIHJldHVybmluZyBmcm9tIGNhY2hlLgorKioqIHZvbHVtZWNoYW5nZSBl
dmVudCBmaXJlZC4gVGhpcyBzaG91bGQgaGFwcGVuIEFGVEVSIHJldHVybmluZyBmcm9tIGNhY2hl
LgogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS9yZXN0b3JlLWZyb20tcGFnZS1jYWNo
ZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvcmVzdG9yZS1mcm9tLXBhZ2UtY2FjaGUuaHRtbApp
bmRleCA0ODMzNjIyLi41YzE0NTRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9yZXN0
b3JlLWZyb20tcGFnZS1jYWNoZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3Jlc3RvcmUt
ZnJvbS1wYWdlLWNhY2hlLmh0bWwKQEAgLTMzLDE3ICszMywzMyBAQAogICAgICAgICAgICAgICAg
ICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeyBpZiAod2luZG93LnRlc3RSdW5uZXIpIHRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOyB9LCAyMDApOwogICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIH0KLSAgICAgICAgICAgICAgICAKKworICAgICAgICAgICAgZnVuY3Rpb24gcGFnZWhpZGUo
KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIC8vIEhhdmUgdGhlIHZpZGVvIGVsZW1l
bnQgZ2VuZXJhdGUgc29tZSBldmVudHMgdGhhdCBuZWVkIHRvIGJlIHN1c3BlbmRlZC4KKyAgICAg
ICAgICAgICAgICAvLyBXZSB1c2UgbXVsdGlwbGUgZXZlbnRzIHRvIHZlcmlmeSB0aGF0IHRoZXkg
ZmlyZSBpbiB0aGUgY29ycmVjdCBvcmRlci4KKyAgICAgICAgICAgICAgICBjb25zb2xlV3JpdGUo
IioqKiBDaGFuZ2luZyBwbGF5YmFja1JhdGUganVzdCBiZWZvcmUgZ29pbmcgaW50byBjYWNoZSwg
dG8gc2NoZWR1bGUgYSByYXRlY2hhbmdlIGV2ZW50LiIpOworICAgICAgICAgICAgICAgIGRvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJ2aWRlbyIpWzBdLnBsYXliYWNrUmF0ZSA9IDI7IAor
ICAgICAgICAgICAgICAgIGNvbnNvbGVXcml0ZSgiKioqIENoYW5naW5nIHZvbHVtZSBqdXN0IGJl
Zm9yZSBnb2luZyBpbnRvIGNhY2hlLCB0byBzY2hlZHVsZSBhIHZvbHVtZWNoYW5nZSBldmVudC4i
KTsKKyAgICAgICAgICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgidmlkZW8i
KVswXS52b2x1bWUgPSAwLjU7IAorICAgICAgICAgICAgfQorCiAgICAgICAgICAgICBmdW5jdGlv
biBjYW5wbGF5dGhyb3VnaCgpIAogICAgICAgICAgICAgewogICAgICAgICAgICAgICAgIHRlc3RF
eHBlY3RlZCgibG9hZENvdW50IiwgMCk7CiAgICAgICAgICAgICAgICAgaWYgKCFsb2FkQ291bnQp
IHsKKyAgICAgICAgICAgICAgICAgICAgdmlkZW8gPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFn
TmFtZSgndmlkZW8nKVswXTsKICAgICAgICAgICAgICAgICAgICAgY29uc29sZVdyaXRlKCIqKiog
UGFnZSBnb2luZyBpbnRvIGNhY2hlIik7CiAgICAgICAgICAgICAgICAgICAgIHNldFRpbWVvdXQo
J3dpbmRvdy5sb2NhdGlvbiA9ICJkYXRhOnRleHQvaHRtbCw8c2NyaXB0Pmhpc3RvcnkuYmFjaygp
PCIgKyAiL3NjcmlwdD4iJywgMCk7CiAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAg
ICsrbG9hZENvdW50OwogICAgICAgICAgICAgfQogCisgICAgICAgICAgICBmdW5jdGlvbiBwcm9w
ZXJ0eUNoYW5nZUNhbGxiYWNrKGV2dCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBj
b25zb2xlV3JpdGUoIioqKiAiICsgZXZ0LnR5cGUgKyAgIiBldmVudCBmaXJlZC4gVGhpcyBzaG91
bGQgaGFwcGVuIEFGVEVSIHJldHVybmluZyBmcm9tIGNhY2hlLiIpOworICAgICAgICAgICAgfQor
CiAgICAgICAgICAgICBmdW5jdGlvbiBzZXR1cCgpCiAgICAgICAgICAgICB7CiAgICAgICAgICAg
ICAgICAgdmlkZW8gPSBtZWRpYUVsZW1lbnQgPSBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFt
ZSgndmlkZW8nKVswXTsKQEAgLTUyLDkgKzY4LDEzIEBACiAgICAgICAgICAgICAgICAgd2FpdEZv
ckV2ZW50KCdjYW5wbGF5dGhyb3VnaCcsIGNhbnBsYXl0aHJvdWdoKTsKICAgICAgICAgICAgICAg
ICAKICAgICAgICAgICAgICAgICB2aWRlby5zcmMgPSBtZWRpYUZpbGU7CisKKyAgICAgICAgICAg
ICAgICB2aWRlby5vbnJhdGVjaGFuZ2UgPSBwcm9wZXJ0eUNoYW5nZUNhbGxiYWNrOworICAgICAg
ICAgICAgICAgIHZpZGVvLm9udm9sdW1lY2hhbmdlID0gcHJvcGVydHlDaGFuZ2VDYWxsYmFjazsK
ICAgICAgICAgICAgIH0KIAogICAgICAgICAgICAgd2luZG93Lm9ucGFnZXNob3cgPSBwYWdlc2hv
dzsKKyAgICAgICAgICAgIHdpbmRvdy5vbnBhZ2VoaWRlID0gcGFnZWhpZGU7CiAgICAgICAgIDwv
c2NyaXB0PgogICAgIDwvaGVhZD4KICAgICA8Ym9keT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyYjI5NjNiLi4w
MGVjMjk2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNTMgQEAKKzIwMTUtMDctMTkgIEFuZHJlYXMg
S2xpbmcgIDxha2xpbmdAYXBwbGUuY29tPgorCisgICAgICAgIEltcHJvdmUgYmVoYXZpb3Igb2Yg
bWVkaWEgZWxlbWVudHMgaW4gcGFnZSBjYWNoZS4KKyAgICAgICAgPGh0dHBzOi8vd2Via2l0Lm9y
Zy9iLzE0NzAyMD4KKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzIxNzEyMzExPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIE1ha2UgaW1wcm92ZW1lbnRz
IGZvciBtZWRpYSBlbGVtZW50cyB3aGVuIHRyYW5zaXRpb25pbmcgaW4vb3V0IG9mIHBhZ2UgY2Fj
aGU6CisKKyAgICAgICAgLSBFdmVudHMgdGhhdCB3ZXJlIHNjaGVkdWxlZCB3aGVuIGdvaW5nIGlu
dG8gY2FjaGUgd2lsbCBub3cgYmUgZGVsaXZlcmVkCisgICAgICAgICAgd2hlbiB0aGUgcGFnZSBp
cyByZXN0b3JlZCBmcm9tIGNhY2hlLgorCisgICAgICAgIC0gRGF0YSBidWZmZXJpbmcgaXMgdHVy
bmVkIG9mZiB3aGlsZSBpbiB0aGUgY2FjaGUuIFRoaXMgcmVkdWNlcyB0aGUgbWVtb3J5CisgICAg
ICAgICAgY29zdCBvZiBjYWNoZWQgcGFnZXMgd2l0aCBtZWRpYSBlbGVtZW50cyBvbiBpT1MgKHdo
ZXJlIG1lZGlhc2VydmVyZCB3b3VsZAorICAgICAgICAgIGtlZXAgdXBjb21pbmcgdmlkZW8gZnJh
bWVzIGluIG1lbW9yeSBmb3IgY2FjaGVkIHBhZ2VzLikKKworICAgICAgICBUZXN0OiBtZWRpYS9y
ZXN0b3JlLWZyb20tcGFnZS1jYWNoZS5odG1sIChhbWVuZGVkKQorCisgICAgICAgICogZG9tL0dl
bmVyaWNFdmVudFF1ZXVlLmg6CisgICAgICAgICogZG9tL0dlbmVyaWNFdmVudFF1ZXVlLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkdlbmVyaWNFdmVudFF1ZXVlOjplbnF1ZXVlRXZlbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6R2VuZXJpY0V2ZW50UXVldWU6OnN1c3BlbmQpOgorICAgICAgICAoV2Vi
Q29yZTo6R2VuZXJpY0V2ZW50UXVldWU6OnJlc3VtZSk6CisKKyAgICAgICAgICAgIEFkZCBhIHNp
bXBsZSBzdXNwZW5kL3Jlc3VtZSBtZWNoYW5pc20gdG8gR2VuZXJpY0V2ZW50UXVldWUgdGhhdCBj
YW4KKyAgICAgICAgICAgIGJlIHVzZWQgdG8gc3VwcG9ydCBwYWdlIGNhY2hpbmcuCisKKyAgICAg
ICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE1l
ZGlhRWxlbWVudDo6c3RvcCk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50Ojpz
dXNwZW5kKToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxNZWRpYUVsZW1lbnQ6OnJlc3VtZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MTWVkaWFFbGVtZW50OjpzdG9wV2l0aG91dERlc3Ryb3lpbmdN
ZWRpYVBsYXllcik6CisKKyAgICAgICAgICAgIEFkYXB0IHRvIGV2ZW50IHF1ZXVlaW5nIGNoYW5n
ZXMgYW5kIGFkZCBjYWxscyB0byBzZXRTaG91bGRCdWZmZXJEYXRhKCkuCisKKyAgICAgICAgKiBo
dG1sL0hUTUxTb3VyY2VFbGVtZW50Lmg6CisgICAgICAgICogaHRtbC9IVE1MU291cmNlRWxlbWVu
dC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU291cmNlRWxlbWVudDo6SFRNTFNvdXJjZUVs
ZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFNvdXJjZUVsZW1lbnQ6OmNyZWF0ZSk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MU291cmNlRWxlbWVudDo6YWN0aXZlRE9NT2JqZWN0TmFtZSk6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MU291cmNlRWxlbWVudDo6Y2FuU3VzcGVuZEZvclBhZ2VD
YWNoZSk6CisgICAgICAgIChXZWJDb3JlOjpIVE1MU291cmNlRWxlbWVudDo6c3VzcGVuZCk6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MU291cmNlRWxlbWVudDo6cmVzdW1lKToKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxTb3VyY2VFbGVtZW50OjpzdG9wKToKKworICAgICAgICAgICAgVHVybiBIVE1M
U291cmNlRWxlbWVudCBpbnRvIGFuIEFjdGl2ZURPTU9iamVjdCBzbyBpdCBnZXRzIGFsbCB0aGUK
KyAgICAgICAgICAgIGFwcHJvcHJpYXRlIHBhZ2UgY2FjaGUgbm90aWZpY2F0aW9ucyBkaXJlY3Rs
eS4gU3VzcGVuZCB0aGUgZGVsYXllZAorICAgICAgICAgICAgZXJyb3IgZXZlbnQgZGVsaXZlcnkg
dGltZXIgd2hlbiBjYWNoZWQuCisKIDIwMTUtMDctMTYgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25A
YXBwbGUuY29tPgogCiAgICAgICAgIFdlYktpdCBkb2N1bWVudC5jb29raWUgbWlzLXBhcnNpbmcu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vR2VuZXJpY0V2ZW50UXVldWUuY3BwIGIv
U291cmNlL1dlYkNvcmUvZG9tL0dlbmVyaWNFdmVudFF1ZXVlLmNwcAppbmRleCAxMGMwMzRjLi5m
YTM5N2QyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vR2VuZXJpY0V2ZW50UXVldWUu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9HZW5lcmljRXZlbnRRdWV1ZS5jcHAKQEAgLTQ1
LDIwICs0NSwyMiBAQCBHZW5lcmljRXZlbnRRdWV1ZTo6fkdlbmVyaWNFdmVudFF1ZXVlKCkKIHsK
IH0KIAotYm9vbCBHZW5lcmljRXZlbnRRdWV1ZTo6ZW5xdWV1ZUV2ZW50KFBhc3NSZWZQdHI8RXZl
bnQ+IGV2ZW50KQordm9pZCBHZW5lcmljRXZlbnRRdWV1ZTo6ZW5xdWV1ZUV2ZW50KFBhc3NSZWZQ
dHI8RXZlbnQ+IGV2ZW50KQogewogICAgIGlmIChtX2lzQ2xvc2VkKQotICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgICAgIHJldHVybjsKIAogICAgIGlmIChldmVudC0+dGFyZ2V0KCkgPT0gJm1f
b3duZXIpCiAgICAgICAgIGV2ZW50LT5zZXRUYXJnZXQoMCk7CiAKICAgICBtX3BlbmRpbmdFdmVu
dHMuYXBwZW5kKGV2ZW50KTsKKworICAgIGlmIChtX2lzU3VzcGVuZGVkKQorICAgICAgICByZXR1
cm47CisKICAgICBwZW5kaW5nUXVldWVzKCkuYXBwZW5kKG1fd2Vha1B0ckZhY3RvcnkuY3JlYXRl
V2Vha1B0cigpKTsKICAgICBpZiAoIXNoYXJlZFRpbWVyKCkuaXNBY3RpdmUoKSkKICAgICAgICAg
c2hhcmVkVGltZXIoKS5zdGFydE9uZVNob3QoMCk7Ci0KLSAgICByZXR1cm4gdHJ1ZTsKIH0KIAog
VGltZXImIEdlbmVyaWNFdmVudFF1ZXVlOjpzaGFyZWRUaW1lcigpCkBAIC0xMjAsNCArMTIyLDI2
IEBAIGJvb2wgR2VuZXJpY0V2ZW50UXVldWU6Omhhc1BlbmRpbmdFdmVudHMoKSBjb25zdAogICAg
IHJldHVybiAhbV9wZW5kaW5nRXZlbnRzLmlzRW1wdHkoKTsKIH0KIAordm9pZCBHZW5lcmljRXZl
bnRRdWV1ZTo6c3VzcGVuZCgpCit7CisgICAgQVNTRVJUKCFtX2lzU3VzcGVuZGVkKTsKKyAgICBt
X2lzU3VzcGVuZGVkID0gdHJ1ZTsKKyAgICBtX3dlYWtQdHJGYWN0b3J5LnJldm9rZUFsbCgpOwor
fQorCit2b2lkIEdlbmVyaWNFdmVudFF1ZXVlOjpyZXN1bWUoKQoreworICAgIEFTU0VSVChtX2lz
U3VzcGVuZGVkKTsKKyAgICBtX2lzU3VzcGVuZGVkID0gZmFsc2U7CisKKyAgICBpZiAobV9wZW5k
aW5nRXZlbnRzLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgZm9yICh1bnNpZ25l
ZCBpID0gMDsgaSA8IG1fcGVuZGluZ0V2ZW50cy5zaXplKCk7ICsraSkKKyAgICAgICAgcGVuZGlu
Z1F1ZXVlcygpLmFwcGVuZChtX3dlYWtQdHJGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKSk7CisKKyAg
ICBpZiAoIXNoYXJlZFRpbWVyKCkuaXNBY3RpdmUoKSkKKyAgICAgICAgc2hhcmVkVGltZXIoKS5z
dGFydE9uZVNob3QoMCk7Cit9CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9H
ZW5lcmljRXZlbnRRdWV1ZS5oIGIvU291cmNlL1dlYkNvcmUvZG9tL0dlbmVyaWNFdmVudFF1ZXVl
LmgKaW5kZXggNmJhODZlMi4uMmI1ZTQ4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9t
L0dlbmVyaWNFdmVudFF1ZXVlLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0dlbmVyaWNFdmVu
dFF1ZXVlLmgKQEAgLTQyLDEyICs0MiwxNSBAQCBwdWJsaWM6CiAgICAgZXhwbGljaXQgR2VuZXJp
Y0V2ZW50UXVldWUoRXZlbnRUYXJnZXQmKTsKICAgICB+R2VuZXJpY0V2ZW50UXVldWUoKTsKIAot
ICAgIGJvb2wgZW5xdWV1ZUV2ZW50KFBhc3NSZWZQdHI8RXZlbnQ+KTsKKyAgICB2b2lkIGVucXVl
dWVFdmVudChQYXNzUmVmUHRyPEV2ZW50Pik7CiAgICAgdm9pZCBjbG9zZSgpOwogCiAgICAgdm9p
ZCBjYW5jZWxBbGxFdmVudHMoKTsKICAgICBib29sIGhhc1BlbmRpbmdFdmVudHMoKSBjb25zdDsK
IAorICAgIHZvaWQgc3VzcGVuZCgpOworICAgIHZvaWQgcmVzdW1lKCk7CisKIHByaXZhdGU6CiAg
ICAgc3RhdGljIFRpbWVyJiBzaGFyZWRUaW1lcigpOwogICAgIHN0YXRpYyB2b2lkIHNoYXJlZFRp
bWVyRmlyZWQoKTsKQEAgLTU5LDYgKzYyLDcgQEAgcHJpdmF0ZToKICAgICBEZXF1ZTxSZWZQdHI8
RXZlbnQ+PiBtX3BlbmRpbmdFdmVudHM7CiAgICAgV2Vha1B0ckZhY3Rvcnk8R2VuZXJpY0V2ZW50
UXVldWU+IG1fd2Vha1B0ckZhY3Rvcnk7CiAgICAgYm9vbCBtX2lzQ2xvc2VkOworICAgIGJvb2wg
bV9pc1N1c3BlbmRlZCB7IGZhbHNlIH07CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
TWVkaWFFbGVtZW50LmNwcAppbmRleCBjNzJkNGY3Li5hYWM4YmI2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAKQEAgLTQ4OTAsOSArNDg5MCw2IEBAIHZvaWQgSFRN
TE1lZGlhRWxlbWVudDo6c3RvcFdpdGhvdXREZXN0cm95aW5nTWVkaWFQbGF5ZXIoKQogICAgICAg
ICByZW5kZXJlcigpLT51cGRhdGVGcm9tRWxlbWVudCgpOwogICAgIAogICAgIHN0b3BQZXJpb2Rp
Y1RpbWVycygpOwotICAgIGNhbmNlbFBlbmRpbmdFdmVudHNBbmRDYWxsYmFja3MoKTsKLQotICAg
IG1fYXN5bmNFdmVudFF1ZXVlLmNsb3NlKCk7CiAKICAgICB1cGRhdGVTbGVlcERpc2FibGluZygp
OwogfQpAQCAtNDkwMyw2ICs0OTAwLDggQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpzdG9wKCkK
IAogICAgIHN0b3BXaXRob3V0RGVzdHJveWluZ01lZGlhUGxheWVyKCk7CiAKKyAgICBtX2FzeW5j
RXZlbnRRdWV1ZS5jbG9zZSgpOworCiAgICAgLy8gT25jZSBhbiBhY3RpdmUgRE9NIG9iamVjdCBo
YXMgYmVlbiBzdG9wcGVkIGl0IGNhbiBub3QgYmUgcmVzdGFydGVkLCBzbyB3ZSBjYW4gZGVhbGxv
Y2F0ZQogICAgIC8vIHRoZSBtZWRpYSBwbGF5ZXIgbm93LiBOb3RlIHRoYXQgdXNlckNhbmNlbGxl
ZExvYWQgd2lsbCBhbHJlYWR5IGNhbGxlZCBjbGVhck1lZGlhUGxheWVyCiAgICAgLy8gaWYgdGhl
IG1lZGlhIHdhcyBub3QgZnVsbHkgbG9hZGVkLCBidXQgd2UgbmVlZCB0aGUgc2FtZSBjbGVhbnVw
IGlmIHRoZSBmaWxlIHdhcyBjb21wbGV0ZWx5CkBAIC00OTE4LDYgKzQ5MTcsOCBAQCB2b2lkIEhU
TUxNZWRpYUVsZW1lbnQ6OnN1c3BlbmQoUmVhc29uRm9yU3VzcGVuc2lvbiB3aHkpCiAgICAgewog
ICAgICAgICBjYXNlIFBhZ2VDYWNoZToKICAgICAgICAgICAgIHN0b3BXaXRob3V0RGVzdHJveWlu
Z01lZGlhUGxheWVyKCk7CisgICAgICAgICAgICBtX2FzeW5jRXZlbnRRdWV1ZS5zdXNwZW5kKCk7
CisgICAgICAgICAgICBzZXRTaG91bGRCdWZmZXJEYXRhKGZhbHNlKTsKICAgICAgICAgICAgIG1f
bWVkaWFTZXNzaW9uLT5hZGRCZWhhdmlvclJlc3RyaWN0aW9uKE1lZGlhRWxlbWVudFNlc3Npb246
OlJlcXVpcmVQYWdlQ29uc2VudFRvUmVzdW1lTWVkaWEpOwogICAgICAgICAgICAgYnJlYWs7CiAg
ICAgICAgIGNhc2UgRG9jdW1lbnRXaWxsQmVQYXVzZWQ6CkBAIC00OTM1LDYgKzQ5MzYsMTAgQEAg
dm9pZCBIVE1MTWVkaWFFbGVtZW50OjpyZXN1bWUoKQogCiAgICAgbV9pbkFjdGl2ZURvY3VtZW50
ID0gdHJ1ZTsKIAorICAgIG1fYXN5bmNFdmVudFF1ZXVlLnJlc3VtZSgpOworCisgICAgc2V0U2hv
dWxkQnVmZmVyRGF0YSh0cnVlKTsKKwogICAgIGlmICghbV9tZWRpYVNlc3Npb24tPnBhZ2VBbGxv
d3NQbGF5YmFja0FmdGVyUmVzdW1pbmcoKnRoaXMpKQogICAgICAgICBkb2N1bWVudCgpLmFkZE1l
ZGlhQ2FuU3RhcnRMaXN0ZW5lcih0aGlzKTsKICAgICBlbHNlCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxTb3VyY2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFNvdXJjZUVsZW1lbnQuY3BwCmluZGV4IDMwMTk1MWMuLjI5MzFjZTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1lbnQuY3BwCkBAIC00MCw2ICs0MCw3IEBAIHVzaW5n
IG5hbWVzcGFjZSBIVE1MTmFtZXM7CiAKIGlubGluZSBIVE1MU291cmNlRWxlbWVudDo6SFRNTFNv
dXJjZUVsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3Vt
ZW50KQogICAgIDogSFRNTEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCisgICAgLCBBY3RpdmVE
T01PYmplY3QoJmRvY3VtZW50KQogICAgICwgbV9lcnJvckV2ZW50VGltZXIoKnRoaXMsICZIVE1M
U291cmNlRWxlbWVudDo6ZXJyb3JFdmVudFRpbWVyRmlyZWQpCiB7CiAgICAgTE9HKE1lZGlhLCAi
SFRNTFNvdXJjZUVsZW1lbnQ6OkhUTUxTb3VyY2VFbGVtZW50IC0gJXAiLCB0aGlzKTsKQEAgLTQ4
LDcgKzQ5LDkgQEAgaW5saW5lIEhUTUxTb3VyY2VFbGVtZW50OjpIVE1MU291cmNlRWxlbWVudChj
b25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWUKIAogUmVmPEhUTUxTb3VyY2VFbGVt
ZW50PiBIVE1MU291cmNlRWxlbWVudDo6Y3JlYXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05h
bWUsIERvY3VtZW50JiBkb2N1bWVudCkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBIVE1M
U291cmNlRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkpOworICAgIFJlZjxIVE1MU291cmNlRWxl
bWVudD4gc291cmNlRWxlbWVudCA9IGFkb3B0UmVmKCpuZXcgSFRNTFNvdXJjZUVsZW1lbnQodGFn
TmFtZSwgZG9jdW1lbnQpKTsKKyAgICBzb3VyY2VFbGVtZW50LT5zdXNwZW5kSWZOZWVkZWQoKTsK
KyAgICByZXR1cm4gc291cmNlRWxlbWVudDsKIH0KIAogTm9kZTo6SW5zZXJ0aW9uTm90aWZpY2F0
aW9uUmVxdWVzdCBIVE1MU291cmNlRWxlbWVudDo6aW5zZXJ0ZWRJbnRvKENvbnRhaW5lck5vZGUm
IGluc2VydGlvblBvaW50KQpAQCAtMTIxLDYgKzEyNCwzNyBAQCBib29sIEhUTUxTb3VyY2VFbGVt
ZW50Ojppc1VSTEF0dHJpYnV0ZShjb25zdCBBdHRyaWJ1dGUmIGF0dHJpYnV0ZSkgY29uc3QKICAg
ICByZXR1cm4gYXR0cmlidXRlLm5hbWUoKSA9PSBzcmNBdHRyIHx8IEhUTUxFbGVtZW50Ojppc1VS
TEF0dHJpYnV0ZShhdHRyaWJ1dGUpOwogfQogCitjb25zdCBjaGFyKiBIVE1MU291cmNlRWxlbWVu
dDo6YWN0aXZlRE9NT2JqZWN0TmFtZSgpIGNvbnN0Cit7CisgICAgcmV0dXJuICJIVE1MU291cmNl
RWxlbWVudCI7Cit9CisKK2Jvb2wgSFRNTFNvdXJjZUVsZW1lbnQ6OmNhblN1c3BlbmRGb3JQYWdl
Q2FjaGUoKSBjb25zdAoreworICAgIHJldHVybiB0cnVlOworfQorCit2b2lkIEhUTUxTb3VyY2VF
bGVtZW50OjpzdXNwZW5kKFJlYXNvbkZvclN1c3BlbnNpb24gd2h5KQoreworICAgIGlmICh3aHkg
PT0gUGFnZUNhY2hlKSB7CisgICAgICAgIG1fc2hvdWxkUmVzY2hlZHVsZUVycm9yRXZlbnRPblJl
c3VtZSA9IG1fZXJyb3JFdmVudFRpbWVyLmlzQWN0aXZlKCk7CisgICAgICAgIG1fZXJyb3JFdmVu
dFRpbWVyLnN0b3AoKTsKKyAgICB9Cit9CisKK3ZvaWQgSFRNTFNvdXJjZUVsZW1lbnQ6OnJlc3Vt
ZSgpCit7CisgICAgaWYgKG1fc2hvdWxkUmVzY2hlZHVsZUVycm9yRXZlbnRPblJlc3VtZSkgewor
ICAgICAgICBtX2Vycm9yRXZlbnRUaW1lci5zdGFydE9uZVNob3QoMCk7CisgICAgICAgIG1fc2hv
dWxkUmVzY2hlZHVsZUVycm9yRXZlbnRPblJlc3VtZSA9IGZhbHNlOworICAgIH0KK30KKwordm9p
ZCBIVE1MU291cmNlRWxlbWVudDo6c3RvcCgpCit7CisgICAgY2FuY2VsUGVuZGluZ0Vycm9yRXZl
bnQoKTsKK30KKwogfQogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFNvdXJjZUVsZW1lbnQuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFNvdXJjZUVsZW1l
bnQuaAppbmRleCAxZGYzMWMxLi5mMzczZmI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxTb3VyY2VFbGVtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MU291
cmNlRWxlbWVudC5oCkBAIC0zMiw3ICszMiw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
Y2xhc3MgSFRNTFNvdXJjZUVsZW1lbnQgZmluYWwgOiBwdWJsaWMgSFRNTEVsZW1lbnQgeworY2xh
c3MgSFRNTFNvdXJjZUVsZW1lbnQgZmluYWwgOiBwdWJsaWMgSFRNTEVsZW1lbnQsIHB1YmxpYyBB
Y3RpdmVET01PYmplY3QgewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8SFRNTFNvdXJjZUVsZW1l
bnQ+IGNyZWF0ZShjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmKTsKIApAQCAtNTIsOSAr
NTIsMTcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgcmVtb3ZlZEZyb20oQ29udGFpbmVy
Tm9kZSYpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgYm9vbCBpc1VSTEF0dHJpYnV0ZShjb25zdCBB
dHRyaWJ1dGUmKSBjb25zdCBvdmVycmlkZTsKIAorICAgIC8vIEFjdGl2ZURPTU9iamVjdC4KKyAg
ICBjb25zdCBjaGFyKiBhY3RpdmVET01PYmplY3ROYW1lKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAg
Ym9vbCBjYW5TdXNwZW5kRm9yUGFnZUNhY2hlKCkgY29uc3Qgb3ZlcnJpZGU7CisgICAgdm9pZCBz
dXNwZW5kKFJlYXNvbkZvclN1c3BlbnNpb24pIG92ZXJyaWRlOworICAgIHZvaWQgcmVzdW1lKCkg
b3ZlcnJpZGU7CisgICAgdm9pZCBzdG9wKCkgb3ZlcnJpZGU7CisKICAgICB2b2lkIGVycm9yRXZl
bnRUaW1lckZpcmVkKCk7CiAKICAgICBUaW1lciBtX2Vycm9yRXZlbnRUaW1lcjsKKyAgICBib29s
IG1fc2hvdWxkUmVzY2hlZHVsZUVycm9yRXZlbnRPblJlc3VtZSB7IGZhbHNlIH07CiB9OwogCiB9
IC8vbmFtZXNwYWNlCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>