<?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>62818</bug_id>
          
          <creation_ts>2011-06-16 14:08:02 -0700</creation_ts>
          <short_desc>FrameLoader doesn&apos;t need completeURL or baseURL</short_desc>
          <delta_ts>2011-06-16 16:15:28 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Eric Seidel (no email)">eric</assigned_to>
          <cc>abarth</cc>
    
    <cc>dglazkov</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>422201</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-06-16 14:08:02 -0700</bug_when>
    <thetext>FrameLoader doesn&apos;t need completeURL or baseURL</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422203</commentid>
    <comment_count>1</comment_count>
      <attachid>97493</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-06-16 14:08:36 -0700</bug_when>
    <thetext>Created attachment 97493
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422204</commentid>
    <comment_count>2</comment_count>
      <attachid>97493</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-06-16 14:12:31 -0700</bug_when>
    <thetext>Comment on attachment 97493
Patch

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

&gt; Source/WebCore/html/HTMLPlugInImageElement.cpp:103
&gt; +    ASSERT(frameLoader);

This assert is kind of pointless.

&gt; Source/WebCore/inspector/InspectorPageAgent.cpp:320
&gt; -    frame-&gt;loader()-&gt;changeLocation(mainFrame-&gt;document()-&gt;securityOrigin(), frame-&gt;loader()-&gt;completeURL(url), &quot;&quot;, false, false);
&gt; +    frame-&gt;loader()-&gt;changeLocation(mainFrame-&gt;document()-&gt;securityOrigin(), mainFrame-&gt;document()-&gt;completeURL(url), &quot;&quot;, false, false);

Why mainFrame and not frame ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422246</commentid>
    <comment_count>3</comment_count>
      <attachid>97493</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-16 14:39:19 -0700</bug_when>
    <thetext>Comment on attachment 97493
Patch

Attachment 97493 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/8877332</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422248</commentid>
    <comment_count>4</comment_count>
      <attachid>97493</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-16 14:40:53 -0700</bug_when>
    <thetext>Comment on attachment 97493
Patch

Attachment 97493 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/8872318</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422256</commentid>
    <comment_count>5</comment_count>
      <attachid>97506</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-06-16 14:48:30 -0700</bug_when>
    <thetext>Created attachment 97506
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422271</commentid>
    <comment_count>6</comment_count>
      <attachid>97506</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-16 15:02:12 -0700</bug_when>
    <thetext>Comment on attachment 97506
Patch

Attachment 97506 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/8876353</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422275</commentid>
    <comment_count>7</comment_count>
      <attachid>97509</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-06-16 15:05:45 -0700</bug_when>
    <thetext>Created attachment 97509
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422280</commentid>
    <comment_count>8</comment_count>
      <attachid>97509</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2011-06-16 15:14:13 -0700</bug_when>
    <thetext>Comment on attachment 97509
Patch

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

&gt; Source/WebCore/bindings/generic/GenericBinding.h:61
&gt; -    return frame-&gt;loader()-&gt;completeURL(relativeURL);
&gt; +    return frame-&gt;document()-&gt;completeURL(relativeURL);

I probably wrote this line of code (or at least reviewed it).  :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422288</commentid>
    <comment_count>9</comment_count>
      <attachid>97509</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-16 15:22:34 -0700</bug_when>
    <thetext>Comment on attachment 97509
Patch

Attachment 97509 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/8877354</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422294</commentid>
    <comment_count>10</comment_count>
      <attachid>97511</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2011-06-16 15:27:18 -0700</bug_when>
    <thetext>Created attachment 97511
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422311</commentid>
    <comment_count>11</comment_count>
      <attachid>97511</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-16 16:15:23 -0700</bug_when>
    <thetext>Comment on attachment 97511
Patch

Clearing flags on attachment: 97511

Committed r89079: &lt;http://trac.webkit.org/changeset/89079&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>422312</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-06-16 16:15:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>97493</attachid>
            <date>2011-06-16 14:08:36 -0700</date>
            <delta_ts>2011-06-16 14:48:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-62818-20110616140834.patch</filename>
            <type>text/plain</type>
            <size>6601</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODkwNjIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3YmNhOGNkY2QxYTFiNzFk
YmExMWZhZDEyZmM3YjczOTJmMTQzMGUxLi5hMzQxOWU3NTE0MmI3MmE3NjM1NDI2YWRjNTEzNDlh
ZmNmOGRiNTEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDYtMTYgIEVyaWMg
U2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEZyYW1lTG9hZGVyIGRvZXNuJ3QgbmVlZCBjb21wbGV0ZVVSTCBv
ciBiYXNlVVJMCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02MjgxOAorCisgICAgICAgIE5vIGZ1bmN0aW9uYWwgY2hhbmdlLCB0aHVzIG5vIHRlc3RzLgor
CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmlzSW1hZ2VUeXBlKToKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndvdWxkTG9hZEFzTmV0c2NhcGVQbHVnaW4p
OgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpvcGVuKToKKyAgICAgICAgKiBsb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5oOgorICAgICAgICAq
IGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmln
YXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UpOgorICAgICAgICAqIHBhZ2Uv
SGlzdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Ojp1cmxGb3JTdGF0ZSk6CisK
IDIwMTEtMDYtMTYgIHVuYSBzYWJvdmljICA8dW5hLnNhYm92aWNAcGFsbS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFBsdWdJbkltYWdlRWxlbWVudC5jcHAKaW5kZXggMmI0YThlYzZlODIzMjU0MzRhYWQ1Njk4YTUx
NGRkYjljZTU0NDIzNy4uNzYwMTQ5ZGYwZGU1OWE4YjVmNDU3ZWEwNTgwNGRkMGRmNmQ0ZDQ2ZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCkBA
IC01OSw3ICs1OSw3IEBAIGJvb2wgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6aXNJbWFnZVR5cGUo
KQogICAgICAgICBtX3NlcnZpY2VUeXBlID0gbWltZVR5cGVGcm9tRGF0YVVSTChtX3VybCk7CiAK
ICAgICBpZiAoRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQoKS0+ZnJhbWUoKSkgewotICAgICAgICBL
VVJMIGNvbXBsZXRlZFVSTCA9IGZyYW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwobV91cmwpOwor
ICAgICAgICBLVVJMIGNvbXBsZXRlZFVSTCA9IGRvY3VtZW50KCktPmNvbXBsZXRlVVJMKG1fdXJs
KTsKICAgICAgICAgcmV0dXJuIGZyYW1lLT5sb2FkZXIoKS0+Y2xpZW50KCktPm9iamVjdENvbnRl
bnRUeXBlKGNvbXBsZXRlZFVSTCwgbV9zZXJ2aWNlVHlwZSwgc2hvdWxkUHJlZmVyUGx1Z0luc0Zv
ckltYWdlcygpKSA9PSBPYmplY3RDb250ZW50SW1hZ2U7CiAgICAgfQogCkBAIC05NSwxMiArOTUs
MTIgQEAgYm9vbCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp3b3VsZExvYWRBc05ldHNjYXBlUGx1
Z2luKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdAogewogICAgIEFTU0VSVChkb2N1bWVudCgpKTsK
ICAgICBBU1NFUlQoZG9jdW1lbnQoKS0+ZnJhbWUoKSk7Ci0gICAgRnJhbWVMb2FkZXIqIGZyYW1l
TG9hZGVyID0gZG9jdW1lbnQoKS0+ZnJhbWUoKS0+bG9hZGVyKCk7Ci0gICAgQVNTRVJUKGZyYW1l
TG9hZGVyKTsKICAgICBLVVJMIGNvbXBsZXRlZFVSTDsKICAgICBpZiAoIXVybC5pc0VtcHR5KCkp
Ci0gICAgICAgIGNvbXBsZXRlZFVSTCA9IGZyYW1lTG9hZGVyLT5jb21wbGV0ZVVSTCh1cmwpOwor
ICAgICAgICBjb21wbGV0ZWRVUkwgPSBkb2N1bWVudCgpLT5jb21wbGV0ZVVSTCh1cmwpOwogCisg
ICAgRnJhbWVMb2FkZXIqIGZyYW1lTG9hZGVyID0gZG9jdW1lbnQoKS0+ZnJhbWUoKS0+bG9hZGVy
KCk7CisgICAgQVNTRVJUKGZyYW1lTG9hZGVyKTsKICAgICBpZiAoZnJhbWVMb2FkZXItPmNsaWVu
dCgpLT5vYmplY3RDb250ZW50VHlwZShjb21wbGV0ZWRVUkwsIHNlcnZpY2VUeXBlLCBzaG91bGRQ
cmVmZXJQbHVnSW5zRm9ySW1hZ2VzKCkpID09IE9iamVjdENvbnRlbnROZXRzY2FwZVBsdWdpbikK
ICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmNwcAppbmRleCA4ZDUzZDY4Zjc4Y2Ex
YzcxODJjN2M0Mjc4NDI4MDY0Yjg1OTA1Yzc0Li4xNzUxNmMwOWRhYWQyMzFlOGIxNTViOTUxN2Rh
NmVlMjdhNDEwYmMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yUGFnZUFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9y
UGFnZUFnZW50LmNwcApAQCAtMzE3LDcgKzMxNyw3IEBAIHZvaWQgSW5zcGVjdG9yUGFnZUFnZW50
OjpvcGVuKEVycm9yU3RyaW5nKiwgY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IGJvb2wqIGNvbnN0
CiAgICAgICAgIGZyYW1lID0gbWFpbkZyYW1lOwogCiAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3Ig
aW5kaWNhdG9yKERlZmluaXRlbHlQcm9jZXNzaW5nVXNlckdlc3R1cmUpOwotICAgIGZyYW1lLT5s
b2FkZXIoKS0+Y2hhbmdlTG9jYXRpb24obWFpbkZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9y
aWdpbigpLCBmcmFtZS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKHVybCksICIiLCBmYWxzZSwgZmFs
c2UpOworICAgIGZyYW1lLT5sb2FkZXIoKS0+Y2hhbmdlTG9jYXRpb24obWFpbkZyYW1lLT5kb2N1
bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCBtYWluRnJhbWUtPmRvY3VtZW50KCktPmNvbXBsZXRl
VVJMKHVybCksICIiLCBmYWxzZSwgZmFsc2UpOwogfQogCiBzdGF0aWMgUGFzc1JlZlB0cjxJbnNw
ZWN0b3JPYmplY3Q+IGJ1aWxkT2JqZWN0Rm9yQ29va2llKGNvbnN0IENvb2tpZSYgY29va2llKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJj
ZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXggOWJiMDg0MDBlZTY1MDgzNDE1
MDdkMjdmMjQ0ZTBkYWMzYzdiZDgwNi4uZDhiOTE1YWQyZmFhYTZhM2I3MzRhY2NlZjliM2M2ZGQ4
MDFkZDI1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC03ODgsMTgg
Kzc4OCw2IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNoZWNrQ2FsbEltcGxpY2l0Q2xvc2UoKQogICAg
IG1fZnJhbWUtPmRvY3VtZW50KCktPmltcGxpY2l0Q2xvc2UoKTsKIH0KIAotS1VSTCBGcmFtZUxv
YWRlcjo6YmFzZVVSTCgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkp
OwotICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpLT5iYXNlVVJMKCk7Ci19Ci0KLUtVUkwg
RnJhbWVMb2FkZXI6OmNvbXBsZXRlVVJMKGNvbnN0IFN0cmluZyYgdXJsKQotewotICAgIEFTU0VS
VChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKLSAgICByZXR1cm4gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+
Y29tcGxldGVVUkwodXJsKTsKLX0KLQogdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFVSTEludG9DaGls
ZEZyYW1lKGNvbnN0IEtVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcmVyLCBGcmFtZSogY2hp
bGRGcmFtZSkKIHsKICAgICBBU1NFUlQoY2hpbGRGcmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFt
ZUxvYWRlci5oCmluZGV4IGM1M2EzNjVmNjNiZmQ4ZmRmNGIwMmU3ZDc4MDUzYjIwMzgwMGNhN2Mu
LmFlYWRlYTYxMDIxMGM1ZTZjYzJmZTgxNDdmNWFkZDJiOTBlMWYzYzggMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlci5oCkBAIC0yMTksOCArMjE5LDYgQEAgcHVibGljOgogICAgIHZvaWQg
ZGlkRW5kRG9jdW1lbnQoKTsKICAgICB2b2lkIHdpbGxTZXRFbmNvZGluZygpOwogCi0gICAgS1VS
TCBiYXNlVVJMKCkgY29uc3Q7Ci0KICAgICB2b2lkIGhhbmRsZWRPbmxvYWRFdmVudHMoKTsKICAg
ICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IEtVUkwmKSBjb25zdDsKIApAQCAtMjYwLDggKzI1OCw2
IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaXNDb21wbGV0ZSgpIGNvbnN0OwogCi0gICAgS1VSTCBj
b21wbGV0ZVVSTChjb25zdCBTdHJpbmcmIHVybCk7Ci0KICAgICB2b2lkIGNhbmNlbEFuZENsZWFy
KCk7CiAKICAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFN0cmluZ1dpdGhEaXJlY3Rpb24mKTsKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcAppbmRleCA3MTNh
MmM4NmNhM2ZkMGI2ZWRlMTgyNGIxNjdhNjAwMDhjNmU3MjYyLi45MWI4MTA4YWMzODQ4ZTI5NjEy
ZTljMGU4MjlhZmU2MTA1ZmMwNjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIv
TmF2aWdhdGlvblNjaGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmln
YXRpb25TY2hlZHVsZXIuY3BwCkBAIC0zMzUsMTIgKzMzNSwxMiBAQCB2b2lkIE5hdmlnYXRpb25T
Y2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoUGFzc1JlZlB0cjxTZWN1cml0eU9yaWdp
bj4gc2VjdQogICAgIGxvY2tCYWNrRm9yd2FyZExpc3QgPSBsb2NrQmFja0ZvcndhcmRMaXN0IHx8
IG11c3RMb2NrQmFja0ZvcndhcmRMaXN0KG1fZnJhbWUpOwogCiAgICAgRnJhbWVMb2FkZXIqIGxv
YWRlciA9IG1fZnJhbWUtPmxvYWRlcigpOwotICAgIAorCiAgICAgLy8gSWYgdGhlIFVSTCB3ZSdy
ZSBnb2luZyB0byBuYXZpZ2F0ZSB0byBpcyB0aGUgc2FtZSBhcyB0aGUgY3VycmVudCBvbmUsIGV4
Y2VwdCBmb3IgdGhlCiAgICAgLy8gZnJhZ21lbnQgcGFydCwgd2UgZG9uJ3QgbmVlZCB0byBzY2hl
ZHVsZSB0aGUgbG9jYXRpb24gY2hhbmdlLgogICAgIEtVUkwgcGFyc2VkVVJMKFBhcnNlZFVSTFN0
cmluZywgdXJsKTsKICAgICBpZiAocGFyc2VkVVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpICYm
IGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIobV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJs
KCksIHBhcnNlZFVSTCkpIHsKLSAgICAgICAgbG9hZGVyLT5jaGFuZ2VMb2NhdGlvbihzZWN1cml0
eU9yaWdpbiwgbG9hZGVyLT5jb21wbGV0ZVVSTCh1cmwpLCByZWZlcnJlciwgbG9ja0hpc3Rvcnks
IGxvY2tCYWNrRm9yd2FyZExpc3QpOworICAgICAgICBsb2FkZXItPmNoYW5nZUxvY2F0aW9uKHNl
Y3VyaXR5T3JpZ2luLCBtX2ZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTCh1cmwpLCByZWZl
cnJlciwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QpOwogICAgICAgICByZXR1cm47
CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5LmNwcAppbmRleCBmMjFiNjc3YThiYzhlMjQxZDgz
OTkxN2U2ODk2Njk1NDJkNTVhNmFmLi5hMzllNTFlMWRlZGE5ZjRjOGUxM2RiYWQyYjc4ZTlhYWE0
ZWY5ZWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKQEAgLTEwOSwxMCArMTA5LDEwIEBAIHZv
aWQgSGlzdG9yeTo6Z28oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwgaW50IGRpc3Rh
bmNlKQogCiBLVVJMIEhpc3Rvcnk6OnVybEZvclN0YXRlKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5n
KQogewotICAgIEtVUkwgYmFzZVVSTCA9IG1fZnJhbWUtPmxvYWRlcigpLT5iYXNlVVJMKCk7Cisg
ICAgS1VSTCBiYXNlVVJMID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+YmFzZVVSTCgpOwogICAgIGlm
ICh1cmxTdHJpbmcuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gYmFzZVVSTDsKLSAgICAgICAg
CisKICAgICByZXR1cm4gS1VSTChiYXNlVVJMLCB1cmxTdHJpbmcpOwogfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>97506</attachid>
            <date>2011-06-16 14:48:30 -0700</date>
            <delta_ts>2011-06-16 15:05:41 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-62818-20110616144829.patch</filename>
            <type>text/plain</type>
            <size>13919</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODkwNjIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3YmNhOGNkY2QxYTFiNzFk
