<?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>125269</bug_id>
          
          <creation_ts>2013-12-04 17:34:53 -0800</creation_ts>
          <short_desc>[MSE][Mac] Crash when removing MediaSource from HTMLMediaElement.</short_desc>
          <delta_ts>2013-12-09 08:20:26 -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>New Bugs</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>
          
          <blocked>125270</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jer Noble">jer.noble</reporter>
          <assigned_to name="Jer Noble">jer.noble</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>glenn</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>956716</commentid>
    <comment_count>0</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-12-04 17:34:53 -0800</bug_when>
    <thetext>[MSE][Mac] Crash when removing MediaSource from HTMLMediaElement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956719</commentid>
    <comment_count>1</comment_count>
      <attachid>218474</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-12-04 17:41:15 -0800</bug_when>
    <thetext>Created attachment 218474
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957553</commentid>
    <comment_count>2</comment_count>
      <attachid>218670</attachid>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-12-07 16:41:41 -0800</bug_when>
    <thetext>Created attachment 218670
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957557</commentid>
    <comment_count>3</comment_count>
      <attachid>218670</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2013-12-07 17:35:54 -0800</bug_when>
    <thetext>Comment on attachment 218670
Patch

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

Test case?

&gt; Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:62
&gt; +    void clearMediaSource() { m_mediaSource = 0; }

nullptr?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957577</commentid>
    <comment_count>4</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-12-07 22:18:37 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 218670 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=218670&amp;action=review
&gt; 
&gt; Test case?

The crash only (reliably) happens with MallocScribble enabled.  But when it is enabled, an existing test crashes.

&gt; &gt; Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:62
&gt; &gt; +    void clearMediaSource() { m_mediaSource = 0; }
&gt; 
&gt; nullptr?

Will change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957580</commentid>
    <comment_count>5</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-12-07 22:37:04 -0800</bug_when>
    <thetext>Committed r160281: &lt;http://trac.webkit.org/changeset/160281&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957652</commentid>
    <comment_count>6</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2013-12-08 10:09:01 -0800</bug_when>
    <thetext>Could this have caused two tests to show malloc errors?
http://build.webkit.org/results/Apple%20Mavericks%20Debug%20WK2%20(Tests)/r160286%20(853)/results.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957904</commentid>
    <comment_count>7</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-12-09 08:20:26 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; Could this have caused two tests to show malloc errors?
&gt; http://build.webkit.org/results/Apple%20Mavericks%20Debug%20WK2%20(Tests)/r160286%20(853)/results.html

It&apos;s unlikely; those test cases should never hit MSE code.  But i&apos;ll check.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218474</attachid>
            <date>2013-12-04 17:41:15 -0800</date>
            <delta_ts>2013-12-07 16:41:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125269-20131204174114.patch</filename>
            <type>text/plain</type>
            <size>9484</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwMDk5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjUwOTY2ZjA1ODJmNWRj