YmExMWZhZDEyZmM3YjczOTJmMTQzMGUxLi5hMzQxOWU3NTE0MmI3MmE3NjM1NDI2YWRjNTEzNDlh
ZmNmOGRiNTEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDYtMTYgIEVyaWMg
U2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEZyYW1lTG9hZGVyIGRvZXNuJ3QgbmVlZCBjb21wbGV0ZVVSTCBv
ciBiYXNlVVJMCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02MjgxOAorCisgICAgICAgIE5vIGZ1bmN0aW9uYWwgY2hhbmdlLCB0aHVzIG5vIHRlc3RzLgor
CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmlzSW1hZ2VUeXBlKToKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndvdWxkTG9hZEFzTmV0c2NhcGVQbHVnaW4p
OgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpvcGVuKToKKyAgICAgICAgKiBsb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5oOgorICAgICAgICAq
IGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmln
YXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UpOgorICAgICAgICAqIHBhZ2Uv
SGlzdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Ojp1cmxGb3JTdGF0ZSk6CisK
IDIwMTEtMDYtMTYgIHVuYSBzYWJvdmljICA8dW5hLnNhYm92aWNAcGFsbS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCAxZjE4
NDcxZmEwZDlmYTE0Yjg3ODc0MmU1MDY5Y2MzOTg1OGUzYjMxLi4yOTlkNzE5MTYyZjBjZmZjODE1
OWFhZTQ3MzdjZWViYzEyM2FlOWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTU5LDcgKzE1
OSw2IEBAIF9fWk43V2ViQ29yZTExRmlsZUNob29zZXIxMGNob29zZUZpbGVFUktOM1dURjZTdHJp
bmdFCiBfX1pON1dlYkNvcmUxMUZpbGVDaG9vc2VyMTBpY29uTG9hZGVkRU4zV1RGMTBQYXNzUmVm
UHRySU5TXzRJY29uRUVFCiBfX1pON1dlYkNvcmUxMUZpbGVDaG9vc2VyMTFjaG9vc2VGaWxlc0VS
S04zV1RGNlZlY3RvcklOUzFfNlN0cmluZ0VMbTBFRUUKIF9fWk43V2ViQ29yZTExRmlsZUNob29z
ZXJEMUV2Ci1fX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTFjb21wbGV0ZVVSTEVSS04zV1RGNlN0
cmluZ0UKIF9fWk43V2ViQ29yZTExRnJhbWVMb2FkZXIxMWxvYWRBcmNoaXZlRU4zV1RGMTBQYXNz
UmVmUHRySU5TXzdBcmNoaXZlRUVFCiBfX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTFzaG91bGRD
bG9zZUV2CiBfX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTF1cmxTZWxlY3RlZEVSS05TXzRLVVJM
RVJLTjNXVEY2U3RyaW5nRU5TNF8xMFBhc3NSZWZQdHJJTlNfNUV2ZW50RUVFYmJOU18xNFJlZmVy
cmVyUG9saWN5RQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01B
cHBsaWNhdGlvbkNhY2hlQ3VzdG9tLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pT
RE9NQXBwbGljYXRpb25DYWNoZUN1c3RvbS5jcHAKaW5kZXggMjYzZjJmOTVjNmMwZjEyMzhlZjE3
ZTM0MTE2Y2I3MzBhYWM0ZjhjMy4uMDU5OGJlOWE5MzRhZDkwMzNjYjAyMWIwYmY4NTY2ZjQ0OWMw
MTZlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01BcHBsaWNh
dGlvbkNhY2hlQ3VzdG9tLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TUFwcGxpY2F0aW9uQ2FjaGVDdXN0b20uY3BwCkBAIC00OSw3ICs0OSw3IEBAIEpTVmFsdWUgSlNE
T01BcHBsaWNhdGlvbkNhY2hlOjpoYXNJdGVtKEV4ZWNTdGF0ZSogZXhlYykKICAgICBGcmFtZSog
ZnJhbWUgPSBhc0pTRE9NV2luZG93KGV4ZWMtPmR5bmFtaWNHbG9iYWxPYmplY3QoKSktPmltcGwo
KS0+ZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4ganNVbmRlZmluZWQo
KTsKLSAgICBjb25zdCBLVVJMJiB1cmwgPSBmcmFtZS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKGV4
ZWMtPmFyZ3VtZW50KDApLnRvU3RyaW5nKGV4ZWMpKTsKKyAgICBjb25zdCBLVVJMJiB1cmwgPSBm
cmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmco
ZXhlYykpOwogCiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAgYm9vbCByZXN1bHQgPSBp
bXBsKCktPmhhc0l0ZW0odXJsLCBlYyk7CkBAIC02Miw4ICs2Miw4IEBAIEpTVmFsdWUgSlNET01B
cHBsaWNhdGlvbkNhY2hlOjphZGQoRXhlY1N0YXRlKiBleGVjKQogICAgIEZyYW1lKiBmcmFtZSA9
IGFzSlNET01XaW5kb3coZXhlYy0+ZHluYW1pY0dsb2JhbE9iamVjdCgpKS0+aW1wbCgpLT5mcmFt
ZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAg
IGNvbnN0IEtVUkwmIHVybCA9IGZyYW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwoZXhlYy0+YXJn
dW1lbnQoMCkudG9TdHJpbmcoZXhlYykpOwotICAgIAorICAgIGNvbnN0IEtVUkwmIHVybCA9IGZy
YW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTChleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhl
eGVjKSk7CisKICAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKICAgICBpbXBsKCktPmFkZCh1cmws
IGVjKTsKICAgICBzZXRET01FeGNlcHRpb24oZXhlYywgZWMpOwpAQCAtNzUsOCArNzUsOCBAQCBK
U1ZhbHVlIEpTRE9NQXBwbGljYXRpb25DYWNoZTo6cmVtb3ZlKEV4ZWNTdGF0ZSogZXhlYykKICAg
ICBGcmFtZSogZnJhbWUgPSBhc0pTRE9NV2luZG93KGV4ZWMtPmR5bmFtaWNHbG9iYWxPYmplY3Qo
KSktPmltcGwoKS0+ZnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4ganNV
bmRlZmluZWQoKTsKLSAgICBjb25zdCBLVVJMJiB1cmwgPSBmcmFtZS0+bG9hZGVyKCktPmNvbXBs
ZXRlVVJMKGV4ZWMtPmFyZ3VtZW50KDApLnRvU3RyaW5nKGV4ZWMpKTsKLSAgICAKKyAgICBjb25z
dCBLVVJMJiB1cmwgPSBmcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoZXhlYy0+YXJndW1l
bnQoMCkudG9TdHJpbmcoZXhlYykpOworCiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAg
aW1wbCgpLT5yZW1vdmUodXJsLCBlYyk7CiAgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIGVjKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCmluZGV4
IDJiNGE4ZWM2ZTgyMzI1NDM0YWFkNTY5OGE1MTRkZGI5Y2U1NDQyMzcuLjc2MDE0OWRmMGRlNTlh
OGI1ZjQ1N2VhMDU4MDRkZDBkZjZkNGQ0NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9I
VE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcApAQCAtNTksNyArNTksNyBAQCBib29sIEhUTUxQbHVn
SW5JbWFnZUVsZW1lbnQ6OmlzSW1hZ2VUeXBlKCkKICAgICAgICAgbV9zZXJ2aWNlVHlwZSA9IG1p
bWVUeXBlRnJvbURhdGFVUkwobV91cmwpOwogCiAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRvY3Vt
ZW50KCktPmZyYW1lKCkpIHsKLSAgICAgICAgS1VSTCBjb21wbGV0ZWRVUkwgPSBmcmFtZS0+bG9h
ZGVyKCktPmNvbXBsZXRlVVJMKG1fdXJsKTsKKyAgICAgICAgS1VSTCBjb21wbGV0ZWRVUkwgPSBk
b2N1bWVudCgpLT5jb21wbGV0ZVVSTChtX3VybCk7CiAgICAgICAgIHJldHVybiBmcmFtZS0+bG9h
ZGVyKCktPmNsaWVudCgpLT5vYmplY3RDb250ZW50VHlwZShjb21wbGV0ZWRVUkwsIG1fc2Vydmlj
ZVR5cGUsIHNob3VsZFByZWZlclBsdWdJbnNGb3JJbWFnZXMoKSkgPT0gT2JqZWN0Q29udGVudElt
YWdlOwogICAgIH0KIApAQCAtOTUsMTIgKzk1LDEyIEBAIGJvb2wgSFRNTFBsdWdJbkltYWdlRWxl
bWVudDo6d291bGRMb2FkQXNOZXRzY2FwZVBsdWdpbihjb25zdCBTdHJpbmcmIHVybCwgY29uc3QK
IHsKICAgICBBU1NFUlQoZG9jdW1lbnQoKSk7CiAgICAgQVNTRVJUKGRvY3VtZW50KCktPmZyYW1l
KCkpOwotICAgIEZyYW1lTG9hZGVyKiBmcmFtZUxvYWRlciA9IGRvY3VtZW50KCktPmZyYW1lKCkt
PmxvYWRlcigpOwotICAgIEFTU0VSVChmcmFtZUxvYWRlcik7CiAgICAgS1VSTCBjb21wbGV0ZWRV
Ukw7CiAgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQotICAgICAgICBjb21wbGV0ZWRVUkwgPSBmcmFt
ZUxvYWRlci0+Y29tcGxldGVVUkwodXJsKTsKKyAgICAgICAgY29tcGxldGVkVVJMID0gZG9jdW1l
bnQoKS0+Y29tcGxldGVVUkwodXJsKTsKIAorICAgIEZyYW1lTG9hZGVyKiBmcmFtZUxvYWRlciA9
IGRvY3VtZW50KCktPmZyYW1lKCktPmxvYWRlcigpOworICAgIEFTU0VSVChmcmFtZUxvYWRlcik7
CiAgICAgaWYgKGZyYW1lTG9hZGVyLT5jbGllbnQoKS0+b2JqZWN0Q29udGVudFR5cGUoY29tcGxl
dGVkVVJMLCBzZXJ2aWNlVHlwZSwgc2hvdWxkUHJlZmVyUGx1Z0luc0ZvckltYWdlcygpKSA9PSBP
YmplY3RDb250ZW50TmV0c2NhcGVQbHVnaW4pCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIHJl
dHVybiBmYWxzZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JQYWdlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VB
Z2VudC5jcHAKaW5kZXggOGQ1M2Q2OGY3OGNhMWM3MTgyYzdjNDI3ODQyODA2NGI4NTkwNWM3NC4u
N2VjYzc1MWVjY2EzZWMzMzhkNzAwOTU0MWVlZGYxODdhYjkwZTMwMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKQEAgLTMxNyw3ICszMTcs
OCBAQCB2b2lkIEluc3BlY3RvclBhZ2VBZ2VudDo6b3BlbihFcnJvclN0cmluZyosIGNvbnN0IFN0
cmluZyYgdXJsLCBjb25zdCBib29sKiBjb25zdAogICAgICAgICBmcmFtZSA9IG1haW5GcmFtZTsK
IAogICAgIFVzZXJHZXN0dXJlSW5kaWNhdG9yIGluZGljYXRvcihEZWZpbml0ZWx5UHJvY2Vzc2lu
Z1VzZXJHZXN0dXJlKTsKLSAgICBmcmFtZS0+bG9hZGVyKCktPmNoYW5nZUxvY2F0aW9uKG1haW5G
cmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZnJhbWUtPmxvYWRlcigpLT5jb21w
bGV0ZVVSTCh1cmwpLCAiIiwgZmFsc2UsIGZhbHNlKTsKKyAgICAvLyBGSVhNRTogV2h5IGRvZXMg
b25lIHVzZSBtYWluRnJhbWUgYW5kIHRoZSBvdGhlciBmcmFtZT8KKyAgICBmcmFtZS0+bG9hZGVy
KCktPmNoYW5nZUxvY2F0aW9uKG1haW5GcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4o
KSwgZnJhbWUtPmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybCksICIiLCBmYWxzZSwgZmFsc2Up
OwogfQogCiBzdGF0aWMgUGFzc1JlZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGJ1aWxkT2JqZWN0Rm9y
Q29va2llKGNvbnN0IENvb2tpZSYgY29va2llKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
bG9hZGVyL0ZyYW1lTG9hZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRl
ci5jcHAKaW5kZXggOWJiMDg0MDBlZTY1MDgzNDE1MDdkMjdmMjQ0ZTBkYWMzYzdiZDgwNi4uZDhi
OTE1YWQyZmFhYTZhM2I3MzRhY2NlZjliM2M2ZGQ4MDFkZDI1ZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2Fk
ZXIvRnJhbWVMb2FkZXIuY3BwCkBAIC03ODgsMTggKzc4OCw2IEBAIHZvaWQgRnJhbWVMb2FkZXI6
OmNoZWNrQ2FsbEltcGxpY2l0Q2xvc2UoKQogICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPmltcGxp
Y2l0Q2xvc2UoKTsKIH0KIAotS1VSTCBGcmFtZUxvYWRlcjo6YmFzZVVSTCgpIGNvbnN0Ci17Ci0g
ICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50KCkpOwotICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1
bWVudCgpLT5iYXNlVVJMKCk7Ci19Ci0KLUtVUkwgRnJhbWVMb2FkZXI6OmNvbXBsZXRlVVJMKGNv
bnN0IFN0cmluZyYgdXJsKQotewotICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKLSAg
ICByZXR1cm4gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsKTsKLX0KLQogdm9p
ZCBGcmFtZUxvYWRlcjo6bG9hZFVSTEludG9DaGlsZEZyYW1lKGNvbnN0IEtVUkwmIHVybCwgY29u
c3QgU3RyaW5nJiByZWZlcmVyLCBGcmFtZSogY2hpbGRGcmFtZSkKIHsKICAgICBBU1NFUlQoY2hp
bGRGcmFtZSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCmluZGV4IGM1M2EzNjVmNjNi
ZmQ4ZmRmNGIwMmU3ZDc4MDUzYjIwMzgwMGNhN2MuLmFlYWRlYTYxMDIxMGM1ZTZjYzJmZTgxNDdm
NWFkZDJiOTBlMWYzYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxv
YWRlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCkBAIC0yMTks
OCArMjE5LDYgQEAgcHVibGljOgogICAgIHZvaWQgZGlkRW5kRG9jdW1lbnQoKTsKICAgICB2b2lk
IHdpbGxTZXRFbmNvZGluZygpOwogCi0gICAgS1VSTCBiYXNlVVJMKCkgY29uc3Q7Ci0KICAgICB2
b2lkIGhhbmRsZWRPbmxvYWRFdmVudHMoKTsKICAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IEtV
UkwmKSBjb25zdDsKIApAQCAtMjYwLDggKzI1OCw2IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaXND
b21wbGV0ZSgpIGNvbnN0OwogCi0gICAgS1VSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmIHVy
bCk7Ci0KICAgICB2b2lkIGNhbmNlbEFuZENsZWFyKCk7CiAKICAgICB2b2lkIHNldFRpdGxlKGNv
bnN0IFN0cmluZ1dpdGhEaXJlY3Rpb24mKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZp
Z2F0aW9uU2NoZWR1bGVyLmNwcAppbmRleCA3MTNhMmM4NmNhM2ZkMGI2ZWRlMTgyNGIxNjdhNjAw
MDhjNmU3MjYyLi45MWI4MTA4YWMzODQ4ZTI5NjEyZTljMGU4MjlhZmU2MTA1ZmMwNjMwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCkBAIC0zMzUs
MTIgKzMzNSwxMiBAQCB2b2lkIE5hdmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25D
aGFuZ2UoUGFzc1JlZlB0cjxTZWN1cml0eU9yaWdpbj4gc2VjdQogICAgIGxvY2tCYWNrRm9yd2Fy
ZExpc3QgPSBsb2NrQmFja0ZvcndhcmRMaXN0IHx8IG11c3RMb2NrQmFja0ZvcndhcmRMaXN0KG1f
ZnJhbWUpOwogCiAgICAgRnJhbWVMb2FkZXIqIGxvYWRlciA9IG1fZnJhbWUtPmxvYWRlcigpOwot
ICAgIAorCiAgICAgLy8gSWYgdGhlIFVSTCB3ZSdyZSBnb2luZyB0byBuYXZpZ2F0ZSB0byBpcyB0
aGUgc2FtZSBhcyB0aGUgY3VycmVudCBvbmUsIGV4Y2VwdCBmb3IgdGhlCiAgICAgLy8gZnJhZ21l
bnQgcGFydCwgd2UgZG9uJ3QgbmVlZCB0byBzY2hlZHVsZSB0aGUgbG9jYXRpb24gY2hhbmdlLgog
ICAgIEtVUkwgcGFyc2VkVVJMKFBhcnNlZFVSTFN0cmluZywgdXJsKTsKICAgICBpZiAocGFyc2Vk
VVJMLmhhc0ZyYWdtZW50SWRlbnRpZmllcigpICYmIGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50
aWZpZXIobV9mcmFtZS0+ZG9jdW1lbnQoKS0+dXJsKCksIHBhcnNlZFVSTCkpIHsKLSAgICAgICAg
bG9hZGVyLT5jaGFuZ2VMb2NhdGlvbihzZWN1cml0eU9yaWdpbiwgbG9hZGVyLT5jb21wbGV0ZVVS
TCh1cmwpLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QpOworICAg
ICAgICBsb2FkZXItPmNoYW5nZUxvY2F0aW9uKHNlY3VyaXR5T3JpZ2luLCBtX2ZyYW1lLT5kb2N1
bWVudCgpLT5jb21wbGV0ZVVSTCh1cmwpLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxvY2tCYWNr
Rm9yd2FyZExpc3QpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5
LmNwcAppbmRleCBmMjFiNjc3YThiYzhlMjQxZDgzOTkxN2U2ODk2Njk1NDJkNTVhNmFmLi5hMzll
NTFlMWRlZGE5ZjRjOGUxM2RiYWQyYjc4ZTlhYWE0ZWY5ZWExIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wYWdlL0hpc3RvcnkuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9y
eS5jcHAKQEAgLTEwOSwxMCArMTA5LDEwIEBAIHZvaWQgSGlzdG9yeTo6Z28oU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCogY29udGV4dCwgaW50IGRpc3RhbmNlKQogCiBLVVJMIEhpc3Rvcnk6OnVybEZv
clN0YXRlKGNvbnN0IFN0cmluZyYgdXJsU3RyaW5nKQogewotICAgIEtVUkwgYmFzZVVSTCA9IG1f
ZnJhbWUtPmxvYWRlcigpLT5iYXNlVVJMKCk7CisgICAgS1VSTCBiYXNlVVJMID0gbV9mcmFtZS0+
ZG9jdW1lbnQoKS0+YmFzZVVSTCgpOwogICAgIGlmICh1cmxTdHJpbmcuaXNFbXB0eSgpKQogICAg
ICAgICByZXR1cm4gYmFzZVVSTDsKLSAgICAgICAgCisKICAgICByZXR1cm4gS1VSTChiYXNlVVJM
LCB1cmxTdHJpbmcpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1Bs
dWdpblZpZXcuY3BwIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNwcAppbmRl
eCBmZDJiMGIwZmMxMzFjMjY4MWJkODZjZDVkN2ZkNjU1OTYyZGRhYjQzLi5kMWM3MjFhZTBhMzgy
NjE3NDNlMDgxOGMxMTFhOGM2ODcyZmJkMzk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bHVnaW5zL1BsdWdpblZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2lu
Vmlldy5jcHAKQEAgLTgyOSw3ICs4MjksNyBAQCBQbHVnaW5WaWV3OjpQbHVnaW5WaWV3KEZyYW1l
KiBwYXJlbnRGcmFtZSwgY29uc3QgSW50U2l6ZSYgc2l6ZSwgUGx1Z2luUGFja2FnZSogcAogICAg
ICwgbV9lbGVtZW50KGVsZW1lbnQpCiAgICAgLCBtX2lzU3RhcnRlZChmYWxzZSkKICAgICAsIG1f
dXJsKHVybCkKLSAgICAsIG1fYmFzZVVSTChtX3BhcmVudEZyYW1lLT5sb2FkZXIoKS0+Y29tcGxl
dGVVUkwobV9wYXJlbnRGcmFtZS0+ZG9jdW1lbnQoKS0+YmFzZVVSTCgpLnN0cmluZygpKSkKKyAg
ICAsIG1fYmFzZVVSTChtX3BhcmVudEZyYW1lLT5kb2N1bWVudCgpLT5iYXNlVVJMKCkpIC8vIEZJ
WE1FOiBObyBuZWVkIGZvciB0aGlzIG1lbWJlciB2YXJpYWJsZSEKICAgICAsIG1fc3RhdHVzKFBs
dWdpblN0YXR1c0xvYWRlZFN1Y2Nlc3NmdWxseSkKICAgICAsIG1fcmVxdWVzdFRpbWVyKHRoaXMs
ICZQbHVnaW5WaWV3OjpyZXF1ZXN0VGltZXJGaXJlZCkKICAgICAsIG1faW52YWxpZGF0ZVRpbWVy
KHRoaXMsICZQbHVnaW5WaWV3OjppbnZhbGlkYXRlVGltZXJGaXJlZCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlBhc3N3b3JkRm9ybURhdGEuY3BwIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtRGF0YS5jcHAKaW5kZXggZWIyMzBk
NWI3YzY3YWJhNzFmNjViOGQzYTliM2EzZDRlZWRlMmYyNi4uZWZkOGRlMzJiNzJhYTY2NDdlODNl
ZGQyZTY1ZGI1MWY3MWNhODI0OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViUGFzc3dvcmRGb3JtRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViUGFzc3dvcmRGb3JtRGF0YS5jcHAKQEAgLTE1MCwxMSArMTUwLDYgQEAgdm9pZCBhc3Nl
bWJsZVBhc3N3b3JkRm9ybVJlc3VsdChjb25zdCBLVVJMJiBmdWxsT3JpZ2luLAogV2ViUGFzc3dv
cmRGb3JtRGF0YTo6V2ViUGFzc3dvcmRGb3JtRGF0YShjb25zdCBXZWJGb3JtRWxlbWVudCYgd2Vi
Rm9ybSkKIHsKICAgICBSZWZQdHI8SFRNTEZvcm1FbGVtZW50PiBmb3JtID0gd2ViRm9ybS5vcGVy
YXRvciBQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4oKTsKLQotICAgIEZyYW1lKiBmcmFtZSA9
IGZvcm0tPmRvY3VtZW50KCktPmZyYW1lKCk7Ci0gICAgaWYgKCFmcmFtZSkKLSAgICAgICAgcmV0
dXJuOwotCiAgICAgUGFzc3dvcmRGb3JtRmllbGRzIGZpZWxkczsKICAgICBmaW5kUGFzc3dvcmRG
b3JtRmllbGRzKGZvcm0uZ2V0KCksICZmaWVsZHMpOwogCkBAIC0xNjUsNyArMTYwLDcgQEAgV2Vi
UGFzc3dvcmRGb3JtRGF0YTo6V2ViUGFzc3dvcmRGb3JtRGF0YShjb25zdCBXZWJGb3JtRWxlbWVu
dCYgd2ViRm9ybSkKICAgICBTdHJpbmcgYWN0aW9uID0gZm9ybS0+YWN0aW9uKCk7CiAgICAgaWYg
KGFjdGlvbi5pc051bGwoKSkKICAgICAgICAgYWN0aW9uID0gIiI7IC8vIG1pc3NpbmcgJ2FjdGlv
bicgYXR0cmlidXRlIGltcGxpZXMgY3VycmVudCBVUkwKLSAgICBLVVJMIGZ1bGxBY3Rpb24gPSBm
cmFtZS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKGFjdGlvbik7CisgICAgS1VSTCBmdWxsQWN0aW9u
ID0gZm9ybS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoYWN0aW9uKTsKICAgICBpZiAoIWZ1bGxB
Y3Rpb24uaXNWYWxpZCgpKQogICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNlYXJjaGFibGVGb3JtRGF0YS5jcHAgYi9Tb3VyY2UvV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJTZWFyY2hhYmxlRm9ybURhdGEuY3BwCmluZGV4IGQ2Yzg5YTky
NTgyMzBhNTUzZDk1NWVkNzIwNDhiZjk0M2M3MWM5NjguLjIzNjYzMDRhOWM2Y2QyZjQyYzM5Yzll
ZDkzMzBlYmRjYTEzYTE2YmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYlNlYXJjaGFibGVGb3JtRGF0YS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9z
cmMvV2ViU2VhcmNoYWJsZUZvcm1EYXRhLmNwcApAQCAtNzAsOCArNzAsMTAgQEAgdm9pZCBHZXRG
b3JtRW5jb2RpbmcoY29uc3QgSFRNTEZvcm1FbGVtZW50KiBmb3JtLCBUZXh0RW5jb2RpbmcqIGVu
Y29kaW5nKQogLy8gUmV0dXJucyB0cnVlIGlmIHRoZSBzdWJtaXQgcmVxdWVzdCByZXN1bHRzIGlu
IGFuIEhUVFAgVVJMLgogYm9vbCBJc0hUVFBGb3JtU3VibWl0KGNvbnN0IEhUTUxGb3JtRWxlbWVu
dCogZm9ybSkKIHsKKyAgICAvLyBGSVhNRTogVGhpcyBmdW5jdGlvbiBpcyBpbnNhbmUuIFRoaXMg
aXMgYW4gb3Zlcmx5IGNvbXBsaWNhdGVkIHdheSB0byBnZXQgdGhpcyBpbmZvcm1hdGlvbi4KICAg
ICBTdHJpbmcgYWN0aW9uKGZvcm0tPmFjdGlvbigpKTsKLSAgICByZXR1cm4gZm9ybS0+ZG9jdW1l
bnQoKS0+ZnJhbWUoKS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKGFjdGlvbi5pc051bGwoKSA/ICIi
IDogYWN0aW9uKS5wcm90b2NvbCgpID09ICJodHRwIjsKKyAgICAvLyBUaGUgaXNOdWxsKCkgY2hl
Y2sgaXMgdHJ5aW5nIHRvIGF2b2lkIGNvbXBsZXRlVVJMIHJldHVybmluZyBLVVJMKCkgd2hlbiBw
YXNzZWQgYSBudWxsIHN0cmluZy4KKyAgICByZXR1cm4gZm9ybS0+ZG9jdW1lbnQoKS0+Y29tcGxl
dGVVUkwoYWN0aW9uLmlzTnVsbCgpID8gIiIgOiBhY3Rpb24pLnByb3RvY29sSXMoImh0dHAiKTsK
IH0KIAogLy8gSWYgdGhlIGZvcm0gZG9lcyBub3QgaGF2ZSBhbiBhY3RpdmF0ZWQgc3VibWl0IGJ1
dHRvbiwgdGhlIGZpcnN0IHN1Ym1pdApAQCAtMjM2LDEwICsyMzgsNiBAQCBuYW1lc3BhY2UgV2Vi
S2l0IHsKIFdlYlNlYXJjaGFibGVGb3JtRGF0YTo6V2ViU2VhcmNoYWJsZUZvcm1EYXRhKGNvbnN0
IFdlYkZvcm1FbGVtZW50JiBmb3JtLCBjb25zdCBXZWJJbnB1dEVsZW1lbnQmIHNlbGVjdGVkSW5w
dXRFbGVtZW50KQogewogICAgIFJlZlB0cjxIVE1MRm9ybUVsZW1lbnQ+IGZvcm1FbGVtZW50ID0g
Zm9ybS5vcGVyYXRvciBQYXNzUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4oKTsKLSAgICBjb25zdCBG
cmFtZSogZnJhbWUgPSBmb3JtRWxlbWVudC0+ZG9jdW1lbnQoKS0+ZnJhbWUoKTsKLSAgICBpZiAo
IWZyYW1lKQotICAgICAgICByZXR1cm47Ci0KICAgICBIVE1MSW5wdXRFbGVtZW50KiBpbnB1dEVs
ZW1lbnQgPSBzZWxlY3RlZElucHV0RWxlbWVudC5vcGVyYXRvciBQYXNzUmVmUHRyPEhUTUxJbnB1
dEVsZW1lbnQ+KCkuZ2V0KCk7CiAKICAgICAvLyBPbmx5IGNvbnNpZGVyIGZvcm1zIHRoYXQgR0VU
IGRhdGEuCkBAIC0yODcsNyArMjg1LDcgQEAgV2ViU2VhcmNoYWJsZUZvcm1EYXRhOjpXZWJTZWFy
Y2hhYmxlRm9ybURhdGEoY29uc3QgV2ViRm9ybUVsZW1lbnQmIGZvcm0sIGNvbnN0IFcKICAgICAg
ICAgcmV0dXJuOwogCiAgICAgU3RyaW5nIGFjdGlvbihmb3JtRWxlbWVudC0+YWN0aW9uKCkpOwot
ICAgIEtVUkwgdXJsKGZyYW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwoYWN0aW9uLmlzTnVsbCgp
ID8gIiIgOiBhY3Rpb24pKTsKKyAgICBLVVJMIHVybChmb3JtRWxlbWVudC0+ZG9jdW1lbnQoKS0+
Y29tcGxldGVVUkwoYWN0aW9uLmlzTnVsbCgpID8gIiIgOiBhY3Rpb24pKTsKICAgICBSZWZQdHI8
Rm9ybURhdGE+IGZvcm1EYXRhID0gRm9ybURhdGE6OmNyZWF0ZShlbmNvZGVkU3RyaW5nKTsKICAg
ICB1cmwuc2V0UXVlcnkoZm9ybURhdGEtPmZsYXR0ZW5Ub1N0cmluZygpKTsKICAgICBtX3VybCA9
IHVybDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNj
YXBlUGx1Z2luVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNj
YXBlUGx1Z2luVmlldy5tbQppbmRleCBjMzgwNTEwYTQ5NTZkYmNmYTI0MThmNmZkNTY4MDE4OTAx
ZjUyMmZjLi4wNjE3OGIxZDMyY2Y0NTFhMzgzZGZmZGM1YmU0MDI5Mzk1NzJlNjZiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcu
bW0KKysrIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5W
aWV3Lm1tCkBAIC05NTQsNyArOTU0LDcgQEAgU3RyaW5nIFdlYkhhbHRhYmxlUGx1Z2luOjpwbHVn
aW5OYW1lKCkgY29uc3QKICAgICBpZiAoIWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdp
bigpLT5jYW5BY2Nlc3ModGFyZ2V0RnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkp
KQogICAgICAgICByZXR1cm4gQ1N0cmluZygpOwogICAKLSAgICBLVVJMIGFic29sdXRlVVJMID0g
dGFyZ2V0RnJhbWUtPmxvYWRlcigpLT5jb21wbGV0ZVVSTChyZWxhdGl2ZVVSTFN0cmluZyk7Cisg
ICAgS1VSTCBhYnNvbHV0ZVVSTCA9IHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVS
TChyZWxhdGl2ZVVSTFN0cmluZyk7CiAgICAgcmV0dXJuIGFic29sdXRlVVJMLnN0cmluZygpLnV0
ZjgoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>97509</attachid>
            <date>2011-06-16 15:05:45 -0700</date>
            <delta_ts>2011-06-16 15:27:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-62818-20110616150544.patch</filename>
            <type>text/plain</type>
            <size>14525</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODkwNjIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3YmNhOGNkY2QxYTFiNzFk