OGVkZDVmN2VlYmQyZjI4NWM1NWRmZDMxMS4uYmM2ZDE5ZWU3YTRiZGY5ZDY3ZTY1ZDI5N2U5ODEx
ZGZhZDlmMzg4ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDM0IEBACiAyMDEzLTEyLTA0ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCisgICAgICAgIFtNU0VdW01hY10gQ3Jhc2gg
d2hlbiByZW1vdmluZyBNZWRpYVNvdXJjZSBmcm9tIEhUTUxNZWRpYUVsZW1lbnQuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjUyNjkKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJdCdzIHBvc3NpYmxlIGZv
ciBhIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDIHRvIG91dGxpdmUgaXRzIE1lZGlhU291cmNl
UHJpdmF0ZUFWRk9iakMsIHNvCisgICAgICAgIG1ha2Ugc3VyZSB0byBjbGVhciB0aGUgcG9pbnRl
ciBmcm9tIHRoZSBmb3JtZXIgdG8gdGhlIGxhdHRlciB3aGVuIHRoZSBsYXR0ZXIgaXMgZGVzdHJv
eWVkLgorICAgICAgICBUaGF0IG1lYW5zIHdlIG5vdyBoYXZlIHRvIGNoZWNrIHRvIHNlZSBpZiB0
aGUgcG9pbnRlciB0byB0aGUgbGF0dGVyIGlzIHN0aWxsIHZhbGlkIGF0IGV2ZXJ5CisgICAgICAg
IGNhbGwgc2l0ZS4KKworICAgICAgICBBcyBhIGRyaXZlLWJ5IGZpeCwgcmVuYW1lIG1fcGFyZW50
IHRvIG1fbWVkaWFTb3VyY2UgdG8gbW9yZSBhY2N1cmF0ZWx5IHJlZmxlY3Qgd2hhdCB0aGUgcG9p
bnRlcgorICAgICAgICBwb2ludHMgdG8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tOgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6fk1lZGlhU291cmNlUHJpdmF0ZUFW
Rk9iakMpOiBDbGVhciB0aGUgU291cmNlQnVmZmVyJ3MgYmFja3BvaW50ZXIuCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFW
Rk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9T
b3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1
ZmZlclByaXZhdGVBVkZPYmpDOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyk6IFJlbmFtZSBt
X3BhcmVudCAtPiBtX21lZGlhU291cmNlLgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVy
UHJpdmF0ZUFWRk9iakM6OmFwcGVuZCk6IENoZWNrIG1fbWVkaWFTb3VyY2UgYmVmb3JlIGNhbGxp
bmcuCisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6cmVtb3Zl
ZEZyb21NZWRpYVNvdXJjZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVy
UHJpdmF0ZUFWRk9iakM6OnJlYWR5U3RhdGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNv
dXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpzZXRSZWFkeVN0YXRlKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6dHJhY2tEaWRDaGFuZ2VFbmFi
bGVkKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2Jq
Qzo6Zmx1c2hBbmRFbnF1ZXVlTm9uRGlzcGxheWluZ1NhbXBsZXMpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjplbnF1ZXVlU2FtcGxlKTogRGl0
dG8uCisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6c2V0QWN0
aXZlKTogRGl0dG8uCisKKzIwMTMtMTItMDQgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5j
b20+CisKICAgICAgICAgW01TRV0gUmVmYWN0b3IgTWVkaWFTb3VyY2VCYXNlIGJhY2sgaW50byBN
ZWRpYVNvdXJjZQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTI1MjQ1CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW0gYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVBy
aXZhdGVBVkZPYmpDLm1tCmluZGV4IGM1NmI1MGJmNTliYWZkNGIwOGU5MjkwMjM3NDBlYjg4NjEz
NGNkZmIuLmMyZDNlMzg5NDkwZTE4OGU2Yzg0N2M1YzE2Y2FlNDRiNTFiYTUxOTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01l
ZGlhU291cmNlUHJpdmF0ZUFWRk9iakMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQy5tbQpA
QCAtNTcsNiArNTcsOCBAQCBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDOjpNZWRpYVNvdXJjZVBy
aXZhdGVBVkZPYmpDKE1lZGlhUGxheWVyUHJpdmF0ZU1lZGlhU291cgogCiBNZWRpYVNvdXJjZVBy
aXZhdGVBVkZPYmpDOjp+TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQygpCiB7CisgICAgZm9yIChh
dXRvIGl0ID0gbV9zb3VyY2VCdWZmZXJzLmJlZ2luKCksIGVuZCA9IG1fc291cmNlQnVmZmVycy5l
bmQoKTsgaXQgIT0gZW5kOyArK2l0KQorICAgICAgICAoKml0KS0+Y2xlYXJNZWRpYVNvdXJjZSgp
OwogfQogCiBNZWRpYVNvdXJjZVByaXZhdGU6OkFkZFN0YXR1cyBNZWRpYVNvdXJjZVByaXZhdGVB
VkZPYmpDOjphZGRTb3VyY2VCdWZmZXIoY29uc3QgQ29udGVudFR5cGUmIGNvbnRlbnRUeXBlLCBS
ZWZQdHI8U291cmNlQnVmZmVyUHJpdmF0ZT4mIG91dFByaXZhdGUpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZm
ZXJQcml2YXRlQVZGT2JqQy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMuaAppbmRleCBkNzI0MWRl
MDAwNDc5YWRhMzNmY2VmNDI4ZGFiNzY4OTBhMDQxZGY4Li4zYWI4MzRhMTlmMzg5OTE5YWIxZjFm
Mjc4Y2VhNzdlYzI4NmE4MzQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1Nv
dXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLmgKQEAgLTU5LDYgKzU5LDggQEAgcHVibGljOgogICAg
IHN0YXRpYyBSZWZQdHI8U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM+IGNyZWF0ZShNZWRpYVNv
dXJjZVByaXZhdGVBVkZPYmpDKik7CiAgICAgdmlydHVhbCB+U291cmNlQnVmZmVyUHJpdmF0ZUFW
Rk9iakMoKTsKIAorICAgIHZvaWQgY2xlYXJNZWRpYVNvdXJjZSgpIHsgbV9tZWRpYVNvdXJjZSA9
IDA7IH0KKwogICAgIC8vIEFWU3RyZWFtRGF0YVBhcnNlciBkZWxlZ2F0ZSBtZXRob2RzCiAgICAg
dm9pZCBkaWRQYXJzZVN0cmVhbURhdGFBc0Fzc2V0KEFWQXNzZXQqKTsKICAgICB2b2lkIGRpZEZh
aWxUb1BhcnNlU3RyZWFtRGF0YVdpdGhFcnJvcihOU0Vycm9yKik7CkBAIC0xMDMsNyArMTA1LDcg
QEAgcHJpdmF0ZToKICAgICBSZXRhaW5QdHI8QVZTYW1wbGVCdWZmZXJEaXNwbGF5TGF5ZXI+IG1f
ZGlzcGxheUxheWVyOwogICAgIFJldGFpblB0cjxOU09iamVjdD4gbV9kZWxlZ2F0ZTsKIAotICAg
IE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMqIG1fcGFyZW50OworICAgIE1lZGlhU291cmNlUHJp
dmF0ZUFWRk9iakMqIG1fbWVkaWFTb3VyY2U7CiAgICAgU291cmNlQnVmZmVyUHJpdmF0ZUNsaWVu
dCogbV9jbGllbnQ7CiAKICAgICBib29sIG1fcGFyc2luZ1N1Y2NlZWRlZDsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJj
ZUJ1ZmZlclByaXZhdGVBVkZPYmpDLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW0KaW5kZXgg
ZjY3OGYxMjVmMzhlNjhiZDIxZGUxY2M3Y2JiMzYyMzI2NjZjYTg1ZS4uNThmZDJhZTBmZjgwMDIy
Mjk1NzBiMWMyMTdmZGM0YjFhYTQ1MmIyNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW0KQEAgLTI5Niw3ICsyOTYsNyBAQCBS
ZWZQdHI8U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM+IFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZP
YmpDOjpjcmVhdGUoTWVkaWFTb3VyYwogU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OlNvdXJj
ZUJ1ZmZlclByaXZhdGVBVkZPYmpDKE1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMqIHBhcmVudCkK
ICAgICA6IG1fcGFyc2VyKGFkb3B0TlMoW1tnZXRBVlN0cmVhbURhdGFQYXJzZXJDbGFzcygpIGFs
bG9jXSBpbml0XSkpCiAgICAgLCBtX2RlbGVnYXRlKGFkb3B0TlMoW1tXZWJBVlN0cmVhbURhdGFQ
YXJzZXJMaXN0ZW5lciBhbGxvY10gaW5pdFdpdGhQYXJzZXI6bV9wYXJzZXIuZ2V0KCkgcGFyZW50
OnRoaXNdKSkKLSAgICAsIG1fcGFyZW50KHBhcmVudCkKKyAgICAsIG1fbWVkaWFTb3VyY2UocGFy
ZW50KQogICAgICwgbV9jbGllbnQoMCkKICAgICAsIG1fcGFyc2luZ1N1Y2NlZWRlZCh0cnVlKQog
ewpAQCAtMzA1LDcgKzMwNSw4IEBAIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpTb3VyY2VC
dWZmZXJQcml2YXRlQVZGT2JqQyhNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDCiBTb3VyY2VCdWZm
ZXJQcml2YXRlQVZGT2JqQzo6flNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDKCkKIHsKICAgICBp
ZiAobV9kaXNwbGF5TGF5ZXIpIHsKLSAgICAgICAgbV9wYXJlbnQtPnBsYXllcigpLT5yZW1vdmVE
aXNwbGF5TGF5ZXIobV9kaXNwbGF5TGF5ZXIuZ2V0KCkpOworICAgICAgICBpZiAobV9tZWRpYVNv
dXJjZSkKKyAgICAgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5yZW1vdmVEaXNwbGF5
TGF5ZXIobV9kaXNwbGF5TGF5ZXIuZ2V0KCkpOwogICAgICAgICBbbV9kaXNwbGF5TGF5ZXIgZmx1
c2hBbmRSZW1vdmVJbWFnZV07CiAgICAgICAgIFttX2Rpc3BsYXlMYXllciBzdG9wUmVxdWVzdGlu
Z01lZGlhRGF0YV07CiAgICAgICAgIG1fZGlzcGxheUxheWVyID0gbnVsbHB0cjsKQEAgLTM5OCw4
ICszOTksOCBAQCBTb3VyY2VCdWZmZXJQcml2YXRlOjpBcHBlbmRSZXN1bHQgU291cmNlQnVmZmVy
UHJpdmF0ZUFWRk9iakM6OmFwcGVuZChjb25zdCB1bnNpZwogICAgIExPRyhNZWRpYSwgIlNvdXJj
ZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjphcHBlbmQoJXApIC0gZGF0YTolcCwgbGVuZ3RoOiVkIiwg
dGhpcywgZGF0YSwgbGVuZ3RoKTsKICAgICBbbV9wYXJzZXIgYXBwZW5kU3RyZWFtRGF0YTpbTlNE
YXRhIGRhdGFXaXRoQnl0ZXM6ZGF0YSBsZW5ndGg6bGVuZ3RoXV07CiAKLSAgICBpZiAobV9wYXJz
aW5nU3VjY2VlZGVkKQotICAgICAgICBtX3BhcmVudC0+cGxheWVyKCktPnNldExvYWRpbmdQcm9n
cmVzc3NlZCh0cnVlKTsKKyAgICBpZiAobV9wYXJzaW5nU3VjY2VlZGVkICYmIG1fbWVkaWFTT3Vy
Y2UpCisgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRMb2FkaW5nUHJvZ3Jlc3Nz
ZWQodHJ1ZSk7CiAKICAgICByZXR1cm4gbV9wYXJzaW5nU3VjY2VlZGVkID8gQXBwZW5kU3VjY2Vl
ZGVkIDogUGFyc2luZ0ZhaWxlZDsKIH0KQEAgLTQxMiwyMyArNDEzLDI2IEBAIHZvaWQgU291cmNl
QnVmZmVyUHJpdmF0ZUFWRk9iakM6OmFib3J0KCkKIHZvaWQgU291cmNlQnVmZmVyUHJpdmF0ZUFW
Rk9iakM6OnJlbW92ZWRGcm9tTWVkaWFTb3VyY2UoKQogewogICAgIGlmIChtX2Rpc3BsYXlMYXll
cikgewotICAgICAgICBtX3BhcmVudC0+cGxheWVyKCktPnJlbW92ZURpc3BsYXlMYXllcihtX2Rp
c3BsYXlMYXllci5nZXQoKSk7CisgICAgICAgIGlmIChtX21lZGlhU291cmNlKQorICAgICAgICAg
ICAgbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnJlbW92ZURpc3BsYXlMYXllcihtX2Rpc3BsYXlM
YXllci5nZXQoKSk7CiAgICAgICAgIFttX2Rpc3BsYXlMYXllciBmbHVzaF07CiAgICAgICAgIFtt
X2Rpc3BsYXlMYXllciBzdG9wUmVxdWVzdGluZ01lZGlhRGF0YV07CiAgICAgICAgIG1fZGlzcGxh
eUxheWVyID0gbnVsbHB0cjsKICAgICB9CiAKLSAgICBtX3BhcmVudC0+cmVtb3ZlU291cmNlQnVm
ZmVyKHRoaXMpOworICAgIGlmIChtX21lZGlhU291cmNlKQorICAgICAgICBtX21lZGlhU291cmNl
LT5yZW1vdmVTb3VyY2VCdWZmZXIodGhpcyk7CiB9CiAKIE1lZGlhUGxheWVyOjpSZWFkeVN0YXRl
IFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpyZWFkeVN0YXRlKCkgY29uc3QKIHsKLSAgICBy
ZXR1cm4gbV9wYXJlbnQtPnBsYXllcigpLT5yZWFkeVN0YXRlKCk7CisgICAgcmV0dXJuIG1fbWVk
aWFTb3VyY2UgPyBtX21lZGlhU291cmNlLT5wbGF5ZXIoKS0+cmVhZHlTdGF0ZSgpIDogTWVkaWFQ
bGF5ZXI6OkhhdmVOb3RoaW5nOwogfQogCiB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpD
OjpzZXRSZWFkeVN0YXRlKE1lZGlhUGxheWVyOjpSZWFkeVN0YXRlIHJlYWR5U3RhdGUpCiB7Ci0g
ICAgbV9wYXJlbnQtPnBsYXllcigpLT5zZXRSZWFkeVN0YXRlKHJlYWR5U3RhdGUpOworICAgIGlm
IChtX21lZGlhU291cmNlKQorICAgICAgICBtX21lZGlhU291cmNlLT5wbGF5ZXIoKS0+c2V0UmVh
ZHlTdGF0ZShyZWFkeVN0YXRlKTsKIH0KIAogdm9pZCBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2Jq
Qzo6ZXZpY3RDb2RlZEZyYW1lcygpCkBAIC00NjUsNyArNDY5LDggQEAgdm9pZCBTb3VyY2VCdWZm
ZXJQcml2YXRlQVZGT2JqQzo6dHJhY2tEaWRDaGFuZ2VFbmFibGVkKFZpZGVvVHJhY2tQcml2YXRl
TWVkaWFTb3UKICAgICBpZiAoIXRyYWNrLT5zZWxlY3RlZCgpICYmIG1fZW5hYmxlZFZpZGVvVHJh
Y2tJRCA9PSB0cmFja0lEKSB7CiAgICAgICAgIG1fZW5hYmxlZFZpZGVvVHJhY2tJRCA9IC0xOwog
ICAgICAgICBbbV9wYXJzZXIgc2V0U2hvdWxkUHJvdmlkZU1lZGlhRGF0YTpOTyBmb3JUcmFja0lE
OnRyYWNrSURdOwotICAgICAgICBtX3BhcmVudC0+cGxheWVyKCktPnJlbW92ZURpc3BsYXlMYXll
cihtX2Rpc3BsYXlMYXllci5nZXQoKSk7CisgICAgICAgIGlmIChtX21lZGlhU291cmNlKQorICAg
ICAgICAgICAgbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnJlbW92ZURpc3BsYXlMYXllcihtX2Rp
c3BsYXlMYXllci5nZXQoKSk7CiAgICAgfSBlbHNlIGlmICh0cmFjay0+c2VsZWN0ZWQoKSkgewog
ICAgICAgICBtX2VuYWJsZWRWaWRlb1RyYWNrSUQgPSB0cmFja0lEOwogICAgICAgICBbbV9wYXJz
ZXIgc2V0U2hvdWxkUHJvdmlkZU1lZGlhRGF0YTpZRVMgZm9yVHJhY2tJRDp0cmFja0lEXTsKQEAg
LTQ3NSw3ICs0ODAsOCBAQCB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjp0cmFja0Rp
ZENoYW5nZUVuYWJsZWQoVmlkZW9UcmFja1ByaXZhdGVNZWRpYVNvdQogICAgICAgICAgICAgICAg
IGRpZEJlY29tZVJlYWR5Rm9yTW9yZVNhbXBsZXMoKTsKICAgICAgICAgICAgIH1dOwogICAgICAg
ICB9Ci0gICAgICAgIG1fcGFyZW50LT5wbGF5ZXIoKS0+YWRkRGlzcGxheUxheWVyKG1fZGlzcGxh
eUxheWVyLmdldCgpKTsKKyAgICAgICAgaWYgKG1fbWVkaWFTb3VyY2UpCisgICAgICAgICAgICBt
X21lZGlhU291cmNlLT5wbGF5ZXIoKS0+YWRkRGlzcGxheUxheWVyKG1fZGlzcGxheUxheWVyLmdl
dCgpKTsKICAgICB9CiB9CiAKQEAgLTUyMCw3ICs1MjYsOCBAQCB2b2lkIFNvdXJjZUJ1ZmZlclBy
aXZhdGVBVkZPYmpDOjpmbHVzaEFuZEVucXVldWVOb25EaXNwbGF5aW5nU2FtcGxlcyhWZWN0b3I8
UmVmUAogICAgICAgICBbbV9kaXNwbGF5TGF5ZXIgZW5xdWV1ZVNhbXBsZUJ1ZmZlcjpzYW1wbGVC
dWZmZXIuZ2V0KCldOwogICAgIH0KIAotICAgIG1fcGFyZW50LT5wbGF5ZXIoKS0+c2V0SGFzQXZh
aWxhYmxlVmlkZW9GcmFtZShmYWxzZSk7CisgICAgaWYgKG1fbWVkaWFTb3VyY2UpCisgICAgICAg
IG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRIYXNBdmFpbGFibGVWaWRlb0ZyYW1lKGZhbHNl
KTsKIH0KIAogdm9pZCBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6ZW5xdWV1ZVNhbXBsZShQ
YXNzUmVmUHRyPE1lZGlhU2FtcGxlPiBwcnBNZWRpYVNhbXBsZSwgQXRvbWljU3RyaW5nIHRyYWNr
SUQpCkBAIC01MzUsNyArNTQyLDggQEAgdm9pZCBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6
ZW5xdWV1ZVNhbXBsZShQYXNzUmVmUHRyPE1lZGlhU2FtcGxlPiBwcnBNZWRpYVMKICAgICAgICAg
cmV0dXJuOwogCiAgICAgW21fZGlzcGxheUxheWVyIGVucXVldWVTYW1wbGVCdWZmZXI6cGxhdGZv
cm1TYW1wbGUuc2FtcGxlLmNtU2FtcGxlQnVmZmVyXTsKLSAgICBtX3BhcmVudC0+cGxheWVyKCkt
PnNldEhhc0F2YWlsYWJsZVZpZGVvRnJhbWUodHJ1ZSk7CisgICAgaWYgKG1fbWVkaWFTb3VyY2Up
CisgICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5zZXRIYXNBdmFpbGFibGVWaWRlb0Zy
YW1lKHRydWUpOwogfQogCiBib29sIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjppc1JlYWR5
Rm9yTW9yZVNhbXBsZXMoKQpAQCAtNTQ1LDcgKzU1Myw4IEBAIGJvb2wgU291cmNlQnVmZmVyUHJp
dmF0ZUFWRk9iakM6OmlzUmVhZHlGb3JNb3JlU2FtcGxlcygpCiAKIHZvaWQgU291cmNlQnVmZmVy
UHJpdmF0ZUFWRk9iakM6OnNldEFjdGl2ZShib29sIGlzQWN0aXZlKQogewotICAgIG1fcGFyZW50
LT5zb3VyY2VCdWZmZXJQcml2YXRlRGlkQ2hhbmdlQWN0aXZlU3RhdGUodGhpcywgaXNBY3RpdmUp
OworICAgIGlmIChtX21lZGlhU291cmNlKQorICAgICAgICBtX21lZGlhU291cmNlLT5zb3VyY2VC
dWZmZXJQcml2YXRlRGlkQ2hhbmdlQWN0aXZlU3RhdGUodGhpcywgaXNBY3RpdmUpOwogfQogCiBN
ZWRpYVRpbWUgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmZhc3RTZWVrVGltZUZvck1lZGlh
VGltZShNZWRpYVRpbWUgdGltZSwgTWVkaWFUaW1lIG5lZ2F0aXZlVGhyZXNob2xkLCBNZWRpYVRp
bWUgcG9zaXRpdmVUaHJlc2hvbGQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>218670</attachid>
            <date>2013-12-07 16:41:41 -0800</date>
            <delta_ts>2013-12-07 17:35:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-125269-20131207164140.patch</filename>
            <type>text/plain</type>
            <size>13829</size>
            <attacher name="Jer Noble">jer.noble</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTYwMjYzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzM2N2ZkM2RlMjliZWFk