YmExMWZhZDEyZmM3YjczOTJmMTQzMGUxLi5hMzQxOWU3NTE0MmI3MmE3NjM1NDI2YWRjNTEzNDlh
ZmNmOGRiNTEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDYtMTYgIEVyaWMg
U2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEZyYW1lTG9hZGVyIGRvZXNuJ3QgbmVlZCBjb21wbGV0ZVVSTCBv
ciBiYXNlVVJMCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02MjgxOAorCisgICAgICAgIE5vIGZ1bmN0aW9uYWwgY2hhbmdlLCB0aHVzIG5vIHRlc3RzLgor
CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmlzSW1hZ2VUeXBlKToKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndvdWxkTG9hZEFzTmV0c2NhcGVQbHVnaW4p
OgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpvcGVuKToKKyAgICAgICAgKiBsb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5oOgorICAgICAgICAq
IGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmln
YXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UpOgorICAgICAgICAqIHBhZ2Uv
SGlzdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Ojp1cmxGb3JTdGF0ZSk6CisK
IDIwMTEtMDYtMTYgIHVuYSBzYWJvdmljICA8dW5hLnNhYm92aWNAcGFsbS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCAxZjE4
NDcxZmEwZDlmYTE0Yjg3ODc0MmU1MDY5Y2MzOTg1OGUzYjMxLi4yOTlkNzE5MTYyZjBjZmZjODE1
OWFhZTQ3MzdjZWViYzEyM2FlOWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTU5LDcgKzE1
OSw2IEBAIF9fWk43V2ViQ29yZTExRmlsZUNob29zZXIxMGNob29zZUZpbGVFUktOM1dURjZTdHJp
bmdFCiBfX1pON1dlYkNvcmUxMUZpbGVDaG9vc2VyMTBpY29uTG9hZGVkRU4zV1RGMTBQYXNzUmVm
UHRySU5TXzRJY29uRUVFCiBfX1pON1dlYkNvcmUxMUZpbGVDaG9vc2VyMTFjaG9vc2VGaWxlc0VS
S04zV1RGNlZlY3RvcklOUzFfNlN0cmluZ0VMbTBFRUUKIF9fWk43V2ViQ29yZTExRmlsZUNob29z
ZXJEMUV2Ci1fX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTFjb21wbGV0ZVVSTEVSS04zV1RGNlN0
cmluZ0UKIF9fWk43V2ViQ29yZTExRnJhbWVMb2FkZXIxMWxvYWRBcmNoaXZlRU4zV1RGMTBQYXNz
UmVmUHRySU5TXzdBcmNoaXZlRUVFCiBfX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTFzaG91bGRD
bG9zZUV2CiBfX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTF1cmxTZWxlY3RlZEVSS05TXzRLVVJM
RVJLTjNXVEY2U3RyaW5nRU5TNF8xMFBhc3NSZWZQdHJJTlNfNUV2ZW50RUVFYmJOU18xNFJlZmVy
cmVyUG9saWN5RQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9H
ZW5lcmljQmluZGluZy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9HZW5lcmlj
QmluZGluZy5oCmluZGV4IGQ5NWIxYzc1M2IwNDAyNGNjZWUwMTU4OWVhZjhhYzVkOWI4ODBjNWYu
LmQxZjEzZGUzZTg4YjU0MmE3OTc4MmY5NTcwM2U0ZTUxMDM4ODk3NGYgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvR2VuZXJpY0JpbmRpbmcuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0dlbmVyaWNCaW5kaW5nLmgKQEAgLTU4LDcgKzU4
LDcgQEAgS1VSTCBjb21wbGV0ZVVSTChTdGF0ZTxCaW5kaW5nPiogc3RhdGUsIGNvbnN0IFN0cmlu
ZyYgcmVsYXRpdmVVUkwpCiAgICAgRnJhbWUqIGZyYW1lID0gc3RhdGUtPmZpcnN0RnJhbWUoKTsK
ICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4gS1VSTCgpOwotICAgIHJldHVybiBmcmFt
ZS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKHJlbGF0aXZlVVJMKTsKKyAgICByZXR1cm4gZnJhbWUt
PmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHJlbGF0aXZlVVJMKTsKIH0KIAogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01BcHBsaWNhdGlvbkNhY2hlQ3VzdG9t
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQXBwbGljYXRpb25DYWNoZUN1
c3RvbS5jcHAKaW5kZXggMjYzZjJmOTVjNmMwZjEyMzhlZjE3ZTM0MTE2Y2I3MzBhYWM0ZjhjMy4u
MDU5OGJlOWE5MzRhZDkwMzNjYjAyMWIwYmY4NTY2ZjQ0OWMwMTZlZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01BcHBsaWNhdGlvbkNhY2hlQ3VzdG9tLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUFwcGxpY2F0aW9uQ2FjaGVDdXN0
b20uY3BwCkBAIC00OSw3ICs0OSw3IEBAIEpTVmFsdWUgSlNET01BcHBsaWNhdGlvbkNhY2hlOjpo
YXNJdGVtKEV4ZWNTdGF0ZSogZXhlYykKICAgICBGcmFtZSogZnJhbWUgPSBhc0pTRE9NV2luZG93
KGV4ZWMtPmR5bmFtaWNHbG9iYWxPYmplY3QoKSktPmltcGwoKS0+ZnJhbWUoKTsKICAgICBpZiAo
IWZyYW1lKQogICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICBjb25zdCBLVVJMJiB1
cmwgPSBmcmFtZS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKGV4ZWMtPmFyZ3VtZW50KDApLnRvU3Ry
aW5nKGV4ZWMpKTsKKyAgICBjb25zdCBLVVJMJiB1cmwgPSBmcmFtZS0+ZG9jdW1lbnQoKS0+Y29t
cGxldGVVUkwoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYykpOwogCiAgICAgRXhjZXB0
aW9uQ29kZSBlYyA9IDA7CiAgICAgYm9vbCByZXN1bHQgPSBpbXBsKCktPmhhc0l0ZW0odXJsLCBl
Yyk7CkBAIC02Miw4ICs2Miw4IEBAIEpTVmFsdWUgSlNET01BcHBsaWNhdGlvbkNhY2hlOjphZGQo
RXhlY1N0YXRlKiBleGVjKQogICAgIEZyYW1lKiBmcmFtZSA9IGFzSlNET01XaW5kb3coZXhlYy0+
ZHluYW1pY0dsb2JhbE9iamVjdCgpKS0+aW1wbCgpLT5mcmFtZSgpOwogICAgIGlmICghZnJhbWUp
CiAgICAgICAgIHJldHVybiBqc1VuZGVmaW5lZCgpOwotICAgIGNvbnN0IEtVUkwmIHVybCA9IGZy
YW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhl
YykpOwotICAgIAorICAgIGNvbnN0IEtVUkwmIHVybCA9IGZyYW1lLT5kb2N1bWVudCgpLT5jb21w
bGV0ZVVSTChleGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVjKSk7CisKICAgICBFeGNlcHRp
b25Db2RlIGVjID0gMDsKICAgICBpbXBsKCktPmFkZCh1cmwsIGVjKTsKICAgICBzZXRET01FeGNl
cHRpb24oZXhlYywgZWMpOwpAQCAtNzUsOCArNzUsOCBAQCBKU1ZhbHVlIEpTRE9NQXBwbGljYXRp
b25DYWNoZTo6cmVtb3ZlKEV4ZWNTdGF0ZSogZXhlYykKICAgICBGcmFtZSogZnJhbWUgPSBhc0pT
RE9NV2luZG93KGV4ZWMtPmR5bmFtaWNHbG9iYWxPYmplY3QoKSktPmltcGwoKS0+ZnJhbWUoKTsK
ICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm4ganNVbmRlZmluZWQoKTsKLSAgICBjb25z
dCBLVVJMJiB1cmwgPSBmcmFtZS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKGV4ZWMtPmFyZ3VtZW50
KDApLnRvU3RyaW5nKGV4ZWMpKTsKLSAgICAKKyAgICBjb25zdCBLVVJMJiB1cmwgPSBmcmFtZS0+
ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYykp
OworCiAgICAgRXhjZXB0aW9uQ29kZSBlYyA9IDA7CiAgICAgaW1wbCgpLT5yZW1vdmUodXJsLCBl
Yyk7CiAgICAgc2V0RE9NRXhjZXB0aW9uKGV4ZWMsIGVjKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCmluZGV4IDJiNGE4ZWM2ZTgyMzI1NDM0YWFk
NTY5OGE1MTRkZGI5Y2U1NDQyMzcuLjc2MDE0OWRmMGRlNTlhOGI1ZjQ1N2VhMDU4MDRkZDBkZjZk
NGQ0NmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50
LmNwcApAQCAtNTksNyArNTksNyBAQCBib29sIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmlzSW1h
Z2VUeXBlKCkKICAgICAgICAgbV9zZXJ2aWNlVHlwZSA9IG1pbWVUeXBlRnJvbURhdGFVUkwobV91
cmwpOwogCiAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50KCktPmZyYW1lKCkpIHsKLSAg
ICAgICAgS1VSTCBjb21wbGV0ZWRVUkwgPSBmcmFtZS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKG1f
dXJsKTsKKyAgICAgICAgS1VSTCBjb21wbGV0ZWRVUkwgPSBkb2N1bWVudCgpLT5jb21wbGV0ZVVS
TChtX3VybCk7CiAgICAgICAgIHJldHVybiBmcmFtZS0+bG9hZGVyKCktPmNsaWVudCgpLT5vYmpl
Y3RDb250ZW50VHlwZShjb21wbGV0ZWRVUkwsIG1fc2VydmljZVR5cGUsIHNob3VsZFByZWZlclBs
dWdJbnNGb3JJbWFnZXMoKSkgPT0gT2JqZWN0Q29udGVudEltYWdlOwogICAgIH0KIApAQCAtOTUs
MTIgKzk1LDEyIEBAIGJvb2wgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6d291bGRMb2FkQXNOZXRz
Y2FwZVBsdWdpbihjb25zdCBTdHJpbmcmIHVybCwgY29uc3QKIHsKICAgICBBU1NFUlQoZG9jdW1l
bnQoKSk7CiAgICAgQVNTRVJUKGRvY3VtZW50KCktPmZyYW1lKCkpOwotICAgIEZyYW1lTG9hZGVy
KiBmcmFtZUxvYWRlciA9IGRvY3VtZW50KCktPmZyYW1lKCktPmxvYWRlcigpOwotICAgIEFTU0VS
VChmcmFtZUxvYWRlcik7CiAgICAgS1VSTCBjb21wbGV0ZWRVUkw7CiAgICAgaWYgKCF1cmwuaXNF
bXB0eSgpKQotICAgICAgICBjb21wbGV0ZWRVUkwgPSBmcmFtZUxvYWRlci0+Y29tcGxldGVVUkwo
dXJsKTsKKyAgICAgICAgY29tcGxldGVkVVJMID0gZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJs
KTsKIAorICAgIEZyYW1lTG9hZGVyKiBmcmFtZUxvYWRlciA9IGRvY3VtZW50KCktPmZyYW1lKCkt
PmxvYWRlcigpOworICAgIEFTU0VSVChmcmFtZUxvYWRlcik7CiAgICAgaWYgKGZyYW1lTG9hZGVy
LT5jbGllbnQoKS0+b2JqZWN0Q29udGVudFR5cGUoY29tcGxldGVkVVJMLCBzZXJ2aWNlVHlwZSwg
c2hvdWxkUHJlZmVyUGx1Z0luc0ZvckltYWdlcygpKSA9PSBPYmplY3RDb250ZW50TmV0c2NhcGVQ
bHVnaW4pCiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIHJldHVybiBmYWxzZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwIGIvU291
cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKaW5kZXggOGQ1M2Q2
OGY3OGNhMWM3MTgyYzdjNDI3ODQyODA2NGI4NTkwNWM3NC4uN2VjYzc1MWVjY2EzZWMzMzhkNzAw
OTU0MWVlZGYxODdhYjkwZTMwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvclBhZ2VBZ2VudC5jcHAKQEAgLTMxNyw3ICszMTcsOCBAQCB2b2lkIEluc3BlY3RvclBh
Z2VBZ2VudDo6b3BlbihFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBib29s
KiBjb25zdAogICAgICAgICBmcmFtZSA9IG1haW5GcmFtZTsKIAogICAgIFVzZXJHZXN0dXJlSW5k
aWNhdG9yIGluZGljYXRvcihEZWZpbml0ZWx5UHJvY2Vzc2luZ1VzZXJHZXN0dXJlKTsKLSAgICBm
cmFtZS0+bG9hZGVyKCktPmNoYW5nZUxvY2F0aW9uKG1haW5GcmFtZS0+ZG9jdW1lbnQoKS0+c2Vj
dXJpdHlPcmlnaW4oKSwgZnJhbWUtPmxvYWRlcigpLT5jb21wbGV0ZVVSTCh1cmwpLCAiIiwgZmFs
c2UsIGZhbHNlKTsKKyAgICAvLyBGSVhNRTogV2h5IGRvZXMgb25lIHVzZSBtYWluRnJhbWUgYW5k
IHRoZSBvdGhlciBmcmFtZT8KKyAgICBmcmFtZS0+bG9hZGVyKCktPmNoYW5nZUxvY2F0aW9uKG1h
aW5GcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlPcmlnaW4oKSwgZnJhbWUtPmRvY3VtZW50KCkt
PmNvbXBsZXRlVVJMKHVybCksICIiLCBmYWxzZSwgZmFsc2UpOwogfQogCiBzdGF0aWMgUGFzc1Jl
ZlB0cjxJbnNwZWN0b3JPYmplY3Q+IGJ1aWxkT2JqZWN0Rm9yQ29va2llKGNvbnN0IENvb2tpZSYg
Y29va2llKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKaW5kZXggOWJiMDg0MDBl
ZTY1MDgzNDE1MDdkMjdmMjQ0ZTBkYWMzYzdiZDgwNi4uZDhiOTE1YWQyZmFhYTZhM2I3MzRhY2Nl
ZjliM2M2ZGQ4MDFkZDI1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1l
TG9hZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCkBA
IC03ODgsMTggKzc4OCw2IEBAIHZvaWQgRnJhbWVMb2FkZXI6OmNoZWNrQ2FsbEltcGxpY2l0Q2xv
c2UoKQogICAgIG1fZnJhbWUtPmRvY3VtZW50KCktPmltcGxpY2l0Q2xvc2UoKTsKIH0KIAotS1VS
TCBGcmFtZUxvYWRlcjo6YmFzZVVSTCgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUKG1fZnJhbWUtPmRv
Y3VtZW50KCkpOwotICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpLT5iYXNlVVJMKCk7Ci19
Ci0KLUtVUkwgRnJhbWVMb2FkZXI6OmNvbXBsZXRlVVJMKGNvbnN0IFN0cmluZyYgdXJsKQotewot
ICAgIEFTU0VSVChtX2ZyYW1lLT5kb2N1bWVudCgpKTsKLSAgICByZXR1cm4gbV9mcmFtZS0+ZG9j
dW1lbnQoKS0+Y29tcGxldGVVUkwodXJsKTsKLX0KLQogdm9pZCBGcmFtZUxvYWRlcjo6bG9hZFVS
TEludG9DaGlsZEZyYW1lKGNvbnN0IEtVUkwmIHVybCwgY29uc3QgU3RyaW5nJiByZWZlcmVyLCBG
cmFtZSogY2hpbGRGcmFtZSkKIHsKICAgICBBU1NFUlQoY2hpbGRGcmFtZSk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2xv
YWRlci9GcmFtZUxvYWRlci5oCmluZGV4IGM1M2EzNjVmNjNiZmQ4ZmRmNGIwMmU3ZDc4MDUzYjIw
MzgwMGNhN2MuLmFlYWRlYTYxMDIxMGM1ZTZjYzJmZTgxNDdmNWFkZDJiOTBlMWYzYzggMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2xvYWRlci9GcmFtZUxvYWRlci5oCkBAIC0yMTksOCArMjE5LDYgQEAgcHVibGljOgog
ICAgIHZvaWQgZGlkRW5kRG9jdW1lbnQoKTsKICAgICB2b2lkIHdpbGxTZXRFbmNvZGluZygpOwog
Ci0gICAgS1VSTCBiYXNlVVJMKCkgY29uc3Q7Ci0KICAgICB2b2lkIGhhbmRsZWRPbmxvYWRFdmVu
dHMoKTsKICAgICBTdHJpbmcgdXNlckFnZW50KGNvbnN0IEtVUkwmKSBjb25zdDsKIApAQCAtMjYw
LDggKzI1OCw2IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgaXNDb21wbGV0ZSgpIGNvbnN0OwogCi0g
ICAgS1VSTCBjb21wbGV0ZVVSTChjb25zdCBTdHJpbmcmIHVybCk7Ci0KICAgICB2b2lkIGNhbmNl
bEFuZENsZWFyKCk7CiAKICAgICB2b2lkIHNldFRpdGxlKGNvbnN0IFN0cmluZ1dpdGhEaXJlY3Rp
b24mKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1
bGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcApp
bmRleCA3MTNhMmM4NmNhM2ZkMGI2ZWRlMTgyNGIxNjdhNjAwMDhjNmU3MjYyLi45MWI4MTA4YWMz
ODQ4ZTI5NjEyZTljMGU4MjlhZmU2MTA1ZmMwNjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCkBAIC0zMzUsMTIgKzMzNSwxMiBAQCB2b2lkIE5h
dmlnYXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UoUGFzc1JlZlB0cjxTZWN1
cml0eU9yaWdpbj4gc2VjdQogICAgIGxvY2tCYWNrRm9yd2FyZExpc3QgPSBsb2NrQmFja0Zvcndh
cmRMaXN0IHx8IG11c3RMb2NrQmFja0ZvcndhcmRMaXN0KG1fZnJhbWUpOwogCiAgICAgRnJhbWVM
b2FkZXIqIGxvYWRlciA9IG1fZnJhbWUtPmxvYWRlcigpOwotICAgIAorCiAgICAgLy8gSWYgdGhl
IFVSTCB3ZSdyZSBnb2luZyB0byBuYXZpZ2F0ZSB0byBpcyB0aGUgc2FtZSBhcyB0aGUgY3VycmVu
dCBvbmUsIGV4Y2VwdCBmb3IgdGhlCiAgICAgLy8gZnJhZ21lbnQgcGFydCwgd2UgZG9uJ3QgbmVl
ZCB0byBzY2hlZHVsZSB0aGUgbG9jYXRpb24gY2hhbmdlLgogICAgIEtVUkwgcGFyc2VkVVJMKFBh
cnNlZFVSTFN0cmluZywgdXJsKTsKICAgICBpZiAocGFyc2VkVVJMLmhhc0ZyYWdtZW50SWRlbnRp
ZmllcigpICYmIGVxdWFsSWdub3JpbmdGcmFnbWVudElkZW50aWZpZXIobV9mcmFtZS0+ZG9jdW1l
bnQoKS0+dXJsKCksIHBhcnNlZFVSTCkpIHsKLSAgICAgICAgbG9hZGVyLT5jaGFuZ2VMb2NhdGlv
bihzZWN1cml0eU9yaWdpbiwgbG9hZGVyLT5jb21wbGV0ZVVSTCh1cmwpLCByZWZlcnJlciwgbG9j
a0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QpOworICAgICAgICBsb2FkZXItPmNoYW5nZUxv
Y2F0aW9uKHNlY3VyaXR5T3JpZ2luLCBtX2ZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTCh1
cmwpLCByZWZlcnJlciwgbG9ja0hpc3RvcnksIGxvY2tCYWNrRm9yd2FyZExpc3QpOwogICAgICAg
ICByZXR1cm47CiAgICAgfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hpc3Rv
cnkuY3BwIGIvU291cmNlL1dlYkNvcmUvcGFnZS9IaXN0b3J5LmNwcAppbmRleCBmMjFiNjc3YThi
YzhlMjQxZDgzOTkxN2U2ODk2Njk1NDJkNTVhNmFmLi5hMzllNTFlMWRlZGE5ZjRjOGUxM2RiYWQy
Yjc4ZTlhYWE0ZWY5ZWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0hpc3Rvcnku
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKQEAgLTEwOSwxMCArMTA5
LDEwIEBAIHZvaWQgSGlzdG9yeTo6Z28oU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogY29udGV4dCwg
aW50IGRpc3RhbmNlKQogCiBLVVJMIEhpc3Rvcnk6OnVybEZvclN0YXRlKGNvbnN0IFN0cmluZyYg
dXJsU3RyaW5nKQogewotICAgIEtVUkwgYmFzZVVSTCA9IG1fZnJhbWUtPmxvYWRlcigpLT5iYXNl
VVJMKCk7CisgICAgS1VSTCBiYXNlVVJMID0gbV9mcmFtZS0+ZG9jdW1lbnQoKS0+YmFzZVVSTCgp
OwogICAgIGlmICh1cmxTdHJpbmcuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm4gYmFzZVVSTDsK
LSAgICAgICAgCisKICAgICByZXR1cm4gS1VSTChiYXNlVVJMLCB1cmxTdHJpbmcpOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5WaWV3LmNwcAppbmRleCBmZDJiMGIwZmMxMzFjMjY4MWJk
ODZjZDVkN2ZkNjU1OTYyZGRhYjQzLi5kMWM3MjFhZTBhMzgyNjE3NDNlMDgxOGMxMTFhOGM2ODcy
ZmJkMzk0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5jcHAKQEAgLTgyOSw3ICs4
MjksNyBAQCBQbHVnaW5WaWV3OjpQbHVnaW5WaWV3KEZyYW1lKiBwYXJlbnRGcmFtZSwgY29uc3Qg
SW50U2l6ZSYgc2l6ZSwgUGx1Z2luUGFja2FnZSogcAogICAgICwgbV9lbGVtZW50KGVsZW1lbnQp
CiAgICAgLCBtX2lzU3RhcnRlZChmYWxzZSkKICAgICAsIG1fdXJsKHVybCkKLSAgICAsIG1fYmFz
ZVVSTChtX3BhcmVudEZyYW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwobV9wYXJlbnRGcmFtZS0+
ZG9jdW1lbnQoKS0+YmFzZVVSTCgpLnN0cmluZygpKSkKKyAgICAsIG1fYmFzZVVSTChtX3BhcmVu
dEZyYW1lLT5kb2N1bWVudCgpLT5iYXNlVVJMKCkpIC8vIEZJWE1FOiBObyBuZWVkIGZvciB0aGlz
IG1lbWJlciB2YXJpYWJsZSEKICAgICAsIG1fc3RhdHVzKFBsdWdpblN0YXR1c0xvYWRlZFN1Y2Nl
c3NmdWxseSkKICAgICAsIG1fcmVxdWVzdFRpbWVyKHRoaXMsICZQbHVnaW5WaWV3OjpyZXF1ZXN0
VGltZXJGaXJlZCkKICAgICAsIG1faW52YWxpZGF0ZVRpbWVyKHRoaXMsICZQbHVnaW5WaWV3Ojpp
bnZhbGlkYXRlVGltZXJGaXJlZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlBhc3N3b3JkRm9ybURhdGEuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMv
V2ViUGFzc3dvcmRGb3JtRGF0YS5jcHAKaW5kZXggZWIyMzBkNWI3YzY3YWJhNzFmNjViOGQzYTli
M2EzZDRlZWRlMmYyNi4uZWZkOGRlMzJiNzJhYTY2NDdlODNlZGQyZTY1ZGI1MWY3MWNhODI0OCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtRGF0
YS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtRGF0
YS5jcHAKQEAgLTE1MCwxMSArMTUwLDYgQEAgdm9pZCBhc3NlbWJsZVBhc3N3b3JkRm9ybVJlc3Vs
dChjb25zdCBLVVJMJiBmdWxsT3JpZ2luLAogV2ViUGFzc3dvcmRGb3JtRGF0YTo6V2ViUGFzc3dv
cmRGb3JtRGF0YShjb25zdCBXZWJGb3JtRWxlbWVudCYgd2ViRm9ybSkKIHsKICAgICBSZWZQdHI8
SFRNTEZvcm1FbGVtZW50PiBmb3JtID0gd2ViRm9ybS5vcGVyYXRvciBQYXNzUmVmUHRyPEhUTUxG
b3JtRWxlbWVudD4oKTsKLQotICAgIEZyYW1lKiBmcmFtZSA9IGZvcm0tPmRvY3VtZW50KCktPmZy
YW1lKCk7Ci0gICAgaWYgKCFmcmFtZSkKLSAgICAgICAgcmV0dXJuOwotCiAgICAgUGFzc3dvcmRG
b3JtRmllbGRzIGZpZWxkczsKICAgICBmaW5kUGFzc3dvcmRGb3JtRmllbGRzKGZvcm0uZ2V0KCks
ICZmaWVsZHMpOwogCkBAIC0xNjUsNyArMTYwLDcgQEAgV2ViUGFzc3dvcmRGb3JtRGF0YTo6V2Vi
UGFzc3dvcmRGb3JtRGF0YShjb25zdCBXZWJGb3JtRWxlbWVudCYgd2ViRm9ybSkKICAgICBTdHJp
bmcgYWN0aW9uID0gZm9ybS0+YWN0aW9uKCk7CiAgICAgaWYgKGFjdGlvbi5pc051bGwoKSkKICAg
ICAgICAgYWN0aW9uID0gIiI7IC8vIG1pc3NpbmcgJ2FjdGlvbicgYXR0cmlidXRlIGltcGxpZXMg
Y3VycmVudCBVUkwKLSAgICBLVVJMIGZ1bGxBY3Rpb24gPSBmcmFtZS0+bG9hZGVyKCktPmNvbXBs
ZXRlVVJMKGFjdGlvbik7CisgICAgS1VSTCBmdWxsQWN0aW9uID0gZm9ybS0+ZG9jdW1lbnQoKS0+
Y29tcGxldGVVUkwoYWN0aW9uKTsKICAgICBpZiAoIWZ1bGxBY3Rpb24uaXNWYWxpZCgpKQogICAg
ICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlNlYXJjaGFibGVGb3JtRGF0YS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJT
ZWFyY2hhYmxlRm9ybURhdGEuY3BwCmluZGV4IGQ2Yzg5YTkyNTgyMzBhNTUzZDk1NWVkNzIwNDhi
Zjk0M2M3MWM5NjguLjIzNjYzMDRhOWM2Y2QyZjQyYzM5YzllZDkzMzBlYmRjYTEzYTE2YmMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNlYXJjaGFibGVGb3JtRGF0
YS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2VhcmNoYWJsZUZvcm1E
YXRhLmNwcApAQCAtNzAsOCArNzAsMTAgQEAgdm9pZCBHZXRGb3JtRW5jb2RpbmcoY29uc3QgSFRN
TEZvcm1FbGVtZW50KiBmb3JtLCBUZXh0RW5jb2RpbmcqIGVuY29kaW5nKQogLy8gUmV0dXJucyB0
cnVlIGlmIHRoZSBzdWJtaXQgcmVxdWVzdCByZXN1bHRzIGluIGFuIEhUVFAgVVJMLgogYm9vbCBJ
c0hUVFBGb3JtU3VibWl0KGNvbnN0IEhUTUxGb3JtRWxlbWVudCogZm9ybSkKIHsKKyAgICAvLyBG
SVhNRTogVGhpcyBmdW5jdGlvbiBpcyBpbnNhbmUuIFRoaXMgaXMgYW4gb3Zlcmx5IGNvbXBsaWNh
dGVkIHdheSB0byBnZXQgdGhpcyBpbmZvcm1hdGlvbi4KICAgICBTdHJpbmcgYWN0aW9uKGZvcm0t
PmFjdGlvbigpKTsKLSAgICByZXR1cm4gZm9ybS0+ZG9jdW1lbnQoKS0+ZnJhbWUoKS0+bG9hZGVy
KCktPmNvbXBsZXRlVVJMKGFjdGlvbi5pc051bGwoKSA/ICIiIDogYWN0aW9uKS5wcm90b2NvbCgp
ID09ICJodHRwIjsKKyAgICAvLyBUaGUgaXNOdWxsKCkgY2hlY2sgaXMgdHJ5aW5nIHRvIGF2b2lk
IGNvbXBsZXRlVVJMIHJldHVybmluZyBLVVJMKCkgd2hlbiBwYXNzZWQgYSBudWxsIHN0cmluZy4K
KyAgICByZXR1cm4gZm9ybS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoYWN0aW9uLmlzTnVsbCgp
ID8gIiIgOiBhY3Rpb24pLnByb3RvY29sSXMoImh0dHAiKTsKIH0KIAogLy8gSWYgdGhlIGZvcm0g
ZG9lcyBub3QgaGF2ZSBhbiBhY3RpdmF0ZWQgc3VibWl0IGJ1dHRvbiwgdGhlIGZpcnN0IHN1Ym1p
dApAQCAtMjM2LDEwICsyMzgsNiBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKIFdlYlNlYXJjaGFibGVG
b3JtRGF0YTo6V2ViU2VhcmNoYWJsZUZvcm1EYXRhKGNvbnN0IFdlYkZvcm1FbGVtZW50JiBmb3Jt
LCBjb25zdCBXZWJJbnB1dEVsZW1lbnQmIHNlbGVjdGVkSW5wdXRFbGVtZW50KQogewogICAgIFJl
ZlB0cjxIVE1MRm9ybUVsZW1lbnQ+IGZvcm1FbGVtZW50ID0gZm9ybS5vcGVyYXRvciBQYXNzUmVm
UHRyPEhUTUxGb3JtRWxlbWVudD4oKTsKLSAgICBjb25zdCBGcmFtZSogZnJhbWUgPSBmb3JtRWxl
bWVudC0+ZG9jdW1lbnQoKS0+ZnJhbWUoKTsKLSAgICBpZiAoIWZyYW1lKQotICAgICAgICByZXR1
cm47Ci0KICAgICBIVE1MSW5wdXRFbGVtZW50KiBpbnB1dEVsZW1lbnQgPSBzZWxlY3RlZElucHV0
RWxlbWVudC5vcGVyYXRvciBQYXNzUmVmUHRyPEhUTUxJbnB1dEVsZW1lbnQ+KCkuZ2V0KCk7CiAK
ICAgICAvLyBPbmx5IGNvbnNpZGVyIGZvcm1zIHRoYXQgR0VUIGRhdGEuCkBAIC0yODcsNyArMjg1
LDcgQEAgV2ViU2VhcmNoYWJsZUZvcm1EYXRhOjpXZWJTZWFyY2hhYmxlRm9ybURhdGEoY29uc3Qg
V2ViRm9ybUVsZW1lbnQmIGZvcm0sIGNvbnN0IFcKICAgICAgICAgcmV0dXJuOwogCiAgICAgU3Ry
aW5nIGFjdGlvbihmb3JtRWxlbWVudC0+YWN0aW9uKCkpOwotICAgIEtVUkwgdXJsKGZyYW1lLT5s
b2FkZXIoKS0+Y29tcGxldGVVUkwoYWN0aW9uLmlzTnVsbCgpID8gIiIgOiBhY3Rpb24pKTsKKyAg
ICBLVVJMIHVybChmb3JtRWxlbWVudC0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwoYWN0aW9uLmlz
TnVsbCgpID8gIiIgOiBhY3Rpb24pKTsKICAgICBSZWZQdHI8Rm9ybURhdGE+IGZvcm1EYXRhID0g
Rm9ybURhdGE6OmNyZWF0ZShlbmNvZGVkU3RyaW5nKTsKICAgICB1cmwuc2V0UXVlcnkoZm9ybURh
dGEtPmZsYXR0ZW5Ub1N0cmluZygpKTsKICAgICBtX3VybCA9IHVybDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbSBiL1Nv
dXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1Z2luVmlldy5tbQppbmRl
eCBjMzgwNTEwYTQ5NTZkYmNmYTI0MThmNmZkNTY4MDE4OTAxZjUyMmZjLi4wNjE3OGIxZDMyY2Y0
NTFhMzgzZGZmZGM1YmU0MDI5Mzk1NzJlNjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21h
Yy9QbHVnaW5zL1dlYkJhc2VOZXRzY2FwZVBsdWdpblZpZXcubW0KKysrIGIvU291cmNlL1dlYktp
dC9tYWMvUGx1Z2lucy9XZWJCYXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCkBAIC05NTQsNyArOTU0
LDcgQEAgU3RyaW5nIFdlYkhhbHRhYmxlUGx1Z2luOjpwbHVnaW5OYW1lKCkgY29uc3QKICAgICBp
ZiAoIWZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLT5jYW5BY2Nlc3ModGFyZ2V0
RnJhbWUtPmRvY3VtZW50KCktPnNlY3VyaXR5T3JpZ2luKCkpKQogICAgICAgICByZXR1cm4gQ1N0
cmluZygpOwogICAKLSAgICBLVVJMIGFic29sdXRlVVJMID0gdGFyZ2V0RnJhbWUtPmxvYWRlcigp
LT5jb21wbGV0ZVVSTChyZWxhdGl2ZVVSTFN0cmluZyk7CisgICAgS1VSTCBhYnNvbHV0ZVVSTCA9
IHRhcmdldEZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTChyZWxhdGl2ZVVSTFN0cmluZyk7
CiAgICAgcmV0dXJuIGFic29sdXRlVVJMLnN0cmluZygpLnV0ZjgoKTsKIH0KIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>97511</attachid>
            <date>2011-06-16 15:27:18 -0700</date>
            <delta_ts>2011-06-16 16:15:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-62818-20110616152717.patch</filename>
            <type>text/plain</type>
            <size>14668</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogODkwNjIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCA3YmNhOGNkY2QxYTFiNzFk
YmExMWZhZDEyZmM3YjczOTJmMTQzMGUxLi5hMzQxOWU3NTE0MmI3MmE3NjM1NDI2YWRjNTEzNDlh
ZmNmOGRiNTEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAKKzIwMTEtMDYtMTYgIEVyaWMg
U2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEZyYW1lTG9hZGVyIGRvZXNuJ3QgbmVlZCBjb21wbGV0ZVVSTCBv
ciBiYXNlVVJMCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD02MjgxOAorCisgICAgICAgIE5vIGZ1bmN0aW9uYWwgY2hhbmdlLCB0aHVzIG5vIHRlc3RzLgor
CisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmlzSW1hZ2VUeXBlKToKKyAgICAgICAgKFdl
YkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndvdWxkTG9hZEFzTmV0c2NhcGVQbHVnaW4p
OgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50OjpvcGVuKToKKyAgICAgICAgKiBsb2FkZXIvRnJh
bWVMb2FkZXIuY3BwOgorICAgICAgICAqIGxvYWRlci9GcmFtZUxvYWRlci5oOgorICAgICAgICAq
IGxvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5hdmln
YXRpb25TY2hlZHVsZXI6OnNjaGVkdWxlTG9jYXRpb25DaGFuZ2UpOgorICAgICAgICAqIHBhZ2Uv
SGlzdG9yeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIaXN0b3J5Ojp1cmxGb3JTdGF0ZSk6CisK
IDIwMTEtMDYtMTYgIHVuYSBzYWJvdmljICA8dW5hLnNhYm92aWNAcGFsbS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgU2ltb24gRnJhc2VyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
V2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCAxZjE4
NDcxZmEwZDlmYTE0Yjg3ODc0MmU1MDY5Y2MzOTg1OGUzYjMxLi4yOTlkNzE5MTYyZjBjZmZjODE1
OWFhZTQ3MzdjZWViYzEyM2FlOWMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
LmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpAQCAtMTU5LDcgKzE1
OSw2IEBAIF9fWk43V2ViQ29yZTExRmlsZUNob29zZXIxMGNob29zZUZpbGVFUktOM1dURjZTdHJp
bmdFCiBfX1pON1dlYkNvcmUxMUZpbGVDaG9vc2VyMTBpY29uTG9hZGVkRU4zV1RGMTBQYXNzUmVm
UHRySU5TXzRJY29uRUVFCiBfX1pON1dlYkNvcmUxMUZpbGVDaG9vc2VyMTFjaG9vc2VGaWxlc0VS
S04zV1RGNlZlY3RvcklOUzFfNlN0cmluZ0VMbTBFRUUKIF9fWk43V2ViQ29yZTExRmlsZUNob29z
ZXJEMUV2Ci1fX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTFjb21wbGV0ZVVSTEVSS04zV1RGNlN0
cmluZ0UKIF9fWk43V2ViQ29yZTExRnJhbWVMb2FkZXIxMWxvYWRBcmNoaXZlRU4zV1RGMTBQYXNz
UmVmUHRySU5TXzdBcmNoaXZlRUVFCiBfX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTFzaG91bGRD
bG9zZUV2CiBfX1pON1dlYkNvcmUxMUZyYW1lTG9hZGVyMTF1cmxTZWxlY3RlZEVSS05TXzRLVVJM
RVJLTjNXVEY2U3RyaW5nRU5TNF8xMFBhc3NSZWZQdHJJTlNfNUV2ZW50RUVFYmJOU18xNFJlZmVy
cmVyUG9saWN5RQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9H
ZW5lcmljQmluZGluZy5oIGIvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9HZW5lcmlj
QmluZGluZy5oCmluZGV4IGQ5NWIxYzc1M2IwNDAyNGNjZWUwMTU4OWVhZjhhYzVkOWI4ODBjNWYu
LjY5ZDMxZmEwYTJhMzlmNDdmZjBjZjlmODlmZTA1OWUwZGYwMTMxMDAgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvR2VuZXJpY0JpbmRpbmcuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL0dlbmVyaWNCaW5kaW5nLmgKQEAgLTMxLDYgKzMx
LDcgQEAKICNpZm5kZWYgR2VuZXJpY0JpbmRpbmdfaAogI2RlZmluZSBHZW5lcmljQmluZGluZ19o
CiAKKyNpbmNsdWRlICJEb2N1bWVudC5oIgogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAi
RnJhbWVMb2FkZXIuaCIKIApAQCAtNTgsNyArNTksNyBAQCBLVVJMIGNvbXBsZXRlVVJMKFN0YXRl
PEJpbmRpbmc+KiBzdGF0ZSwgY29uc3QgU3RyaW5nJiByZWxhdGl2ZVVSTCkKICAgICBGcmFtZSog
ZnJhbWUgPSBzdGF0ZS0+Zmlyc3RGcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJl
dHVybiBLVVJMKCk7Ci0gICAgcmV0dXJuIGZyYW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwocmVs
YXRpdmVVUkwpOworICAgIHJldHVybiBmcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwocmVs
YXRpdmVVUkwpOwogfQogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUFwcGxpY2F0aW9uQ2FjaGVDdXN0b20uY3BwIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3MvanMvSlNET01BcHBsaWNhdGlvbkNhY2hlQ3VzdG9tLmNwcAppbmRleCAyNjNmMmY5NWM2YzBm
MTIzOGVmMTdlMzQxMTZjYjczMGFhYzRmOGMzLi4wNTk4YmU5YTkzNGFkOTAzM2NiMDIxYjBiZjg1
NjZmNDQ5YzAxNmVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TUFwcGxpY2F0aW9uQ2FjaGVDdXN0b20uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NQXBwbGljYXRpb25DYWNoZUN1c3RvbS5jcHAKQEAgLTQ5LDcgKzQ5LDcgQEAgSlNW
YWx1ZSBKU0RPTUFwcGxpY2F0aW9uQ2FjaGU6Omhhc0l0ZW0oRXhlY1N0YXRlKiBleGVjKQogICAg
IEZyYW1lKiBmcmFtZSA9IGFzSlNET01XaW5kb3coZXhlYy0+ZHluYW1pY0dsb2JhbE9iamVjdCgp
KS0+aW1wbCgpLT5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybiBqc1Vu
ZGVmaW5lZCgpOwotICAgIGNvbnN0IEtVUkwmIHVybCA9IGZyYW1lLT5sb2FkZXIoKS0+Y29tcGxl
dGVVUkwoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYykpOworICAgIGNvbnN0IEtVUkwm
IHVybCA9IGZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTChleGVjLT5hcmd1bWVudCgwKS50
b1N0cmluZyhleGVjKSk7CiAKICAgICBFeGNlcHRpb25Db2RlIGVjID0gMDsKICAgICBib29sIHJl
c3VsdCA9IGltcGwoKS0+aGFzSXRlbSh1cmwsIGVjKTsKQEAgLTYyLDggKzYyLDggQEAgSlNWYWx1
ZSBKU0RPTUFwcGxpY2F0aW9uQ2FjaGU6OmFkZChFeGVjU3RhdGUqIGV4ZWMpCiAgICAgRnJhbWUq
IGZyYW1lID0gYXNKU0RPTVdpbmRvdyhleGVjLT5keW5hbWljR2xvYmFsT2JqZWN0KCkpLT5pbXBs
KCktPmZyYW1lKCk7CiAgICAgaWYgKCFmcmFtZSkKICAgICAgICAgcmV0dXJuIGpzVW5kZWZpbmVk
KCk7Ci0gICAgY29uc3QgS1VSTCYgdXJsID0gZnJhbWUtPmxvYWRlcigpLT5jb21wbGV0ZVVSTChl
eGVjLT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVjKSk7Ci0gICAgCisgICAgY29uc3QgS1VSTCYg
dXJsID0gZnJhbWUtPmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKGV4ZWMtPmFyZ3VtZW50KDApLnRv
U3RyaW5nKGV4ZWMpKTsKKwogICAgIEV4Y2VwdGlvbkNvZGUgZWMgPSAwOwogICAgIGltcGwoKS0+
YWRkKHVybCwgZWMpOwogICAgIHNldERPTUV4Y2VwdGlvbihleGVjLCBlYyk7CkBAIC03NSw4ICs3
NSw4IEBAIEpTVmFsdWUgSlNET01BcHBsaWNhdGlvbkNhY2hlOjpyZW1vdmUoRXhlY1N0YXRlKiBl
eGVjKQogICAgIEZyYW1lKiBmcmFtZSA9IGFzSlNET01XaW5kb3coZXhlYy0+ZHluYW1pY0dsb2Jh
bE9iamVjdCgpKS0+aW1wbCgpLT5mcmFtZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJl
dHVybiBqc1VuZGVmaW5lZCgpOwotICAgIGNvbnN0IEtVUkwmIHVybCA9IGZyYW1lLT5sb2FkZXIo
KS0+Y29tcGxldGVVUkwoZXhlYy0+YXJndW1lbnQoMCkudG9TdHJpbmcoZXhlYykpOwotICAgIAor
ICAgIGNvbnN0IEtVUkwmIHVybCA9IGZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTChleGVj
LT5hcmd1bWVudCgwKS50b1N0cmluZyhleGVjKSk7CisKICAgICBFeGNlcHRpb25Db2RlIGVjID0g
MDsKICAgICBpbXBsKCktPnJlbW92ZSh1cmwsIGVjKTsKICAgICBzZXRET01FeGNlcHRpb24oZXhl
YywgZWMpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VF
bGVtZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5j
cHAKaW5kZXggMmI0YThlYzZlODIzMjU0MzRhYWQ1Njk4YTUxNGRkYjljZTU0NDIzNy4uNzYwMTQ5
ZGYwZGU1OWE4YjVmNDU3ZWEwNTgwNGRkMGRmNmQ0ZDQ2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCkBAIC01OSw3ICs1OSw3IEBAIGJvb2wg
SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6aXNJbWFnZVR5cGUoKQogICAgICAgICBtX3NlcnZpY2VU
eXBlID0gbWltZVR5cGVGcm9tRGF0YVVSTChtX3VybCk7CiAKICAgICBpZiAoRnJhbWUqIGZyYW1l
ID0gZG9jdW1lbnQoKS0+ZnJhbWUoKSkgewotICAgICAgICBLVVJMIGNvbXBsZXRlZFVSTCA9IGZy
YW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwobV91cmwpOworICAgICAgICBLVVJMIGNvbXBsZXRl
ZFVSTCA9IGRvY3VtZW50KCktPmNvbXBsZXRlVVJMKG1fdXJsKTsKICAgICAgICAgcmV0dXJuIGZy
YW1lLT5sb2FkZXIoKS0+Y2xpZW50KCktPm9iamVjdENvbnRlbnRUeXBlKGNvbXBsZXRlZFVSTCwg
bV9zZXJ2aWNlVHlwZSwgc2hvdWxkUHJlZmVyUGx1Z0luc0ZvckltYWdlcygpKSA9PSBPYmplY3RD
b250ZW50SW1hZ2U7CiAgICAgfQogCkBAIC05NSwxMiArOTUsMTIgQEAgYm9vbCBIVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50Ojp3b3VsZExvYWRBc05ldHNjYXBlUGx1Z2luKGNvbnN0IFN0cmluZyYgdXJs
LCBjb25zdAogewogICAgIEFTU0VSVChkb2N1bWVudCgpKTsKICAgICBBU1NFUlQoZG9jdW1lbnQo
KS0+ZnJhbWUoKSk7Ci0gICAgRnJhbWVMb2FkZXIqIGZyYW1lTG9hZGVyID0gZG9jdW1lbnQoKS0+
ZnJhbWUoKS0+bG9hZGVyKCk7Ci0gICAgQVNTRVJUKGZyYW1lTG9hZGVyKTsKICAgICBLVVJMIGNv
bXBsZXRlZFVSTDsKICAgICBpZiAoIXVybC5pc0VtcHR5KCkpCi0gICAgICAgIGNvbXBsZXRlZFVS
TCA9IGZyYW1lTG9hZGVyLT5jb21wbGV0ZVVSTCh1cmwpOworICAgICAgICBjb21wbGV0ZWRVUkwg
PSBkb2N1bWVudCgpLT5jb21wbGV0ZVVSTCh1cmwpOwogCisgICAgRnJhbWVMb2FkZXIqIGZyYW1l
TG9hZGVyID0gZG9jdW1lbnQoKS0+ZnJhbWUoKS0+bG9hZGVyKCk7CisgICAgQVNTRVJUKGZyYW1l
TG9hZGVyKTsKICAgICBpZiAoZnJhbWVMb2FkZXItPmNsaWVudCgpLT5vYmplY3RDb250ZW50VHlw
ZShjb21wbGV0ZWRVUkwsIHNlcnZpY2VUeXBlLCBzaG91bGRQcmVmZXJQbHVnSW5zRm9ySW1hZ2Vz
KCkpID09IE9iamVjdENvbnRlbnROZXRzY2FwZVBsdWdpbikKICAgICAgICAgcmV0dXJuIHRydWU7
CiAgICAgcmV0dXJuIGZhbHNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvclBhZ2VBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yUGFnZUFnZW50LmNwcAppbmRleCA4ZDUzZDY4Zjc4Y2ExYzcxODJjN2M0Mjc4NDI4MDY0Yjg1
OTA1Yzc0Li43ZWNjNzUxZWNjYTNlYzMzOGQ3MDA5NTQxZWVkZjE4N2FiOTBlMzAzIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmNwcApAQCAtMzE3
LDcgKzMxNyw4IEBAIHZvaWQgSW5zcGVjdG9yUGFnZUFnZW50OjpvcGVuKEVycm9yU3RyaW5nKiwg
Y29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IGJvb2wqIGNvbnN0CiAgICAgICAgIGZyYW1lID0gbWFp
bkZyYW1lOwogCiAgICAgVXNlckdlc3R1cmVJbmRpY2F0b3IgaW5kaWNhdG9yKERlZmluaXRlbHlQ
cm9jZXNzaW5nVXNlckdlc3R1cmUpOwotICAgIGZyYW1lLT5sb2FkZXIoKS0+Y2hhbmdlTG9jYXRp
b24obWFpbkZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0eU9yaWdpbigpLCBmcmFtZS0+bG9hZGVy
KCktPmNvbXBsZXRlVVJMKHVybCksICIiLCBmYWxzZSwgZmFsc2UpOworICAgIC8vIEZJWE1FOiBX
aHkgZG9lcyBvbmUgdXNlIG1haW5GcmFtZSBhbmQgdGhlIG90aGVyIGZyYW1lPworICAgIGZyYW1l
LT5sb2FkZXIoKS0+Y2hhbmdlTG9jYXRpb24obWFpbkZyYW1lLT5kb2N1bWVudCgpLT5zZWN1cml0
eU9yaWdpbigpLCBmcmFtZS0+ZG9jdW1lbnQoKS0+Y29tcGxldGVVUkwodXJsKSwgIiIsIGZhbHNl
LCBmYWxzZSk7CiB9CiAKIHN0YXRpYyBQYXNzUmVmUHRyPEluc3BlY3Rvck9iamVjdD4gYnVpbGRP
YmplY3RGb3JDb29raWUoY29uc3QgQ29va2llJiBjb29raWUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0Zy
YW1lTG9hZGVyLmNwcAppbmRleCA5YmIwODQwMGVlNjUwODM0MTUwN2QyN2YyNDRlMGRhYzNjN2Jk
ODA2Li5kOGI5MTVhZDJmYWFhNmEzYjczNGFjY2VmOWIzYzZkZDgwMWRkMjVkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRnJhbWVMb2FkZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2xvYWRlci9GcmFtZUxvYWRlci5jcHAKQEAgLTc4OCwxOCArNzg4LDYgQEAgdm9pZCBGcmFt
ZUxvYWRlcjo6Y2hlY2tDYWxsSW1wbGljaXRDbG9zZSgpCiAgICAgbV9mcmFtZS0+ZG9jdW1lbnQo
KS0+aW1wbGljaXRDbG9zZSgpOwogfQogCi1LVVJMIEZyYW1lTG9hZGVyOjpiYXNlVVJMKCkgY29u
c3QKLXsKLSAgICBBU1NFUlQobV9mcmFtZS0+ZG9jdW1lbnQoKSk7Ci0gICAgcmV0dXJuIG1fZnJh
bWUtPmRvY3VtZW50KCktPmJhc2VVUkwoKTsKLX0KLQotS1VSTCBGcmFtZUxvYWRlcjo6Y29tcGxl
dGVVUkwoY29uc3QgU3RyaW5nJiB1cmwpCi17Ci0gICAgQVNTRVJUKG1fZnJhbWUtPmRvY3VtZW50
KCkpOwotICAgIHJldHVybiBtX2ZyYW1lLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTCh1cmwpOwot
fQotCiB2b2lkIEZyYW1lTG9hZGVyOjpsb2FkVVJMSW50b0NoaWxkRnJhbWUoY29uc3QgS1VSTCYg
dXJsLCBjb25zdCBTdHJpbmcmIHJlZmVyZXIsIEZyYW1lKiBjaGlsZEZyYW1lKQogewogICAgIEFT
U0VSVChjaGlsZEZyYW1lKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9GcmFt
ZUxvYWRlci5oIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmgKaW5kZXggYzUz
YTM2NWY2M2JmZDhmZGY0YjAyZTdkNzgwNTNiMjAzODAwY2E3Yy4uYWVhZGVhNjEwMjEwYzVlNmNj
MmZlODE0N2Y1YWRkMmI5MGUxZjNjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvbG9hZGVy
L0ZyYW1lTG9hZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvbG9hZGVyL0ZyYW1lTG9hZGVyLmgK
QEAgLTIxOSw4ICsyMTksNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBkaWRFbmREb2N1bWVudCgpOwog
ICAgIHZvaWQgd2lsbFNldEVuY29kaW5nKCk7CiAKLSAgICBLVVJMIGJhc2VVUkwoKSBjb25zdDsK
LQogICAgIHZvaWQgaGFuZGxlZE9ubG9hZEV2ZW50cygpOwogICAgIFN0cmluZyB1c2VyQWdlbnQo
Y29uc3QgS1VSTCYpIGNvbnN0OwogCkBAIC0yNjAsOCArMjU4LDYgQEAgcHVibGljOgogCiAgICAg
Ym9vbCBpc0NvbXBsZXRlKCkgY29uc3Q7CiAKLSAgICBLVVJMIGNvbXBsZXRlVVJMKGNvbnN0IFN0
cmluZyYgdXJsKTsKLQogICAgIHZvaWQgY2FuY2VsQW5kQ2xlYXIoKTsKIAogICAgIHZvaWQgc2V0
VGl0bGUoY29uc3QgU3RyaW5nV2l0aERpcmVjdGlvbiYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvbG9hZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvbG9h
ZGVyL05hdmlnYXRpb25TY2hlZHVsZXIuY3BwCmluZGV4IDcxM2EyYzg2Y2EzZmQwYjZlZGUxODI0
YjE2N2E2MDAwOGM2ZTcyNjIuLjkxYjgxMDhhYzM4NDhlMjk2MTJlOWMwZTgyOWFmZTYxMDVmYzA2
MzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9OYXZpZ2F0aW9uU2NoZWR1bGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvTmF2aWdhdGlvblNjaGVkdWxlci5jcHAK
QEAgLTMzNSwxMiArMzM1LDEyIEBAIHZvaWQgTmF2aWdhdGlvblNjaGVkdWxlcjo6c2NoZWR1bGVM
b2NhdGlvbkNoYW5nZShQYXNzUmVmUHRyPFNlY3VyaXR5T3JpZ2luPiBzZWN1CiAgICAgbG9ja0Jh
Y2tGb3J3YXJkTGlzdCA9IGxvY2tCYWNrRm9yd2FyZExpc3QgfHwgbXVzdExvY2tCYWNrRm9yd2Fy
ZExpc3QobV9mcmFtZSk7CiAKICAgICBGcmFtZUxvYWRlciogbG9hZGVyID0gbV9mcmFtZS0+bG9h
ZGVyKCk7Ci0gICAgCisKICAgICAvLyBJZiB0aGUgVVJMIHdlJ3JlIGdvaW5nIHRvIG5hdmlnYXRl
IHRvIGlzIHRoZSBzYW1lIGFzIHRoZSBjdXJyZW50IG9uZSwgZXhjZXB0IGZvciB0aGUKICAgICAv
LyBmcmFnbWVudCBwYXJ0LCB3ZSBkb24ndCBuZWVkIHRvIHNjaGVkdWxlIHRoZSBsb2NhdGlvbiBj
aGFuZ2UuCiAgICAgS1VSTCBwYXJzZWRVUkwoUGFyc2VkVVJMU3RyaW5nLCB1cmwpOwogICAgIGlm
IChwYXJzZWRVUkwuaGFzRnJhZ21lbnRJZGVudGlmaWVyKCkgJiYgZXF1YWxJZ25vcmluZ0ZyYWdt
ZW50SWRlbnRpZmllcihtX2ZyYW1lLT5kb2N1bWVudCgpLT51cmwoKSwgcGFyc2VkVVJMKSkgewot
ICAgICAgICBsb2FkZXItPmNoYW5nZUxvY2F0aW9uKHNlY3VyaXR5T3JpZ2luLCBsb2FkZXItPmNv
bXBsZXRlVVJMKHVybCksIHJlZmVycmVyLCBsb2NrSGlzdG9yeSwgbG9ja0JhY2tGb3J3YXJkTGlz
dCk7CisgICAgICAgIGxvYWRlci0+Y2hhbmdlTG9jYXRpb24oc2VjdXJpdHlPcmlnaW4sIG1fZnJh
bWUtPmRvY3VtZW50KCktPmNvbXBsZXRlVVJMKHVybCksIHJlZmVycmVyLCBsb2NrSGlzdG9yeSwg
bG9ja0JhY2tGb3J3YXJkTGlzdCk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L0hpc3RvcnkuY3BwCmluZGV4IGYyMWI2NzdhOGJjOGUyNDFkODM5OTE3ZTY4OTY2OTU0MmQ1NWE2
YWYuLmEzOWU1MWUxZGVkYTlmNGM4ZTEzZGJhZDJiNzhlOWFhYTRlZjllYTEgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvSGlzdG9yeS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9IaXN0b3J5LmNwcApAQCAtMTA5LDEwICsxMDksMTAgQEAgdm9pZCBIaXN0b3J5OjpnbyhTY3Jp
cHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBpbnQgZGlzdGFuY2UpCiAKIEtVUkwgSGlzdG9y
eTo6dXJsRm9yU3RhdGUoY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcpCiB7Ci0gICAgS1VSTCBiYXNl
VVJMID0gbV9mcmFtZS0+bG9hZGVyKCktPmJhc2VVUkwoKTsKKyAgICBLVVJMIGJhc2VVUkwgPSBt
X2ZyYW1lLT5kb2N1bWVudCgpLT5iYXNlVVJMKCk7CiAgICAgaWYgKHVybFN0cmluZy5pc0VtcHR5
KCkpCiAgICAgICAgIHJldHVybiBiYXNlVVJMOwotICAgICAgICAKKwogICAgIHJldHVybiBLVVJM
KGJhc2VVUkwsIHVybFN0cmluZyk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
dWdpbnMvUGx1Z2luVmlldy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpblZpZXcu
Y3BwCmluZGV4IGZkMmIwYjBmYzEzMWMyNjgxYmQ4NmNkNWQ3ZmQ2NTU5NjJkZGFiNDMuLmQxYzcy
MWFlMGEzODI2MTc0M2UwODE4YzExMWE4YzY4NzJmYmQzOTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsdWdpbnMvUGx1Z2luVmlldy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGx1Z2lu
cy9QbHVnaW5WaWV3LmNwcApAQCAtODI5LDcgKzgyOSw3IEBAIFBsdWdpblZpZXc6OlBsdWdpblZp
ZXcoRnJhbWUqIHBhcmVudEZyYW1lLCBjb25zdCBJbnRTaXplJiBzaXplLCBQbHVnaW5QYWNrYWdl
KiBwCiAgICAgLCBtX2VsZW1lbnQoZWxlbWVudCkKICAgICAsIG1faXNTdGFydGVkKGZhbHNlKQog
ICAgICwgbV91cmwodXJsKQotICAgICwgbV9iYXNlVVJMKG1fcGFyZW50RnJhbWUtPmxvYWRlcigp
LT5jb21wbGV0ZVVSTChtX3BhcmVudEZyYW1lLT5kb2N1bWVudCgpLT5iYXNlVVJMKCkuc3RyaW5n
KCkpKQorICAgICwgbV9iYXNlVVJMKG1fcGFyZW50RnJhbWUtPmRvY3VtZW50KCktPmJhc2VVUkwo
KSkgLy8gRklYTUU6IE5vIG5lZWQgZm9yIHRoaXMgbWVtYmVyIHZhcmlhYmxlIQogICAgICwgbV9z
dGF0dXMoUGx1Z2luU3RhdHVzTG9hZGVkU3VjY2Vzc2Z1bGx5KQogICAgICwgbV9yZXF1ZXN0VGlt
ZXIodGhpcywgJlBsdWdpblZpZXc6OnJlcXVlc3RUaW1lckZpcmVkKQogICAgICwgbV9pbnZhbGlk
YXRlVGltZXIodGhpcywgJlBsdWdpblZpZXc6OmludmFsaWRhdGVUaW1lckZpcmVkKQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViUGFzc3dvcmRGb3JtRGF0YS5jcHAg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1EYXRhLmNwcAppbmRl
eCBlYjIzMGQ1YjdjNjdhYmE3MWY2NWI4ZDNhOWIzYTNkNGVlZGUyZjI2Li5lZmQ4ZGUzMmI3MmFh
NjY0N2U4M2VkZDJlNjVkYjUxZjcxY2E4MjQ4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1EYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJQYXNzd29yZEZvcm1EYXRhLmNwcApAQCAtMTUwLDExICsxNTAsNiBAQCB2
b2lkIGFzc2VtYmxlUGFzc3dvcmRGb3JtUmVzdWx0KGNvbnN0IEtVUkwmIGZ1bGxPcmlnaW4sCiBX
ZWJQYXNzd29yZEZvcm1EYXRhOjpXZWJQYXNzd29yZEZvcm1EYXRhKGNvbnN0IFdlYkZvcm1FbGVt
ZW50JiB3ZWJGb3JtKQogewogICAgIFJlZlB0cjxIVE1MRm9ybUVsZW1lbnQ+IGZvcm0gPSB3ZWJG
b3JtLm9wZXJhdG9yIFBhc3NSZWZQdHI8SFRNTEZvcm1FbGVtZW50PigpOwotCi0gICAgRnJhbWUq
IGZyYW1lID0gZm9ybS0+ZG9jdW1lbnQoKS0+ZnJhbWUoKTsKLSAgICBpZiAoIWZyYW1lKQotICAg
ICAgICByZXR1cm47Ci0KICAgICBQYXNzd29yZEZvcm1GaWVsZHMgZmllbGRzOwogICAgIGZpbmRQ
YXNzd29yZEZvcm1GaWVsZHMoZm9ybS5nZXQoKSwgJmZpZWxkcyk7CiAKQEAgLTE2NSw3ICsxNjAs
NyBAQCBXZWJQYXNzd29yZEZvcm1EYXRhOjpXZWJQYXNzd29yZEZvcm1EYXRhKGNvbnN0IFdlYkZv
cm1FbGVtZW50JiB3ZWJGb3JtKQogICAgIFN0cmluZyBhY3Rpb24gPSBmb3JtLT5hY3Rpb24oKTsK
ICAgICBpZiAoYWN0aW9uLmlzTnVsbCgpKQogICAgICAgICBhY3Rpb24gPSAiIjsgLy8gbWlzc2lu
ZyAnYWN0aW9uJyBhdHRyaWJ1dGUgaW1wbGllcyBjdXJyZW50IFVSTAotICAgIEtVUkwgZnVsbEFj
dGlvbiA9IGZyYW1lLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwoYWN0aW9uKTsKKyAgICBLVVJMIGZ1
bGxBY3Rpb24gPSBmb3JtLT5kb2N1bWVudCgpLT5jb21wbGV0ZVVSTChhY3Rpb24pOwogICAgIGlm
ICghZnVsbEFjdGlvbi5pc1ZhbGlkKCkpCiAgICAgICAgIHJldHVybjsKIApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2VhcmNoYWJsZUZvcm1EYXRhLmNwcCBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNlYXJjaGFibGVGb3JtRGF0YS5jcHAKaW5kZXgg
ZDZjODlhOTI1ODIzMGE1NTNkOTU1ZWQ3MjA0OGJmOTQzYzcxYzk2OC4uMjM2NjMwNGE5YzZjZDJm
NDJjMzljOWVkOTMzMGViZGNhMTNhMTZiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJv
bWl1bS9zcmMvV2ViU2VhcmNoYWJsZUZvcm1EYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3NyYy9XZWJTZWFyY2hhYmxlRm9ybURhdGEuY3BwCkBAIC03MCw4ICs3MCwxMCBAQCB2
b2lkIEdldEZvcm1FbmNvZGluZyhjb25zdCBIVE1MRm9ybUVsZW1lbnQqIGZvcm0sIFRleHRFbmNv
ZGluZyogZW5jb2RpbmcpCiAvLyBSZXR1cm5zIHRydWUgaWYgdGhlIHN1Ym1pdCByZXF1ZXN0IHJl
c3VsdHMgaW4gYW4gSFRUUCBVUkwuCiBib29sIElzSFRUUEZvcm1TdWJtaXQoY29uc3QgSFRNTEZv
cm1FbGVtZW50KiBmb3JtKQogeworICAgIC8vIEZJWE1FOiBUaGlzIGZ1bmN0aW9uIGlzIGluc2Fu
ZS4gVGhpcyBpcyBhbiBvdmVybHkgY29tcGxpY2F0ZWQgd2F5IHRvIGdldCB0aGlzIGluZm9ybWF0
aW9uLgogICAgIFN0cmluZyBhY3Rpb24oZm9ybS0+YWN0aW9uKCkpOwotICAgIHJldHVybiBmb3Jt
LT5kb2N1bWVudCgpLT5mcmFtZSgpLT5sb2FkZXIoKS0+Y29tcGxldGVVUkwoYWN0aW9uLmlzTnVs
bCgpID8gIiIgOiBhY3Rpb24pLnByb3RvY29sKCkgPT0gImh0dHAiOworICAgIC8vIFRoZSBpc051
bGwoKSBjaGVjayBpcyB0cnlpbmcgdG8gYXZvaWQgY29tcGxldGVVUkwgcmV0dXJuaW5nIEtVUkwo
KSB3aGVuIHBhc3NlZCBhIG51bGwgc3RyaW5nLgorICAgIHJldHVybiBmb3JtLT5kb2N1bWVudCgp
LT5jb21wbGV0ZVVSTChhY3Rpb24uaXNOdWxsKCkgPyAiIiA6IGFjdGlvbikucHJvdG9jb2xJcygi
aHR0cCIpOwogfQogCiAvLyBJZiB0aGUgZm9ybSBkb2VzIG5vdCBoYXZlIGFuIGFjdGl2YXRlZCBz
dWJtaXQgYnV0dG9uLCB0aGUgZmlyc3Qgc3VibWl0CkBAIC0yMzYsMTAgKzIzOCw2IEBAIG5hbWVz
cGFjZSBXZWJLaXQgewogV2ViU2VhcmNoYWJsZUZvcm1EYXRhOjpXZWJTZWFyY2hhYmxlRm9ybURh
dGEoY29uc3QgV2ViRm9ybUVsZW1lbnQmIGZvcm0sIGNvbnN0IFdlYklucHV0RWxlbWVudCYgc2Vs
ZWN0ZWRJbnB1dEVsZW1lbnQpCiB7CiAgICAgUmVmUHRyPEhUTUxGb3JtRWxlbWVudD4gZm9ybUVs
ZW1lbnQgPSBmb3JtLm9wZXJhdG9yIFBhc3NSZWZQdHI8SFRNTEZvcm1FbGVtZW50PigpOwotICAg
IGNvbnN0IEZyYW1lKiBmcmFtZSA9IGZvcm1FbGVtZW50LT5kb2N1bWVudCgpLT5mcmFtZSgpOwot
ICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybjsKLQogICAgIEhUTUxJbnB1dEVsZW1lbnQq
IGlucHV0RWxlbWVudCA9IHNlbGVjdGVkSW5wdXRFbGVtZW50Lm9wZXJhdG9yIFBhc3NSZWZQdHI8
SFRNTElucHV0RWxlbWVudD4oKS5nZXQoKTsKIAogICAgIC8vIE9ubHkgY29uc2lkZXIgZm9ybXMg
dGhhdCBHRVQgZGF0YS4KQEAgLTI4Nyw3ICsyODUsNyBAQCBXZWJTZWFyY2hhYmxlRm9ybURhdGE6
OldlYlNlYXJjaGFibGVGb3JtRGF0YShjb25zdCBXZWJGb3JtRWxlbWVudCYgZm9ybSwgY29uc3Qg
VwogICAgICAgICByZXR1cm47CiAKICAgICBTdHJpbmcgYWN0aW9uKGZvcm1FbGVtZW50LT5hY3Rp
b24oKSk7Ci0gICAgS1VSTCB1cmwoZnJhbWUtPmxvYWRlcigpLT5jb21wbGV0ZVVSTChhY3Rpb24u
aXNOdWxsKCkgPyAiIiA6IGFjdGlvbikpOworICAgIEtVUkwgdXJsKGZvcm1FbGVtZW50LT5kb2N1
bWVudCgpLT5jb21wbGV0ZVVSTChhY3Rpb24uaXNOdWxsKCkgPyAiIiA6IGFjdGlvbikpOwogICAg
IFJlZlB0cjxGb3JtRGF0YT4gZm9ybURhdGEgPSBGb3JtRGF0YTo6Y3JlYXRlKGVuY29kZWRTdHJp
bmcpOwogICAgIHVybC5zZXRRdWVyeShmb3JtRGF0YS0+ZmxhdHRlblRvU3RyaW5nKCkpOwogICAg
IG1fdXJsID0gdXJsOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJC
YXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tIGIvU291cmNlL1dlYktpdC9tYWMvUGx1Z2lucy9XZWJC
YXNlTmV0c2NhcGVQbHVnaW5WaWV3Lm1tCmluZGV4IGMzODA1MTBhNDk1NmRiY2ZhMjQxOGY2ZmQ1
NjgwMTg5MDFmNTIyZmMuLjA2MTc4YjFkMzJjZjQ1MWEzODNkZmZkYzViZTQwMjkzOTU3MmU2NmIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1BsdWdpbnMvV2ViQmFzZU5ldHNjYXBlUGx1
Z2luVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9QbHVnaW5zL1dlYkJhc2VOZXRzY2Fw
ZVBsdWdpblZpZXcubW0KQEAgLTk1NCw3ICs5NTQsNyBAQCBTdHJpbmcgV2ViSGFsdGFibGVQbHVn
aW46OnBsdWdpbk5hbWUoKSBjb25zdAogICAgIGlmICghZnJhbWUtPmRvY3VtZW50KCktPnNlY3Vy
aXR5T3JpZ2luKCktPmNhbkFjY2Vzcyh0YXJnZXRGcmFtZS0+ZG9jdW1lbnQoKS0+c2VjdXJpdHlP
cmlnaW4oKSkpCiAgICAgICAgIHJldHVybiBDU3RyaW5nKCk7CiAgIAotICAgIEtVUkwgYWJzb2x1
dGVVUkwgPSB0YXJnZXRGcmFtZS0+bG9hZGVyKCktPmNvbXBsZXRlVVJMKHJlbGF0aXZlVVJMU3Ry
aW5nKTsKKyAgICBLVVJMIGFic29sdXRlVVJMID0gdGFyZ2V0RnJhbWUtPmRvY3VtZW50KCktPmNv
bXBsZXRlVVJMKHJlbGF0aXZlVVJMU3RyaW5nKTsKICAgICByZXR1cm4gYWJzb2x1dGVVUkwuc3Ry
aW5nKCkudXRmOCgpOwogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>