YjYxZjJhYmExMDk4YTgyZjI0M2U3ZmVmMS4uMTUxZjI5MDYwZmRhYTE3ODVmMTEyOTkzZTYwZTg5
ZDNlNDY5Zjg3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQzIEBACisyMDEzLTEyLTA0ICBKZXIg
Tm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgorCisgICAgICAgIFtNU0VdW01hY10gQ3Jhc2gg
d2hlbiByZW1vdmluZyBNZWRpYVNvdXJjZSBmcm9tIEhUTUxNZWRpYUVsZW1lbnQuCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjUyNjkKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJdCdzIHBvc3NpYmxlIGZv
ciBhIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDIHRvIG91dGxpdmUgaXRzIE1lZGlhU291cmNl
UHJpdmF0ZUFWRk9iakMsIHNvCisgICAgICAgIG1ha2Ugc3VyZSB0byBjbGVhciB0aGUgcG9pbnRl
ciBmcm9tIHRoZSBmb3JtZXIgdG8gdGhlIGxhdHRlciB3aGVuIHRoZSBsYXR0ZXIgaXMgZGVzdHJv
eWVkLgorICAgICAgICBUaGF0IG1lYW5zIHdlIG5vdyBoYXZlIHRvIGNoZWNrIHRvIHNlZSBpZiB0
aGUgcG9pbnRlciB0byB0aGUgbGF0dGVyIGlzIHN0aWxsIHZhbGlkIGF0IGV2ZXJ5CisgICAgICAg
IGNhbGwgc2l0ZS4KKworICAgICAgICBBcyBhIGRyaXZlLWJ5IGZpeCwgcmVuYW1lIG1fcGFyZW50
IHRvIG1fbWVkaWFTb3VyY2UgdG8gbW9yZSBhY2N1cmF0ZWx5IHJlZmxlY3Qgd2hhdCB0aGUgcG9p
bnRlcgorICAgICAgICBwb2ludHMgdG8uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tOgorICAgICAgICAo
V2ViQ29yZTo6TWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6fk1lZGlhU291cmNlUHJpdmF0ZUFW
Rk9iakMpOiBDbGVhciB0aGUgU291cmNlQnVmZmVyJ3MgYmFja3BvaW50ZXIuCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFW
Rk9iakMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpj
bGVhck1lZGlhU291cmNlKTogCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMubW06CisgICAgICAgIChXZWJDb3Jl
OjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMp
OiBSZW5hbWUgbV9wYXJlbnQgLT4gbV9tZWRpYVNvdXJjZS4KKyAgICAgICAgKFdlYkNvcmU6OlNv
dXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjphcHBlbmQpOiBDaGVjayBtX21lZGlhU291cmNlIGJl
Zm9yZSBjYWxsaW5nLgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akM6OnJlbW92ZWRGcm9tTWVkaWFTb3VyY2UpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlNv
dXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpyZWFkeVN0YXRlKTogRGl0dG8uCisgICAgICAgIChX
ZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6c2V0UmVhZHlTdGF0ZSk6IERpdHRv
LgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OnRyYWNrRGlk
Q2hhbmdlRW5hYmxlZCk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUHJp
dmF0ZUFWRk9iakM6OmZsdXNoQW5kRW5xdWV1ZU5vbkRpc3BsYXlpbmdTYW1wbGVzKTogRGl0dG8u
CisgICAgICAgIChXZWJDb3JlOjpTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6ZW5xdWV1ZVNh
bXBsZSk6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akM6OnNldEFjdGl2ZSk6IERpdHRvLgorICAgICAgICAqIHBsYXRmb3JtL21vY2svbWVkaWFzb3Vy
Y2UvTW9ja01lZGlhU291cmNlUHJpdmF0ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNb2NrTWVk
aWFTb3VyY2VQcml2YXRlOjp+TW9ja01lZGlhU291cmNlUHJpdmF0ZSk6IENsZWFyIHRoZSBTb3Vy
Y2VCdWZmZXIncyBiYWNrcG9pbnRlci4KKyAgICAgICAgKiBwbGF0Zm9ybS9tb2NrL21lZGlhc291
cmNlL01vY2tTb3VyY2VCdWZmZXJQcml2YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tT
b3VyY2VCdWZmZXJQcml2YXRlOjpNb2NrU291cmNlQnVmZmVyUHJpdmF0ZSk6IFJlbmFtZSBtX3Bh
cmVudCAtPiBtX21lZGlhU291cmNlLgorICAgICAgICAoV2ViQ29yZTo6TW9ja1NvdXJjZUJ1ZmZl
clByaXZhdGU6OnJlbW92ZWRGcm9tTWVkaWFTb3VyY2UpOiBDaGVjayBtX21lZGlhU291cmNlIGJl
Zm9yZSBjYWxsaW5nLgorICAgICAgICAoV2ViQ29yZTo6TW9ja1NvdXJjZUJ1ZmZlclByaXZhdGU6
OnJlYWR5U3RhdGUpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6Ok1vY2tTb3VyY2VCdWZmZXJQ
cml2YXRlOjpzZXRSZWFkeVN0YXRlKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpNb2NrU291
cmNlQnVmZmVyUHJpdmF0ZTo6c2V0QWN0aXZlKTogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0v
bW9jay9tZWRpYXNvdXJjZS9Nb2NrU291cmNlQnVmZmVyUHJpdmF0ZS5oOgorICAgICAgICAoV2Vi
Q29yZTo6TW9ja1NvdXJjZUJ1ZmZlclByaXZhdGU6OmNsZWFyTWVkaWFTb3VyY2UpOgorCiAyMDEz
LTEyLTA1ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIFtNU0Vd
W01hY10gRGlzYWJsZSBBVkZvdW5kYXRpb24gd2hlbiBlbmFibGluZyB0aGUgTW9ja01lZGlhUGxh
eWVyTWVkaWFTb3VyY2UuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFTb3Vy
Y2VQcml2YXRlQVZGT2JqQy5tbQppbmRleCBjNTZiNTBiZjU5YmFmZDRiMDhlOTI5MDIzNzQwZWI4
ODYxMzRjZGZiLi5jMmQzZTM4OTQ5MGUxODhlNmM4NDdjNWMxNmNhZTQ0YjUxYmE1MTkwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2Jq
Yy9NZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMu
bW0KQEAgLTU3LDYgKzU3LDggQEAgTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQzo6TWVkaWFTb3Vy
Y2VQcml2YXRlQVZGT2JqQyhNZWRpYVBsYXllclByaXZhdGVNZWRpYVNvdXIKIAogTWVkaWFTb3Vy
Y2VQcml2YXRlQVZGT2JqQzo6fk1lZGlhU291cmNlUHJpdmF0ZUFWRk9iakMoKQogeworICAgIGZv
ciAoYXV0byBpdCA9IG1fc291cmNlQnVmZmVycy5iZWdpbigpLCBlbmQgPSBtX3NvdXJjZUJ1ZmZl
cnMuZW5kKCk7IGl0ICE9IGVuZDsgKytpdCkKKyAgICAgICAgKCppdCktPmNsZWFyTWVkaWFTb3Vy
Y2UoKTsKIH0KIAogTWVkaWFTb3VyY2VQcml2YXRlOjpBZGRTdGF0dXMgTWVkaWFTb3VyY2VQcml2
YXRlQVZGT2JqQzo6YWRkU291cmNlQnVmZmVyKGNvbnN0IENvbnRlbnRUeXBlJiBjb250ZW50VHlw
ZSwgUmVmUHRyPFNvdXJjZUJ1ZmZlclByaXZhdGU+JiBvdXRQcml2YXRlKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNl
QnVmZmVyUHJpdmF0ZUFWRk9iakMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLmgKaW5kZXggNzU4
ODljMTUwYzgwYmM3ZGExM2ExN2Q1ZTUzZDIzMGZlMzc1MjMzMi4uMDYxNDU4OTE4MjE5ZGI1Yjhk
OGVlNThlMTU1NDE2NTIwNmYwODQyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2Jq
Yy9Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5oCkBAIC01OSw2ICs1OSw4IEBAIHB1YmxpYzoK
ICAgICBzdGF0aWMgUmVmUHRyPFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDPiBjcmVhdGUoTWVk
aWFTb3VyY2VQcml2YXRlQVZGT2JqQyopOwogICAgIHZpcnR1YWwgflNvdXJjZUJ1ZmZlclByaXZh
dGVBVkZPYmpDKCk7CiAKKyAgICB2b2lkIGNsZWFyTWVkaWFTb3VyY2UoKSB7IG1fbWVkaWFTb3Vy
Y2UgPSAwOyB9CisKICAgICAvLyBBVlN0cmVhbURhdGFQYXJzZXIgZGVsZWdhdGUgbWV0aG9kcwog
ICAgIHZvaWQgZGlkUGFyc2VTdHJlYW1EYXRhQXNBc3NldChBVkFzc2V0Kik7CiAgICAgdm9pZCBk
aWRGYWlsVG9QYXJzZVN0cmVhbURhdGFXaXRoRXJyb3IoTlNFcnJvciopOwpAQCAtMTAxLDcgKzEw
Myw3IEBAIHByaXZhdGU6CiAgICAgUmV0YWluUHRyPEFWU2FtcGxlQnVmZmVyRGlzcGxheUxheWVy
PiBtX2Rpc3BsYXlMYXllcjsKICAgICBSZXRhaW5QdHI8TlNPYmplY3Q+IG1fZGVsZWdhdGU7CiAK
LSAgICBNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDKiBtX3BhcmVudDsKKyAgICBNZWRpYVNvdXJj
ZVByaXZhdGVBVkZPYmpDKiBtX21lZGlhU291cmNlOwogICAgIFNvdXJjZUJ1ZmZlclByaXZhdGVD
bGllbnQqIG1fY2xpZW50OwogCiAgICAgYm9vbCBtX3BhcnNpbmdTdWNjZWVkZWQ7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9T
b3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLm1tCmlu
ZGV4IGRkNzQxMzY4YmYzNDM1Y2E3MDI4NTg3NzJlMDZmMDY2MWJjYzFmYjUuLjQ0YTU5M2Q0Y2Nl
MmUzZWI4NjNiYmY4MTMxNTI3YTJmZWMzNmVkYWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVB
VkZPYmpDLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9vYmpjL1NvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDLm1tCkBAIC0yODQsNyArMjg0LDcg
QEAgUmVmUHRyPFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDPiBTb3VyY2VCdWZmZXJQcml2YXRl
QVZGT2JqQzo6Y3JlYXRlKE1lZGlhU291cmMKIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjpT
b3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQyhNZWRpYVNvdXJjZVByaXZhdGVBVkZPYmpDKiBwYXJl
bnQpCiAgICAgOiBtX3BhcnNlcihhZG9wdE5TKFtbZ2V0QVZTdHJlYW1EYXRhUGFyc2VyQ2xhc3Mo
KSBhbGxvY10gaW5pdF0pKQogICAgICwgbV9kZWxlZ2F0ZShhZG9wdE5TKFtbV2ViQVZTdHJlYW1E
YXRhUGFyc2VyTGlzdGVuZXIgYWxsb2NdIGluaXRXaXRoUGFyc2VyOm1fcGFyc2VyLmdldCgpIHBh
cmVudDp0aGlzXSkpCi0gICAgLCBtX3BhcmVudChwYXJlbnQpCisgICAgLCBtX21lZGlhU291cmNl
KHBhcmVudCkKICAgICAsIG1fY2xpZW50KDApCiAgICAgLCBtX3BhcnNpbmdTdWNjZWVkZWQodHJ1
ZSkKIHsKQEAgLTI5Myw3ICsyOTMsOCBAQCBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6U291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakMoTWVkaWFTb3VyY2VQcml2YXRlQVZGT2JqQwogU291cmNl
QnVmZmVyUHJpdmF0ZUFWRk9iakM6On5Tb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQygpCiB7CiAg
ICAgaWYgKG1fZGlzcGxheUxheWVyKSB7Ci0gICAgICAgIG1fcGFyZW50LT5wbGF5ZXIoKS0+cmVt
b3ZlRGlzcGxheUxheWVyKG1fZGlzcGxheUxheWVyLmdldCgpKTsKKyAgICAgICAgaWYgKG1fbWVk
aWFTb3VyY2UpCisgICAgICAgICAgICBtX21lZGlhU291cmNlLT5wbGF5ZXIoKS0+cmVtb3ZlRGlz
cGxheUxheWVyKG1fZGlzcGxheUxheWVyLmdldCgpKTsKICAgICAgICAgW21fZGlzcGxheUxheWVy
IGZsdXNoQW5kUmVtb3ZlSW1hZ2VdOwogICAgICAgICBbbV9kaXNwbGF5TGF5ZXIgc3RvcFJlcXVl
c3RpbmdNZWRpYURhdGFdOwogICAgICAgICBtX2Rpc3BsYXlMYXllciA9IG51bGxwdHI7CkBAIC0z
ODYsOCArMzg3LDggQEAgU291cmNlQnVmZmVyUHJpdmF0ZTo6QXBwZW5kUmVzdWx0IFNvdXJjZUJ1
ZmZlclByaXZhdGVBVkZPYmpDOjphcHBlbmQoY29uc3QgdW5zaWcKICAgICBMT0coTWVkaWEsICJT
b3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6YXBwZW5kKCVwKSAtIGRhdGE6JXAsIGxlbmd0aDol
ZCIsIHRoaXMsIGRhdGEsIGxlbmd0aCk7CiAgICAgW21fcGFyc2VyIGFwcGVuZFN0cmVhbURhdGE6
W05TRGF0YSBkYXRhV2l0aEJ5dGVzOmRhdGEgbGVuZ3RoOmxlbmd0aF1dOwogCi0gICAgaWYgKG1f
cGFyc2luZ1N1Y2NlZWRlZCkKLSAgICAgICAgbV9wYXJlbnQtPnBsYXllcigpLT5zZXRMb2FkaW5n
UHJvZ3Jlc3NzZWQodHJ1ZSk7CisgICAgaWYgKG1fcGFyc2luZ1N1Y2NlZWRlZCAmJiBtX21lZGlh
U291cmNlKQorICAgICAgICBtX21lZGlhU291cmNlLT5wbGF5ZXIoKS0+c2V0TG9hZGluZ1Byb2dy
ZXNzc2VkKHRydWUpOwogCiAgICAgcmV0dXJuIG1fcGFyc2luZ1N1Y2NlZWRlZCA/IEFwcGVuZFN1
Y2NlZWRlZCA6IFBhcnNpbmdGYWlsZWQ7CiB9CkBAIC00MDAsMjMgKzQwMSwyNiBAQCB2b2lkIFNv
dXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjphYm9ydCgpCiB2b2lkIFNvdXJjZUJ1ZmZlclByaXZh
dGVBVkZPYmpDOjpyZW1vdmVkRnJvbU1lZGlhU291cmNlKCkKIHsKICAgICBpZiAobV9kaXNwbGF5
TGF5ZXIpIHsKLSAgICAgICAgbV9wYXJlbnQtPnBsYXllcigpLT5yZW1vdmVEaXNwbGF5TGF5ZXIo
bV9kaXNwbGF5TGF5ZXIuZ2V0KCkpOworICAgICAgICBpZiAobV9tZWRpYVNvdXJjZSkKKyAgICAg
ICAgICAgIG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5yZW1vdmVEaXNwbGF5TGF5ZXIobV9kaXNw
bGF5TGF5ZXIuZ2V0KCkpOwogICAgICAgICBbbV9kaXNwbGF5TGF5ZXIgZmx1c2hdOwogICAgICAg
ICBbbV9kaXNwbGF5TGF5ZXIgc3RvcFJlcXVlc3RpbmdNZWRpYURhdGFdOwogICAgICAgICBtX2Rp
c3BsYXlMYXllciA9IG51bGxwdHI7CiAgICAgfQogCi0gICAgbV9wYXJlbnQtPnJlbW92ZVNvdXJj
ZUJ1ZmZlcih0aGlzKTsKKyAgICBpZiAobV9tZWRpYVNvdXJjZSkKKyAgICAgICAgbV9tZWRpYVNv
dXJjZS0+cmVtb3ZlU291cmNlQnVmZmVyKHRoaXMpOwogfQogCiBNZWRpYVBsYXllcjo6UmVhZHlT
dGF0ZSBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6cmVhZHlTdGF0ZSgpIGNvbnN0CiB7Ci0g
ICAgcmV0dXJuIG1fcGFyZW50LT5wbGF5ZXIoKS0+cmVhZHlTdGF0ZSgpOworICAgIHJldHVybiBt
X21lZGlhU291cmNlID8gbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnJlYWR5U3RhdGUoKSA6IE1l
ZGlhUGxheWVyOjpIYXZlTm90aGluZzsKIH0KIAogdm9pZCBTb3VyY2VCdWZmZXJQcml2YXRlQVZG
T2JqQzo6c2V0UmVhZHlTdGF0ZShNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSByZWFkeVN0YXRlKQog
ewotICAgIG1fcGFyZW50LT5wbGF5ZXIoKS0+c2V0UmVhZHlTdGF0ZShyZWFkeVN0YXRlKTsKKyAg
ICBpZiAobV9tZWRpYVNvdXJjZSkKKyAgICAgICAgbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNl
dFJlYWR5U3RhdGUocmVhZHlTdGF0ZSk7CiB9CiAKIHZvaWQgU291cmNlQnVmZmVyUHJpdmF0ZUFW
Rk9iakM6OmV2aWN0Q29kZWRGcmFtZXMoKQpAQCAtNDUzLDYgKzQ1Nyw4IEBAIHZvaWQgU291cmNl
QnVmZmVyUHJpdmF0ZUFWRk9iakM6OnRyYWNrRGlkQ2hhbmdlRW5hYmxlZChWaWRlb1RyYWNrUHJp
dmF0ZU1lZGlhU291CiAgICAgaWYgKCF0cmFjay0+c2VsZWN0ZWQoKSAmJiBtX2VuYWJsZWRWaWRl
b1RyYWNrSUQgPT0gdHJhY2tJRCkgewogICAgICAgICBtX2VuYWJsZWRWaWRlb1RyYWNrSUQgPSAt
MTsKICAgICAgICAgW21fcGFyc2VyIHNldFNob3VsZFByb3ZpZGVNZWRpYURhdGE6Tk8gZm9yVHJh
Y2tJRDp0cmFja0lEXTsKKyAgICAgICAgaWYgKG1fbWVkaWFTb3VyY2UpCisgICAgICAgICAgICBt
X21lZGlhU291cmNlLT5wbGF5ZXIoKS0+cmVtb3ZlRGlzcGxheUxheWVyKG1fZGlzcGxheUxheWVy
LmdldCgpKTsKICAgICB9IGVsc2UgaWYgKHRyYWNrLT5zZWxlY3RlZCgpKSB7CiAgICAgICAgIG1f
ZW5hYmxlZFZpZGVvVHJhY2tJRCA9IHRyYWNrSUQ7CiAgICAgICAgIFttX3BhcnNlciBzZXRTaG91
bGRQcm92aWRlTWVkaWFEYXRhOllFUyBmb3JUcmFja0lEOnRyYWNrSURdOwpAQCAtNDYyLDcgKzQ2
OCw4IEBAIHZvaWQgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OnRyYWNrRGlkQ2hhbmdlRW5h
YmxlZChWaWRlb1RyYWNrUHJpdmF0ZU1lZGlhU291CiAgICAgICAgICAgICAgICAgaWYgKG1fY2xp
ZW50KQogICAgICAgICAgICAgICAgICAgICBtX2NsaWVudC0+c291cmNlQnVmZmVyUHJpdmF0ZURp
ZEJlY29tZVJlYWR5Rm9yTW9yZVNhbXBsZXModGhpcyk7CiAgICAgICAgICAgICB9XTsKLSAgICAg
ICAgICAgIG1fcGFyZW50LT5wbGF5ZXIoKS0+YWRkRGlzcGxheUxheWVyKG1fZGlzcGxheUxheWVy
LmdldCgpKTsKKyAgICAgICAgICAgIGlmIChtX21lZGlhU291cmNlKQorICAgICAgICAgICAgICAg
IG1fbWVkaWFTb3VyY2UtPnBsYXllcigpLT5hZGREaXNwbGF5TGF5ZXIobV9kaXNwbGF5TGF5ZXIu
Z2V0KCkpOwogICAgICAgICB9CiAgICAgfQogfQpAQCAtNTA4LDcgKzUxNSw4IEBAIHZvaWQgU291
cmNlQnVmZmVyUHJpdmF0ZUFWRk9iakM6OmZsdXNoQW5kRW5xdWV1ZU5vbkRpc3BsYXlpbmdTYW1w
bGVzKFZlY3RvcjxSZWZQCiAgICAgICAgIFttX2Rpc3BsYXlMYXllciBlbnF1ZXVlU2FtcGxlQnVm
ZmVyOnNhbXBsZUJ1ZmZlci5nZXQoKV07CiAgICAgfQogCi0gICAgbV9wYXJlbnQtPnBsYXllcigp
LT5zZXRIYXNBdmFpbGFibGVWaWRlb0ZyYW1lKGZhbHNlKTsKKyAgICBpZiAobV9tZWRpYVNvdXJj
ZSkKKyAgICAgICAgbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWlsYWJsZVZpZGVv
RnJhbWUoZmFsc2UpOwogfQogCiB2b2lkIFNvdXJjZUJ1ZmZlclByaXZhdGVBVkZPYmpDOjplbnF1
ZXVlU2FtcGxlKFBhc3NSZWZQdHI8TWVkaWFTYW1wbGU+IHBycE1lZGlhU2FtcGxlLCBBdG9taWNT
dHJpbmcgdHJhY2tJRCkKQEAgLTUyMyw3ICs1MzEsOCBAQCB2b2lkIFNvdXJjZUJ1ZmZlclByaXZh
dGVBVkZPYmpDOjplbnF1ZXVlU2FtcGxlKFBhc3NSZWZQdHI8TWVkaWFTYW1wbGU+IHBycE1lZGlh
UwogICAgICAgICByZXR1cm47CiAKICAgICBbbV9kaXNwbGF5TGF5ZXIgZW5xdWV1ZVNhbXBsZUJ1
ZmZlcjpwbGF0Zm9ybVNhbXBsZS5zYW1wbGUuY21TYW1wbGVCdWZmZXJdOwotICAgIG1fcGFyZW50
LT5wbGF5ZXIoKS0+c2V0SGFzQXZhaWxhYmxlVmlkZW9GcmFtZSh0cnVlKTsKKyAgICBpZiAobV9t
ZWRpYVNvdXJjZSkKKyAgICAgICAgbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnNldEhhc0F2YWls
YWJsZVZpZGVvRnJhbWUodHJ1ZSk7CiB9CiAKIGJvb2wgU291cmNlQnVmZmVyUHJpdmF0ZUFWRk9i
akM6OmlzUmVhZHlGb3JNb3JlU2FtcGxlcygpCkBAIC01MzMsNyArNTQyLDggQEAgYm9vbCBTb3Vy
Y2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6aXNSZWFkeUZvck1vcmVTYW1wbGVzKCkKIAogdm9pZCBT
b3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6c2V0QWN0aXZlKGJvb2wgaXNBY3RpdmUpCiB7Ci0g
ICAgbV9wYXJlbnQtPnNvdXJjZUJ1ZmZlclByaXZhdGVEaWRDaGFuZ2VBY3RpdmVTdGF0ZSh0aGlz
LCBpc0FjdGl2ZSk7CisgICAgaWYgKG1fbWVkaWFTb3VyY2UpCisgICAgICAgIG1fbWVkaWFTb3Vy
Y2UtPnNvdXJjZUJ1ZmZlclByaXZhdGVEaWRDaGFuZ2VBY3RpdmVTdGF0ZSh0aGlzLCBpc0FjdGl2
ZSk7CiB9CiAKIE1lZGlhVGltZSBTb3VyY2VCdWZmZXJQcml2YXRlQVZGT2JqQzo6ZmFzdFNlZWtU
aW1lRm9yTWVkaWFUaW1lKE1lZGlhVGltZSB0aW1lLCBNZWRpYVRpbWUgbmVnYXRpdmVUaHJlc2hv
bGQsIE1lZGlhVGltZSBwb3NpdGl2ZVRocmVzaG9sZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291cmNlUHJpdmF0ZS5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tNZWRpYVNvdXJj
ZVByaXZhdGUuY3BwCmluZGV4IGYzODc4ZGQ4MWVlODZmZTU3ODk3ZjM0YTAwOTEyN2U3MDRjMjE1
NjEuLmU5ZjUyMDhmNDkzMmM2MDg4YjdjNjFiN2RhNmYxODhlZWI2NWRlMGYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja01lZGlhU291cmNl
UHJpdmF0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJj
ZS9Nb2NrTWVkaWFTb3VyY2VQcml2YXRlLmNwcApAQCAtNDksNiArNDksOCBAQCBNb2NrTWVkaWFT
b3VyY2VQcml2YXRlOjpNb2NrTWVkaWFTb3VyY2VQcml2YXRlKE1vY2tNZWRpYVBsYXllck1lZGlh
U291cmNlKiBwYXJlbgogCiBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjp+TW9ja01lZGlhU291cmNl
UHJpdmF0ZSgpCiB7CisgICAgZm9yIChhdXRvIGl0ID0gbV9zb3VyY2VCdWZmZXJzLmJlZ2luKCks
IGVuZCA9IG1fc291cmNlQnVmZmVycy5lbmQoKTsgaXQgIT0gZW5kOyArK2l0KQorICAgICAgICAo
Kml0KS0+Y2xlYXJNZWRpYVNvdXJjZSgpOwogfQogCiBNZWRpYVNvdXJjZVByaXZhdGU6OkFkZFN0
YXR1cyBNb2NrTWVkaWFTb3VyY2VQcml2YXRlOjphZGRTb3VyY2VCdWZmZXIoY29uc3QgQ29udGVu
dFR5cGUmIGNvbnRlbnRUeXBlLCBSZWZQdHI8U291cmNlQnVmZmVyUHJpdmF0ZT4mIG91dFByaXZh
dGUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNl
L01vY2tTb3VyY2VCdWZmZXJQcml2YXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svbWVkaWFzb3VyY2UvTW9ja1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCmluZGV4IGVlYjFkZTY0
MGIxZmUwYTUyZTM1ZGY5ZWJlZGQ1Yzk4OGJlN2QyMzMuLjg3NjcwZGFmZGJiY2Y0OWI5OTQ5NmQ4
NDdlM2M1NDkwN2I4ZTI4NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21v
Y2svbWVkaWFzb3VyY2UvTW9ja1NvdXJjZUJ1ZmZlclByaXZhdGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL21vY2svbWVkaWFzb3VyY2UvTW9ja1NvdXJjZUJ1ZmZlclByaXZhdGUu
Y3BwCkBAIC0xMDAsNyArMTAwLDcgQEAgUmVmUHRyPE1vY2tTb3VyY2VCdWZmZXJQcml2YXRlPiBN
b2NrU291cmNlQnVmZmVyUHJpdmF0ZTo6Y3JlYXRlKE1vY2tNZWRpYVNvdXJjZVAKIH0KIAogTW9j
a1NvdXJjZUJ1ZmZlclByaXZhdGU6Ok1vY2tTb3VyY2VCdWZmZXJQcml2YXRlKE1vY2tNZWRpYVNv
dXJjZVByaXZhdGUqIHBhcmVudCkKLSAgICA6IG1fcGFyZW50KHBhcmVudCkKKyAgICA6IG1fbWVk
aWFTb3VyY2UocGFyZW50KQogICAgICwgbV9jbGllbnQoMCkKIHsKIH0KQEAgLTE4NywxNyArMTg3
LDE5IEBAIHZvaWQgTW9ja1NvdXJjZUJ1ZmZlclByaXZhdGU6OmFib3J0KCkKIAogdm9pZCBNb2Nr
U291cmNlQnVmZmVyUHJpdmF0ZTo6cmVtb3ZlZEZyb21NZWRpYVNvdXJjZSgpCiB7Ci0gICAgbV9w
YXJlbnQtPnJlbW92ZVNvdXJjZUJ1ZmZlcih0aGlzKTsKKyAgICBpZiAobV9tZWRpYVNvdXJjZSkK
KyAgICAgICAgbV9tZWRpYVNvdXJjZS0+cmVtb3ZlU291cmNlQnVmZmVyKHRoaXMpOwogfQogCiBN
ZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBNb2NrU291cmNlQnVmZmVyUHJpdmF0ZTo6cmVhZHlTdGF0
ZSgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fcGFyZW50LT5wbGF5ZXIoKS0+cmVhZHlTdGF0ZSgp
OworICAgIHJldHVybiBtX21lZGlhU291cmNlID8gbV9tZWRpYVNvdXJjZS0+cGxheWVyKCktPnJl
YWR5U3RhdGUoKSA6IE1lZGlhUGxheWVyOjpIYXZlTm90aGluZzsKIH0KIAogdm9pZCBNb2NrU291
cmNlQnVmZmVyUHJpdmF0ZTo6c2V0UmVhZHlTdGF0ZShNZWRpYVBsYXllcjo6UmVhZHlTdGF0ZSBy
ZWFkeVN0YXRlKQogewotICAgIG1fcGFyZW50LT5wbGF5ZXIoKS0+c2V0UmVhZHlTdGF0ZShyZWFk
eVN0YXRlKTsKKyAgICBpZiAobV9tZWRpYVNvdXJjZSkKKyAgICAgICAgbV9tZWRpYVNvdXJjZS0+
cGxheWVyKCktPnNldFJlYWR5U3RhdGUocmVhZHlTdGF0ZSk7CiB9CiAKIHZvaWQgTW9ja1NvdXJj
ZUJ1ZmZlclByaXZhdGU6OmV2aWN0Q29kZWRGcmFtZXMoKQpAQCAtMjEyLDcgKzIxNCw4IEBAIGJv
b2wgTW9ja1NvdXJjZUJ1ZmZlclByaXZhdGU6OmlzRnVsbCgpCiAKIHZvaWQgTW9ja1NvdXJjZUJ1
ZmZlclByaXZhdGU6OnNldEFjdGl2ZShib29sIGlzQWN0aXZlKQogewotICAgIG1fcGFyZW50LT5z
b3VyY2VCdWZmZXJQcml2YXRlRGlkQ2hhbmdlQWN0aXZlU3RhdGUodGhpcywgaXNBY3RpdmUpOwor
ICAgIGlmIChtX21lZGlhU291cmNlKQorICAgICAgICBtX21lZGlhU291cmNlLT5zb3VyY2VCdWZm
ZXJQcml2YXRlRGlkQ2hhbmdlQWN0aXZlU3RhdGUodGhpcywgaXNBY3RpdmUpOwogfQogCiBib29s
IE1vY2tTb3VyY2VCdWZmZXJQcml2YXRlOjpoYXNWaWRlbygpIGNvbnN0CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tTb3VyY2VCdWZmZXJQ
cml2YXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tb2NrL21lZGlhc291cmNlL01vY2tT
b3VyY2VCdWZmZXJQcml2YXRlLmgKaW5kZXggOWI4Yjg1NzJlYzJkN2E5ZjBhOTFjNDY4MzA5MWZi
M2VkNjFkNjJmMi4uNGFmZjJjY2MzODNjNmFiY2Y0OWIzYjU3NDgwMzljMWY0NzNiNGNmNyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbW9jay9tZWRpYXNvdXJjZS9Nb2NrU291
cmNlQnVmZmVyUHJpdmF0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21vY2svbWVk
aWFzb3VyY2UvTW9ja1NvdXJjZUJ1ZmZlclByaXZhdGUuaApAQCAtNTAsNiArNTAsOCBAQCBwdWJs
aWM6CiAgICAgc3RhdGljIFJlZlB0cjxNb2NrU291cmNlQnVmZmVyUHJpdmF0ZT4gY3JlYXRlKE1v
Y2tNZWRpYVNvdXJjZVByaXZhdGUqKTsKICAgICB2aXJ0dWFsIH5Nb2NrU291cmNlQnVmZmVyUHJp
dmF0ZSgpOwogCisgICAgdm9pZCBjbGVhck1lZGlhU291cmNlKCkgeyBtX21lZGlhU291cmNlID0g
MDsgfQorCiAgICAgYm9vbCBoYXNWaWRlbygpIGNvbnN0OwogICAgIGJvb2wgaGFzQXVkaW8oKSBj
b25zdDsKIApAQCAtNzcsNyArNzksNyBAQCBwcml2YXRlOgogICAgIHZvaWQgZGlkUmVjZWl2ZUlu
aXRpYWxpemF0aW9uU2VnbWVudChjb25zdCBNb2NrSW5pdGlhbGl6YXRpb25Cb3gmKTsKICAgICB2
b2lkIGRpZFJlY2VpdmVTYW1wbGUoY29uc3QgTW9ja1NhbXBsZUJveCYpOwogCi0gICAgTW9ja01l
ZGlhU291cmNlUHJpdmF0ZSogbV9wYXJlbnQ7CisgICAgTW9ja01lZGlhU291cmNlUHJpdmF0ZSog
bV9tZWRpYVNvdXJjZTsKICAgICBTb3VyY2VCdWZmZXJQcml2YXRlQ2xpZW50KiBtX2NsaWVudDsK
IAogICAgIFZlY3RvcjxjaGFyPiBtX2lucHV0QnVmZmVyOwo=
</data>
<flag name="review"
          id="242147"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>