<?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>112179</bug_id>
          
          <creation_ts>2013-03-12 12:50:53 -0700</creation_ts>
          <short_desc>Pass the XSSAuditor&apos;s report URL to the XSSAuditorDelegate on the main thread.</short_desc>
          <delta_ts>2013-03-13 02:34:42 -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="Mike West">mkwst</reporter>
          <assigned_to name="Mike West">mkwst</assigned_to>
          <cc>abarth</cc>
    
    <cc>dbates</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>tsepez</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>853713</commentid>
    <comment_count>0</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-12 12:50:53 -0700</bug_when>
    <thetext>Pass the XSSAuditor&apos;s report URL to the XSSAuditorDelegate on the main thread.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853715</commentid>
    <comment_count>1</comment_count>
      <attachid>192790</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-12 12:55:50 -0700</bug_when>
    <thetext>Created attachment 192790
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853717</commentid>
    <comment_count>2</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-12 12:56:51 -0700</bug_when>
    <thetext>Forking this from https://bugs.webkit.org/show_bug.cgi?id= for clarity.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853738</commentid>
    <comment_count>3</comment_count>
      <attachid>192790</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-03-12 13:27:44 -0700</bug_when>
    <thetext>Comment on attachment 192790
Patch

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

&gt; Source/WebCore/html/parser/HTMLDocumentParser.cpp:538
&gt;      m_xssAuditor.init(document());
&gt; +    m_xssAuditorDelegate.setReportURL(m_xssAuditor.reportURL());

This will cause us to set the report URL every time HTMLDocumentParser::pumpTokenizer is called.  It seems like we only need to do that once...  Maybe we should pass the m_xssAuditorDelegate to m_xssAuditor in init and have it store the report URL only in the delegate?

&gt; Source/WebCore/html/parser/XSSAuditor.h:63
&gt; +    KURL reportURL() const { return m_reportURL; }

KURL -&gt; const KURL&amp;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853742</commentid>
    <comment_count>4</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-12 13:40:10 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 192790 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=192790&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/html/parser/HTMLDocumentParser.cpp:538
&gt; &gt;      m_xssAuditor.init(document());
&gt; &gt; +    m_xssAuditorDelegate.setReportURL(m_xssAuditor.reportURL());
&gt; 
&gt; This will cause us to set the report URL every time HTMLDocumentParser::pumpTokenizer is called.  It seems like we only need to do that once...  Maybe we should pass the m_xssAuditorDelegate to m_xssAuditor in init and have it store the report URL only in the delegate?

I didn&apos;t like this idea until I actually read your comment. :) Throwing away the property on both XSSAuditor and XSSInfo would be great.

&gt; 
&gt; &gt; Source/WebCore/html/parser/XSSAuditor.h:63
&gt; &gt; +    KURL reportURL() const { return m_reportURL; }
&gt; 
&gt; KURL -&gt; const KURL&amp;

*ahem* We can throw this away too. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853757</commentid>
    <comment_count>5</comment_count>
      <attachid>192801</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-12 14:06:13 -0700</bug_when>
    <thetext>Created attachment 192801
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853780</commentid>
    <comment_count>6</comment_count>
      <attachid>192801</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-03-12 14:33:40 -0700</bug_when>
    <thetext>Comment on attachment 192801
Patch

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

&gt; Source/WebCore/html/parser/XSSAuditor.cpp:302
&gt;          m_reportURL = xssProtectionReportURL; // FIXME: Combine the two report URLs in some reasonable way.

You can delete m_reportURL now.  It&apos;s not needed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853781</commentid>
    <comment_count>7</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-12 14:36:14 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 192801 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=192801&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/html/parser/XSSAuditor.cpp:302
&gt; &gt;          m_reportURL = xssProtectionReportURL; // FIXME: Combine the two report URLs in some reasonable way.
&gt; 
&gt; You can delete m_reportURL now.  It&apos;s not needed.

I was planning on doing that in a separate patch, along with the XSSInfo::m_reportURL, as I figured it would make this patch easier to review. I&apos;m happy to do it all in one if you&apos;d prefer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853801</commentid>
    <comment_count>8</comment_count>
      <attachid>192814</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-12 14:53:54 -0700</bug_when>
    <thetext>Created attachment 192814
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853803</commentid>
    <comment_count>9</comment_count>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-12 14:55:28 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; Created an attachment (id=192814) [details]
&gt; Patch

This wraps up everything except the one-report-only change; I&apos;d still like to do that in the other bug, as I&apos;d also like to reorder some of the statements in that block, and the diff will be ugly if I do both here. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853881</commentid>
    <comment_count>10</comment_count>
      <attachid>192814</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-03-12 15:58:26 -0700</bug_when>
    <thetext>Comment on attachment 192814
Patch

This looks great.  Thanks for iterating on it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853892</commentid>
    <comment_count>11</comment_count>
      <attachid>192814</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-12 16:21:42 -0700</bug_when>
    <thetext>Comment on attachment 192814
Patch

Rejecting attachment 192814 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=webkit-commit-queue.appspot.com&apos;, &apos;--bot-id=gce-cq-02&apos;, &apos;land-attachment&apos;, &apos;--force-clean&apos;, &apos;--non-interactive&apos;, &apos;--parent-command=commit-queue&apos;, 192814, &apos;--port=chromium-xvfb&apos;]&quot; exit_code: 2 cwd: /mnt/git/webkit-commit-queue

Last 500 characters of output:
t/git/webkit-commit-queue/Source/WebKit/chromium/v8 --revision 13882 --non-interactive --force --accept theirs-conflict --ignore-externals&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
54&gt;At revision 13882.

________ running &apos;/usr/bin/python tools/clang/scripts/update.py --mac-only&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;

________ running &apos;/usr/bin/python gyp_webkit&apos; in &apos;/mnt/git/webkit-commit-queue/Source/WebKit/chromium&apos;
Updating webkit projects from gyp files...

Full output: http://webkit-commit-queue.appspot.com/results/17189262</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>853897</commentid>
    <comment_count>12</comment_count>
      <attachid>192814</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2013-03-12 16:29:38 -0700</bug_when>
    <thetext>Comment on attachment 192814
Patch

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

&gt; Source/WebCore/ChangeLog:16
&gt; +        No new tests (OOPS!).

The following ChangeLog files contain OOPS:

        trunk/Source/WebCore/ChangeLog

    Please don&apos;t ever say &quot;OOPS&quot; in a ChangeLog file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854125</commentid>
    <comment_count>13</comment_count>
      <attachid>192881</attachid>
    <who name="Mike West">mkwst</who>
    <bug_when>2013-03-13 01:43:38 -0700</bug_when>
    <thetext>Created attachment 192881
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854150</commentid>
    <comment_count>14</comment_count>
      <attachid>192881</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-13 02:34:38 -0700</bug_when>
    <thetext>Comment on attachment 192881
Patch for landing

Clearing flags on attachment: 192881

Committed r145695: &lt;http://trac.webkit.org/changeset/145695&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>854151</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-03-13 02:34:42 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192790</attachid>
            <date>2013-03-12 12:55:50 -0700</date>
            <delta_ts>2013-03-12 14:06:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112179-20130312205147.patch</filename>
            <type>text/plain</type>
            <size>5592</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTdhODVlYjM5MDBmYmE0
YjY2NGQ1NjM2YTFlZTcxMzFkMTEwMzU5Zi4uNzY1M2RlNWYzMDU1ZWRhMDYxM2U3MDQ4NDJjZjgx
OTEyMzRjMjU0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEzLTAzLTEyICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGFzcyB0aGUgWFNTQXVkaXRv
cidzIHJlcG9ydCBVUkwgdG8gdGhlIFhTU0F1ZGl0b3JEZWxlZ2F0ZSBvbiB0aGUgbWFpbiB0aHJl
YWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIx
NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSYXRo
ZXIgdGhhbiByZWx5aW5nIG9uIFhTU0luZm8gb2JqZWN0cyB0byBtb3ZlIHRoZSBYU1NBdWRpdG9y
J3MgcmVwb3J0CisgICAgICAgIFVSTCBpbnRvIHRoZSBYU1NBdWRpdG9yRGVsZWdhdGUgZm9yIHJl
cG9ydGluZywgd2Ugc2hvdWxkIGJlIGFibGUgdG8gZ3JhYgorICAgICAgICB0aGUgVVJMIGRpcmVj
dGx5IGZyb20gWFNTQXVkaXRvciBiZWZvcmUgaXQgbW92ZXMgb2ZmIHRoZSBtYWluIHRocmVhZCwK
KyAgICAgICAgYW5kIHN0b3JlIGl0IG9uIHRoZSBkZWxlZ2F0ZS4KKworICAgICAgICBUaGlzIHBh
dGNoIGRvZXMganVzdCB0aGF0LCB3aGljaCB3aWxsIGVuYWJsZSB1cyB0byB0aHJvdyBhd2F5IHRo
ZQorICAgICAgICBYU1NJbmZvOjptX3JlcG9ydFVSTCBwcm9wZXJ0eSBpbiBhIGZvbGxvd3VwIHBh
dGNoIChidWcgMTExOTY0KS4KKworICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBh
cnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OnB1bXBUb2tl
bml6ZXIpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjpzdGFydEJhY2tn
cm91bmRQYXJzZXIpOgorICAgICAgICAgICAgV2hlbiBpbml0aWFsaXppbmcgdGhlIFhTU0F1ZGl0
b3IsIGdyYWIgaXRzIHJlcG9ydCBVUkwsIGFuZAorICAgICAgICAgICAgaGFuZCBpdCB0byB0aGUg
WFNTQXVkaXRvckRlbGVnYXRlIGRpcmVjdGx5LiBJZiB3ZSdyZSB1c2luZyB0aGUKKyAgICAgICAg
ICAgIGJhY2tncm91bmQgcGFyc2VyLCBlbnN1cmUgdGhhdCB3ZSBjb3B5IHRoZSBVUkwgcmF0aGVy
IHRoYW4KKyAgICAgICAgICAgIHVzaW5nIGl0IGRpcmVjdGx5LgorICAgICAgICAqIGh0bWwvcGFy
c2VyL1hTU0F1ZGl0b3IuaDoKKyAgICAgICAgKFdlYkNvcmU6OlhTU0F1ZGl0b3I6OnJlcG9ydFVS
TCk6CisgICAgICAgICAgICBBbiBleGNpdGluZyBuZXcgbWV0aG9kIHRoYXQgcmV0dXJuIHRoZSBj
dXJyZW50IHJlcG9ydCBVUkwuCisgICAgICAgICogaHRtbC9wYXJzZXIvWFNTQXVkaXRvckRlbGVn
YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlhTU0F1ZGl0b3JEZWxlZ2F0ZTo6ZGlkQmxvY2tT
Y3JpcHQpOgorICAgICAgICAqIGh0bWwvcGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5oOgorICAg
ICAgICAoV2ViQ29yZTo6WFNTQXVkaXRvckRlbGVnYXRlOjpzZXRSZXBvcnRVUkwpOgorICAgICAg
ICAgICAgQWRkIGEgcHJvcGVydHkgYW5kIGFuIGludGVyZmFjZSB0byBYU1NBdWRpdG9yRGVsZWdh
dGUgdG8gc3RvcmUKKyAgICAgICAgICAgIGEgcmVwb3J0IFVSTCwgYW5kIHVzZSB0aGlzIG5ldyBw
cm9wZXJ0eSB3aGVuIHNlbmRpbmcgcmVwb3J0cy4KKwogMjAxMy0wMy0xMiAgTWFyamEgSMO2bHR0
w6QgIDxtYXJqYUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW1Y4XSBHZXQgcmlkIG9mIGZ1bmN0
aW9uLWxldmVsIHN0YXRpYyBGdW5jdGlvblRlbXBsYXRlcyBpbiBnZW5lcmF0ZWQgYmluZGluZ3Mg
Y29kZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50
UGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNl
ci5jcHAKaW5kZXggOTY3ZDFkNTRkMzNiMjEzMmE3OTUwODQ4MmJlMWM2N2IzZDBjMTFlZi4uOTM5
MTgzMGFiOTVjZWJjNTJkMWYzYTNkZDZiMTg2NTFjNWQxYzEyNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFyc2VyLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3BhcnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwCkBAIC01MzUsNiArNTM1
LDcgQEAgdm9pZCBIVE1MRG9jdW1lbnRQYXJzZXI6OnB1bXBUb2tlbml6ZXIoU3luY2hyb25vdXNN
b2RlIG1vZGUpCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVudGF0aW9uQ29va2llIGNvb2tpZSA9IElu
c3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFdyaXRlSFRNTChkb2N1bWVudCgpLCBtX2lucHV0
LmN1cnJlbnQoKS5jdXJyZW50TGluZSgpLnplcm9CYXNlZEludCgpKTsKIAogICAgIG1feHNzQXVk
aXRvci5pbml0KGRvY3VtZW50KCkpOworICAgIG1feHNzQXVkaXRvckRlbGVnYXRlLnNldFJlcG9y
dFVSTChtX3hzc0F1ZGl0b3IucmVwb3J0VVJMKCkpOwogCiAgICAgd2hpbGUgKGNhblRha2VOZXh0
VG9rZW4obW9kZSwgc2Vzc2lvbikgJiYgIXNlc3Npb24ubmVlZHNZaWVsZCkgewogICAgICAgICBp
ZiAoIWlzUGFyc2luZ0ZyYWdtZW50KCkpCkBAIC02NzYsNiArNjc3LDcgQEAgdm9pZCBIVE1MRG9j
dW1lbnRQYXJzZXI6OnN0YXJ0QmFja2dyb3VuZFBhcnNlcigpCiAgICAgY29uZmlnLT5wYXJzZXIg
PSBtX3dlYWtGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsKICAgICBjb25maWctPnhzc0F1ZGl0b3Ig
PSBhZG9wdFB0cihuZXcgWFNTQXVkaXRvcik7CiAgICAgY29uZmlnLT54c3NBdWRpdG9yLT5pbml0
KGRvY3VtZW50KCkpOworICAgIG1feHNzQXVkaXRvckRlbGVnYXRlLnNldFJlcG9ydFVSTChjb25m
aWctPnhzc0F1ZGl0b3ItPnJlcG9ydFVSTCgpLmNvcHkoKSk7CiAgICAgY29uZmlnLT5wcmVsb2Fk
U2Nhbm5lciA9IGFkb3B0UHRyKG5ldyBUb2tlblByZWxvYWRTY2FubmVyKGRvY3VtZW50KCktPnVy
bCgpLmNvcHkoKSkpOwogCiAgICAgQVNTRVJUKGNvbmZpZy0+eHNzQXVkaXRvci0+aXNTYWZlVG9T
ZW5kVG9Bbm90aGVyVGhyZWFkKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9w
YXJzZXIvWFNTQXVkaXRvci5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRv
ci5oCmluZGV4IDRiMDFjZDczNDU5NjhhMTUyNTRkMWY5NDdjNjhmYWYxMWJmMGVjNTIuLjFmM2Qy
NjNmOWFmZjAyMzlmOGNlNmU1MGJjYWM3OTljNDE3MDYxZmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3BhcnNlci9YU1NBdWRpdG9yLmgKQEAgLTYwLDYgKzYwLDcgQEAgcHVibGljOgogICAgIHZvaWQg
aW5pdChEb2N1bWVudCopOwogICAgIFBhc3NPd25QdHI8WFNTSW5mbz4gZmlsdGVyVG9rZW4oY29u
c3QgRmlsdGVyVG9rZW5SZXF1ZXN0Jik7CiAgICAgYm9vbCBpc1NhZmVUb1NlbmRUb0Fub3RoZXJU
aHJlYWQoKSBjb25zdDsKKyAgICBLVVJMIHJlcG9ydFVSTCgpIGNvbnN0IHsgcmV0dXJuIG1fcmVw
b3J0VVJMOyB9CiAKIHByaXZhdGU6CiAgICAgc3RhdGljIGNvbnN0IHNpemVfdCBrTWF4aW11bUZy
YWdtZW50TGVuZ3RoVGFyZ2V0ID0gMTAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRt
bC9wYXJzZXIvWFNTQXVkaXRvckRlbGVnYXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFy
c2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5jcHAKaW5kZXggMDQxZjNmYzQ2M2VlZTViZjhhNThjMTE4
YTY0YmZiOGJlYTUzMjJhNC4uMzU1MTQyNThjZWM2M2M2OTEyMmY5ZThlOWNmNzgxYTQ0NzlmYmM5
ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRvckRlbGVn
YXRlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yRGVsZWdh
dGUuY3BwCkBAIC05MSw3ICs5MSw3IEBAIHZvaWQgWFNTQXVkaXRvckRlbGVnYXRlOjpkaWRCbG9j
a1NjcmlwdChjb25zdCBYU1NJbmZvJiB4c3NJbmZvKQogICAgICAgICBtX2RpZE5vdGlmeUNsaWVu
dCA9IHRydWU7CiAgICAgfQogCi0gICAgaWYgKCF4c3NJbmZvLm1fcmVwb3J0VVJMLmlzRW1wdHko
KSkgeworICAgIGlmICghbV9yZXBvcnRVUkwuaXNFbXB0eSgpKSB7CiAgICAgICAgIFJlZlB0cjxJ
bnNwZWN0b3JPYmplY3Q+IHJlcG9ydERldGFpbHMgPSBJbnNwZWN0b3JPYmplY3Q6OmNyZWF0ZSgp
OwogICAgICAgICByZXBvcnREZXRhaWxzLT5zZXRTdHJpbmcoInJlcXVlc3QtdXJsIiwgbV9kb2N1
bWVudC0+dXJsKCkuc3RyaW5nKCkpOwogCkBAIC0xMDYsNyArMTA2LDcgQEAgdm9pZCBYU1NBdWRp
dG9yRGVsZWdhdGU6OmRpZEJsb2NrU2NyaXB0KGNvbnN0IFhTU0luZm8mIHhzc0luZm8pCiAgICAg
ICAgIHJlcG9ydE9iamVjdC0+c2V0T2JqZWN0KCJ4c3MtcmVwb3J0IiwgcmVwb3J0RGV0YWlscy5y
ZWxlYXNlKCkpOwogCiAgICAgICAgIFJlZlB0cjxGb3JtRGF0YT4gcmVwb3J0ID0gRm9ybURhdGE6
OmNyZWF0ZShyZXBvcnRPYmplY3QtPnRvSlNPTlN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwotICAg
ICAgICBQaW5nTG9hZGVyOjpzZW5kVmlvbGF0aW9uUmVwb3J0KG1fZG9jdW1lbnQtPmZyYW1lKCks
IHhzc0luZm8ubV9yZXBvcnRVUkwsIHJlcG9ydCk7CisgICAgICAgIFBpbmdMb2FkZXI6OnNlbmRW
aW9sYXRpb25SZXBvcnQobV9kb2N1bWVudC0+ZnJhbWUoKSwgbV9yZXBvcnRVUkwsIHJlcG9ydCk7
CiAgICAgfQogCiAgICAgaWYgKHhzc0luZm8ubV9kaWRCbG9ja0VudGlyZVBhZ2UpCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuaCBiL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5oCmluZGV4IGM0NTNi
MGM2YWFiMmFlM2M3NGUwMDRjYThiYzllNzNkYWE4MmRjMTIuLjBlNzM4MDZmZDM5NTJjMjJiYmJj
OTdlZGZiYmQ3OTcwMjU4NDdkMTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFy
c2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2Vy
L1hTU0F1ZGl0b3JEZWxlZ2F0ZS5oCkBAIC02NywxMCArNjcsMTIgQEAgcHVibGljOgogICAgIGV4
cGxpY2l0IFhTU0F1ZGl0b3JEZWxlZ2F0ZShEb2N1bWVudCopOwogCiAgICAgdm9pZCBkaWRCbG9j
a1NjcmlwdChjb25zdCBYU1NJbmZvJik7CisgICAgdm9pZCBzZXRSZXBvcnRVUkwoY29uc3QgS1VS
TCYgdXJsKSB7IG1fcmVwb3J0VVJMID0gdXJsOyB9CiAKIHByaXZhdGU6CiAgICAgRG9jdW1lbnQq
IG1fZG9jdW1lbnQ7CiAgICAgYm9vbCBtX2RpZE5vdGlmeUNsaWVudDsKKyAgICBLVVJMIG1fcmVw
b3J0VVJMOwogfTsKIAogdHlwZWRlZiBWZWN0b3I8T3duUHRyPFhTU0luZm8+ID4gWFNTSW5mb1N0
cmVhbTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192801</attachid>
            <date>2013-03-12 14:06:13 -0700</date>
            <delta_ts>2013-03-12 14:53:50 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112179-20130312220208.patch</filename>
            <type>text/plain</type>
            <size>7306</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTdhODVlYjM5MDBmYmE0
YjY2NGQ1NjM2YTFlZTcxMzFkMTEwMzU5Zi4uYjJhOTdhNzVjM2JlYmY5MmJhNzE3YTk5YjQwNDdh
OGE2OTc1OTM5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEzLTAzLTEyICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGFzcyB0aGUgWFNTQXVkaXRv
cidzIHJlcG9ydCBVUkwgdG8gdGhlIFhTU0F1ZGl0b3JEZWxlZ2F0ZSBvbiB0aGUgbWFpbiB0aHJl
YWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIx
NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSYXRo
ZXIgdGhhbiByZWx5aW5nIG9uIFhTU0luZm8gb2JqZWN0cyB0byBtb3ZlIHRoZSBYU1NBdWRpdG9y
J3MgcmVwb3J0CisgICAgICAgIFVSTCBpbnRvIHRoZSBYU1NBdWRpdG9yRGVsZWdhdGUgZm9yIHJl
cG9ydGluZywgd2Ugc2hvdWxkIGJlIGFibGUgdG8gZ3JhYgorICAgICAgICB0aGUgVVJMIGRpcmVj
dGx5IGZyb20gWFNTQXVkaXRvciBiZWZvcmUgaXQgbW92ZXMgb2ZmIHRoZSBtYWluIHRocmVhZCwK
KyAgICAgICAgYW5kIHN0b3JlIGl0IG9uIHRoZSBkZWxlZ2F0ZS4KKworICAgICAgICBUaGlzIHBh
dGNoIGRvZXMganVzdCB0aGF0LCB3aGljaCB3aWxsIGVuYWJsZSB1cyB0byB0aHJvdyBhd2F5IHRo
ZQorICAgICAgICBYU1NJbmZvOjptX3JlcG9ydFVSTCBhbmQgWFNTQXVkaXRvcjo6bV9yZXBvcnRV
UkwgcHJvcGVydGllcyBpbiBhCisgICAgICAgIGZvbGxvd3VwIHBhdGNoIChidWcgMTExOTY0KS4K
KworICAgICAgICAqIGh0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OnB1bXBUb2tlbml6ZXIpOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTERvY3VtZW50UGFyc2VyOjpzdGFydEJhY2tncm91bmRQYXJzZXIpOgorICAg
ICAgICAqIGh0bWwvcGFyc2VyL1hTU0F1ZGl0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6WFNT
QXVkaXRvcjo6aW5pdCk6CisgICAgICAgICAgICBXaGVuIGluaXRpYWxpemluZyB0aGUgWFNTQXVk
aXRvciwgcGFzcyBpbiBhbiBYU1NBdWRpdG9yRGVsZWdhdGUqCisgICAgICAgICAgICBhbmQgYXNz
aWduIHRoZSByZXBvcnQgVVJMIGRpcmVjdGx5IG9udG8gdGhhdCBvYmplY3QuIEZvciB0aGUKKyAg
ICAgICAgICAgIG1vbWVudCB3ZSdsbCB1c2UgYSBjb3B5IG9mIHRoZSByZXBvcnQgVVJMIHN0b3Jl
ZCBvbiB0aGUgWFNTQXVkaXRvciwKKyAgICAgICAgICAgIGJ1dCB0aGlzIHBhdGNoIHdpbGwgZW5h
YmxlIHVzIHRvIGRyb3AgdGhhdCBwcm9wZXJ0eSBjb21wbGV0ZWx5LgorICAgICAgICAqIGh0bWwv
cGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpYU1NBdWRp
dG9yRGVsZWdhdGU6OmRpZEJsb2NrU2NyaXB0KToKKyAgICAgICAgKiBodG1sL3BhcnNlci9YU1NB
dWRpdG9yRGVsZWdhdGUuaDoKKyAgICAgICAgKFdlYkNvcmU6OlhTU0F1ZGl0b3JEZWxlZ2F0ZTo6
c2V0UmVwb3J0VVJMKToKKyAgICAgICAgICAgIEFkZCBhIHByb3BlcnR5IGFuZCBhbiBpbnRlcmZh
Y2UgdG8gWFNTQXVkaXRvckRlbGVnYXRlIHRvIHN0b3JlCisgICAgICAgICAgICBhIHJlcG9ydCBV
UkwsIGFuZCB1c2UgdGhpcyBuZXcgcHJvcGVydHkgd2hlbiBzZW5kaW5nIHJlcG9ydHMuCisKIDIw
MTMtMDMtMTIgIE1hcmphIEjDtmx0dMOkICA8bWFyamFAY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IFtWOF0gR2V0IHJpZCBvZiBmdW5jdGlvbi1sZXZlbCBzdGF0aWMgRnVuY3Rpb25UZW1wbGF0ZXMg
aW4gZ2VuZXJhdGVkIGJpbmRpbmdzIGNvZGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0
bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3Bh
cnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwCmluZGV4IDk2N2QxZDU0ZDMzYjIxMzJhNzk1MDg0
ODJiZTFjNjdiM2QwYzExZWYuLmZlMjdhMGQ4MThmOGJmYzU1NWMzMDAyZjRhZWVhOGZkMDNiNTEy
YmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBh
cnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFy
c2VyLmNwcApAQCAtNTM0LDcgKzUzNCw3IEBAIHZvaWQgSFRNTERvY3VtZW50UGFyc2VyOjpwdW1w
VG9rZW5pemVyKFN5bmNocm9ub3VzTW9kZSBtb2RlKQogICAgIC8vIG11Y2ggd2UgcGFyc2VkIGFz
IHBhcnQgb2YgZGlkV3JpdGVIVE1MIGluc3RlYWQgb2Ygd2lsbFdyaXRlSFRNTC4KICAgICBJbnNw
ZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUgY29va2llID0gSW5zcGVjdG9ySW5zdHJ1bWVudGF0
aW9uOjp3aWxsV3JpdGVIVE1MKGRvY3VtZW50KCksIG1faW5wdXQuY3VycmVudCgpLmN1cnJlbnRM
aW5lKCkuemVyb0Jhc2VkSW50KCkpOwogCi0gICAgbV94c3NBdWRpdG9yLmluaXQoZG9jdW1lbnQo
KSk7CisgICAgbV94c3NBdWRpdG9yLmluaXQoZG9jdW1lbnQoKSwgJm1feHNzQXVkaXRvckRlbGVn
YXRlKTsKIAogICAgIHdoaWxlIChjYW5UYWtlTmV4dFRva2VuKG1vZGUsIHNlc3Npb24pICYmICFz
ZXNzaW9uLm5lZWRzWWllbGQpIHsKICAgICAgICAgaWYgKCFpc1BhcnNpbmdGcmFnbWVudCgpKQpA
QCAtNjc1LDcgKzY3NSw3IEBAIHZvaWQgSFRNTERvY3VtZW50UGFyc2VyOjpzdGFydEJhY2tncm91
bmRQYXJzZXIoKQogICAgIGNvbmZpZy0+b3B0aW9ucyA9IG1fb3B0aW9uczsKICAgICBjb25maWct
PnBhcnNlciA9IG1fd2Vha0ZhY3RvcnkuY3JlYXRlV2Vha1B0cigpOwogICAgIGNvbmZpZy0+eHNz
QXVkaXRvciA9IGFkb3B0UHRyKG5ldyBYU1NBdWRpdG9yKTsKLSAgICBjb25maWctPnhzc0F1ZGl0
b3ItPmluaXQoZG9jdW1lbnQoKSk7CisgICAgY29uZmlnLT54c3NBdWRpdG9yLT5pbml0KGRvY3Vt
ZW50KCksICZtX3hzc0F1ZGl0b3JEZWxlZ2F0ZSk7CiAgICAgY29uZmlnLT5wcmVsb2FkU2Nhbm5l
ciA9IGFkb3B0UHRyKG5ldyBUb2tlblByZWxvYWRTY2FubmVyKGRvY3VtZW50KCktPnVybCgpLmNv
cHkoKSkpOwogCiAgICAgQVNTRVJUKGNvbmZpZy0+eHNzQXVkaXRvci0+aXNTYWZlVG9TZW5kVG9B
bm90aGVyVGhyZWFkKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
WFNTQXVkaXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yLmNw
cAppbmRleCA3OTRhNzJhNzYwNTU0MjQ2ZGFmNTNkMDlhOWI0YTM1NDA1YjJlNTYzLi45NGY2ZjUz
NWFiZDc2OGEwYzE2MTliNjQ2NjNiMTViZmI4ZWJkYThjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3BhcnNlci9YU1NBdWRpdG9yLmNwcApAQCAtNTEsNiArNTEsNyBAQAogI2luY2x1ZGUgIlRleHRF
bmNvZGluZy5oIgogI2luY2x1ZGUgIlRleHRSZXNvdXJjZURlY29kZXIuaCIKICNpbmNsdWRlICJY
TGlua05hbWVzLmgiCisjaW5jbHVkZSAiWFNTQXVkaXRvckRlbGVnYXRlLmgiCiAKICNpZiBFTkFC
TEUoU1ZHKQogI2luY2x1ZGUgIlNWR05hbWVzLmgiCkBAIC0yMjYsNyArMjI3LDcgQEAgWFNTQXVk
aXRvcjo6WFNTQXVkaXRvcigpCiAgICAgLy8gd2Ugd2FudCB0byByZWZlcmVuY2UgbWlnaHQgbm90
IGFsbCBoYXZlIGJlZW4gY29uc3RydWN0ZWQgeWV0LgogfQogCi12b2lkIFhTU0F1ZGl0b3I6Omlu
aXQoRG9jdW1lbnQqIGRvY3VtZW50KQordm9pZCBYU1NBdWRpdG9yOjppbml0KERvY3VtZW50KiBk
b2N1bWVudCwgWFNTQXVkaXRvckRlbGVnYXRlKiBhdWRpdG9yRGVsZWdhdGUpCiB7CiAgICAgY29u
c3Qgc2l6ZV90IG1pbml1bUxlbmd0aEZvclN1ZmZpeFRyZWUgPSA1MTI7IC8vIEZJWE1FOiBUdW5l
IHRoaXMgcGFyYW1ldGVyLgogICAgIGNvbnN0IGludCBzdWZmaXhUcmVlRGVwdGggPSA1OwpAQCAt
Mjk5LDYgKzMwMCw4IEBAIHZvaWQgWFNTQXVkaXRvcjo6aW5pdChEb2N1bWVudCogZG9jdW1lbnQp
CiAKICAgICAgICAgbV94c3NQcm90ZWN0aW9uID0gY29tYmluZVhTU1Byb3RlY3Rpb25IZWFkZXJB
bmRDU1AoeHNzUHJvdGVjdGlvbkhlYWRlciwgY3NwSGVhZGVyKTsKICAgICAgICAgbV9yZXBvcnRV
UkwgPSB4c3NQcm90ZWN0aW9uUmVwb3J0VVJMOyAvLyBGSVhNRTogQ29tYmluZSB0aGUgdHdvIHJl
cG9ydCBVUkxzIGluIHNvbWUgcmVhc29uYWJsZSB3YXkuCisgICAgICAgIGlmIChhdWRpdG9yRGVs
ZWdhdGUpCisgICAgICAgICAgICBhdWRpdG9yRGVsZWdhdGUtPnNldFJlcG9ydFVSTChtX3JlcG9y
dFVSTC5jb3B5KCkpOwogICAgICAgICBGb3JtRGF0YSogaHR0cEJvZHkgPSBkb2N1bWVudExvYWRl
ci0+b3JpZ2luYWxSZXF1ZXN0KCkuaHR0cEJvZHkoKTsKICAgICAgICAgaWYgKGh0dHBCb2R5ICYm
ICFodHRwQm9keS0+aXNFbXB0eSgpKSB7CiAgICAgICAgICAgICBodHRwQm9keUFzU3RyaW5nID0g
aHR0cEJvZHktPmZsYXR0ZW5Ub1N0cmluZygpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aHRtbC9wYXJzZXIvWFNTQXVkaXRvci5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNT
QXVkaXRvci5oCmluZGV4IDRiMDFjZDczNDU5NjhhMTUyNTRkMWY5NDdjNjhmYWYxMWJmMGVjNTIu
LmZhZTQ5NWRkOGVhODA5OGM2NGQ2ZDcxZmU4MzgzMjA2ODc3ODVhZTkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yLmgKQEAgLTM5LDYgKzM5LDcgQEAgY2xhc3MgRG9jdW1l
bnQ7CiBjbGFzcyBIVE1MRG9jdW1lbnRQYXJzZXI7CiBjbGFzcyBIVE1MU291cmNlVHJhY2tlcjsK
IGNsYXNzIFhTU0luZm87CitjbGFzcyBYU1NBdWRpdG9yRGVsZWdhdGU7CiAKIHN0cnVjdCBGaWx0
ZXJUb2tlblJlcXVlc3QgewogICAgIEZpbHRlclRva2VuUmVxdWVzdChIVE1MVG9rZW4mIHRva2Vu
LCBIVE1MU291cmNlVHJhY2tlciYgc291cmNlVHJhY2tlciwgYm9vbCBzaG91bGRBbGxvd0NEQVRB
KQpAQCAtNTcsNyArNTgsNyBAQCBjbGFzcyBYU1NBdWRpdG9yIHsKIHB1YmxpYzoKICAgICBYU1NB
dWRpdG9yKCk7CiAKLSAgICB2b2lkIGluaXQoRG9jdW1lbnQqKTsKKyAgICB2b2lkIGluaXQoRG9j
dW1lbnQqLCBYU1NBdWRpdG9yRGVsZWdhdGUqKTsKICAgICBQYXNzT3duUHRyPFhTU0luZm8+IGZp
bHRlclRva2VuKGNvbnN0IEZpbHRlclRva2VuUmVxdWVzdCYpOwogICAgIGJvb2wgaXNTYWZlVG9T
ZW5kVG9Bbm90aGVyVGhyZWFkKCkgY29uc3Q7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1s
L3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuY3BwCmluZGV4IDA0MWYzZmM0NjNlZWU1YmY4YTU4
YzExOGE2NGJmYjhiZWE1MzIyYTQuLjM1NTE0MjU4Y2VjNjNjNjkxMjJmOWU4ZTljZjc4MWE0NDc5
ZmJjOWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3JE
ZWxlZ2F0ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRvckRl
bGVnYXRlLmNwcApAQCAtOTEsNyArOTEsNyBAQCB2b2lkIFhTU0F1ZGl0b3JEZWxlZ2F0ZTo6ZGlk
QmxvY2tTY3JpcHQoY29uc3QgWFNTSW5mbyYgeHNzSW5mbykKICAgICAgICAgbV9kaWROb3RpZnlD
bGllbnQgPSB0cnVlOwogICAgIH0KIAotICAgIGlmICgheHNzSW5mby5tX3JlcG9ydFVSTC5pc0Vt
cHR5KCkpIHsKKyAgICBpZiAoIW1fcmVwb3J0VVJMLmlzRW1wdHkoKSkgewogICAgICAgICBSZWZQ
dHI8SW5zcGVjdG9yT2JqZWN0PiByZXBvcnREZXRhaWxzID0gSW5zcGVjdG9yT2JqZWN0OjpjcmVh
dGUoKTsKICAgICAgICAgcmVwb3J0RGV0YWlscy0+c2V0U3RyaW5nKCJyZXF1ZXN0LXVybCIsIG1f
ZG9jdW1lbnQtPnVybCgpLnN0cmluZygpKTsKIApAQCAtMTA2LDcgKzEwNiw3IEBAIHZvaWQgWFNT
QXVkaXRvckRlbGVnYXRlOjpkaWRCbG9ja1NjcmlwdChjb25zdCBYU1NJbmZvJiB4c3NJbmZvKQog
ICAgICAgICByZXBvcnRPYmplY3QtPnNldE9iamVjdCgieHNzLXJlcG9ydCIsIHJlcG9ydERldGFp
bHMucmVsZWFzZSgpKTsKIAogICAgICAgICBSZWZQdHI8Rm9ybURhdGE+IHJlcG9ydCA9IEZvcm1E
YXRhOjpjcmVhdGUocmVwb3J0T2JqZWN0LT50b0pTT05TdHJpbmcoKS51dGY4KCkuZGF0YSgpKTsK
LSAgICAgICAgUGluZ0xvYWRlcjo6c2VuZFZpb2xhdGlvblJlcG9ydChtX2RvY3VtZW50LT5mcmFt
ZSgpLCB4c3NJbmZvLm1fcmVwb3J0VVJMLCByZXBvcnQpOworICAgICAgICBQaW5nTG9hZGVyOjpz
ZW5kVmlvbGF0aW9uUmVwb3J0KG1fZG9jdW1lbnQtPmZyYW1lKCksIG1fcmVwb3J0VVJMLCByZXBv
cnQpOwogICAgIH0KIAogICAgIGlmICh4c3NJbmZvLm1fZGlkQmxvY2tFbnRpcmVQYWdlKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRvckRlbGVnYXRlLmgg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuaAppbmRleCBj
NDUzYjBjNmFhYjJhZTNjNzRlMDA0Y2E4YmM5ZTczZGFhODJkYzEyLi4wZTczODA2ZmQzOTUyYzIy
YmJiYzk3ZWRmYmJkNzk3MDI1ODQ3ZDE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1s
L3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3Bh
cnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuaApAQCAtNjcsMTAgKzY3LDEyIEBAIHB1YmxpYzoKICAg
ICBleHBsaWNpdCBYU1NBdWRpdG9yRGVsZWdhdGUoRG9jdW1lbnQqKTsKIAogICAgIHZvaWQgZGlk
QmxvY2tTY3JpcHQoY29uc3QgWFNTSW5mbyYpOworICAgIHZvaWQgc2V0UmVwb3J0VVJMKGNvbnN0
IEtVUkwmIHVybCkgeyBtX3JlcG9ydFVSTCA9IHVybDsgfQogCiBwcml2YXRlOgogICAgIERvY3Vt
ZW50KiBtX2RvY3VtZW50OwogICAgIGJvb2wgbV9kaWROb3RpZnlDbGllbnQ7CisgICAgS1VSTCBt
X3JlcG9ydFVSTDsKIH07CiAKIHR5cGVkZWYgVmVjdG9yPE93blB0cjxYU1NJbmZvPiA+IFhTU0lu
Zm9TdHJlYW07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192814</attachid>
            <date>2013-03-12 14:53:54 -0700</date>
            <delta_ts>2013-03-13 01:43:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-112179-20130312224952.patch</filename>
            <type>text/plain</type>
            <size>12122</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTdhODVlYjM5MDBmYmE0
YjY2NGQ1NjM2YTFlZTcxMzFkMTEwMzU5Zi4uZmU2MjFkNGIzYzI3MzcyYzA2N2Q2YWFiMzg5ZTRh
MTEwZjRiZjg5NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ4IEBACisyMDEzLTAzLTEyICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGFzcyB0aGUgWFNTQXVkaXRv
cidzIHJlcG9ydCBVUkwgdG8gdGhlIFhTU0F1ZGl0b3JEZWxlZ2F0ZSBvbiB0aGUgbWFpbiB0aHJl
YWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIx
NzkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSYXRo
ZXIgdGhhbiByZWx5aW5nIG9uIFhTU0luZm8gb2JqZWN0cyB0byBtb3ZlIHRoZSBYU1NBdWRpdG9y
J3MgcmVwb3J0CisgICAgICAgIFVSTCBpbnRvIHRoZSBYU1NBdWRpdG9yRGVsZWdhdGUgZm9yIHJl
cG9ydGluZywgd2Ugc2hvdWxkIGJlIGFibGUgdG8gZ3JhYgorICAgICAgICB0aGUgVVJMIGRpcmVj
dGx5IGZyb20gWFNTQXVkaXRvciBiZWZvcmUgaXQgbW92ZXMgb2ZmIHRoZSBtYWluIHRocmVhZCwK
KyAgICAgICAgYW5kIHN0b3JlIGl0IG9uIHRoZSBkZWxlZ2F0ZS4KKworICAgICAgICBUaGlzIHdp
bGwgZW5hYmxlIHVzIHRvIGRyb3AgdGhlIHJlcG9ydCBVUkwgcHJvcGVydGllcyBmcm9tIGJvdGgK
KyAgICAgICAgWFNTQXVkaXRvciBhbmQgWFNTSW5mby4gT2gsIGhhcHB5IGRheSEKKworICAgICAg
ICBObyBuZXcgdGVzdHMgKE9PUFMhKS4KKworICAgICAgICAqIGh0bWwvcGFyc2VyL0JhY2tncm91
bmRIVE1MUGFyc2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkJhY2tncm91bmRIVE1MUGFyc2Vy
OjpzZW5kVG9rZW5zVG9NYWluVGhyZWFkKToKKyAgICAgICAgICAgIFdlIG5vIGxvbmdlciBuZWVk
IHRvIGNoZWNrIHdoZXRoZXIgWFNTSW5mbyBvYmplY3RzIGFyZSB0aHJlYWQgc2FmZSwKKyAgICAg
ICAgICAgIGFzIHdlJ3ZlIGRyb3BwZWQgdGhlIG9ubHkgcHJvYmxlbWF0aWMgYml0LgorICAgICAg
ICAqIGh0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpIVE1MRG9jdW1lbnRQYXJzZXI6OnB1bXBUb2tlbml6ZXIpOgorICAgICAgICAoV2ViQ29yZTo6
SFRNTERvY3VtZW50UGFyc2VyOjpzdGFydEJhY2tncm91bmRQYXJzZXIpOgorICAgICAgICAqIGh0
bWwvcGFyc2VyL1hTU0F1ZGl0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6WFNTQXVkaXRvcjo6
aW5pdCk6CisgICAgICAgICAgICBXaGVuIGluaXRpYWxpemluZyB0aGUgWFNTQXVkaXRvciwgcGFz
cyBpbiBhbiBYU1NBdWRpdG9yRGVsZWdhdGUqCisgICAgICAgICAgICBhbmQgYXNzaWduIHRoZSBy
ZXBvcnQgVVJMIGRpcmVjdGx5IG9udG8gdGhhdCBvYmplY3QuCisgICAgICAgIChXZWJDb3JlOjpY
U1NBdWRpdG9yOjpmaWx0ZXJUb2tlbik6CisgICAgICAgICAgICBEcm9wIHRoZSByZXBvcnQgVVJM
IHBhcmFtZXRlciBmcm9tIFhTU0luZm8gb2JqZWN0cyB3ZSBjcmVhdGUgaW4gdGhlCisgICAgICAg
ICAgICBBdWRpdG9yLCBhcyB0aGV5J3JlIG5vdyBoYW5kbGVkIGRpcmVjdGx5IGZyb20gdGhlIGRl
bGVnYXRlLgorICAgICAgICAoV2ViQ29yZTo6WFNTQXVkaXRvcjo6aXNTYWZlVG9TZW5kVG9Bbm90
aGVyVGhyZWFkKToKKyAgICAgICAgICAgIERyb3AgdGhlIHJlcG9ydCBVUkwgcHJvcGVydHkgZnJv
bSBYU1NBdWRpdG9yJ3MgdGhyZWFkc2FmZW5lc3MgY2hlY2ssCisgICAgICAgICAgICBhcyBwcm9w
ZXJ0aWVzIHRoYXQgZG8gbm90IGV4aXN0IGFyZSBhdXRvbWF0aWNhbGx5IHRocmVhZC1zYWZlLgor
ICAgICAgICAqIGh0bWwvcGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpYU1NBdWRpdG9yRGVsZWdhdGU6OmRpZEJsb2NrU2NyaXB0KToKKyAgICAgICAgICAg
IFVzZSB0aGUgZGVsZWdhdGUncyBvd24gcmVwb3J0IFVSTCByYXRoZXIgdGhhbiB0aGUgWFNTSW5m
byBvYmplY3RzJy4KKyAgICAgICAgKiBodG1sL3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuaDoK
KyAgICAgICAgKFdlYkNvcmU6OlhTU0luZm86OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpY
U1NJbmZvOjpYU1NJbmZvKToKKyAgICAgICAgICAgIERyb3AgdGhlIHJlcG9ydCBVUkwgcHJvcGVy
dHkgZnJvbSBYU1NJbmZvLgorICAgICAgICAoV2ViQ29yZTo6WFNTQXVkaXRvckRlbGVnYXRlOjpz
ZXRSZXBvcnRVUkwpOgorICAgICAgICAoWFNTQXVkaXRvckRlbGVnYXRlKToKKyAgICAgICAgICAg
IFByb3ZpZGUgYSBwdWJsaWMgQVBJIGZvciBzZXR0aW5nIGEgZGVsZWdhdGUncyByZXBvcnQgVVJM
LgorCiAyMDEzLTAzLTEyICBNYXJqYSBIw7ZsdHTDpCAgPG1hcmphQGNocm9taXVtLm9yZz4KIAog
ICAgICAgICBbVjhdIEdldCByaWQgb2YgZnVuY3Rpb24tbGV2ZWwgc3RhdGljIEZ1bmN0aW9uVGVt
cGxhdGVzIGluIGdlbmVyYXRlZCBiaW5kaW5ncyBjb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3BhcnNlci9CYWNrZ3JvdW5kSFRNTFBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3BhcnNlci9CYWNrZ3JvdW5kSFRNTFBhcnNlci5jcHAKaW5kZXggMGI3NTIwZTQwZDNl
MzczOWMyMmNlM2I1MDJjM2ZjYTkzOTRkZmVlZi4uMTg4OThlMzgxMDY2YTMzZDA2YzVkMzRiNTli
M2U2ZDQ2ZWY0YzY5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvQmFj
a2dyb3VuZEhUTUxQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0Jh
Y2tncm91bmRIVE1MUGFyc2VyLmNwcApAQCAtNTMsMTIgKzUzLDYgQEAgc3RhdGljIHZvaWQgY2hl
Y2tUaGF0UHJlbG9hZHNBcmVTYWZlVG9TZW5kVG9Bbm90aGVyVGhyZWFkKGNvbnN0IFByZWxvYWRS
ZXF1ZXN0U3QKICAgICAgICAgQVNTRVJUKHByZWxvYWRzW2ldLT5pc1NhZmVUb1NlbmRUb0Fub3Ro
ZXJUaHJlYWQoKSk7CiB9CiAKLXN0YXRpYyB2b2lkIGNoZWNrVGhhdFhTU0luZm9zQXJlU2FmZVRv
U2VuZFRvQW5vdGhlclRocmVhZChjb25zdCBYU1NJbmZvU3RyZWFtJiB4c3NJbmZvcykKLXsKLSAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHhzc0luZm9zLnNpemUoKTsgKytpKQotICAgICAgICBB
U1NFUlQoeHNzSW5mb3NbaV0tPmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgpKTsKLX0KLQog
I2VuZGlmCiAKIHN0YXRpYyBjb25zdCBzaXplX3QgcGVuZGluZ1Rva2VuTGltaXQgPSAxMDAwOwpA
QCAtMTY3LDcgKzE2MSw2IEBAIHZvaWQgQmFja2dyb3VuZEhUTUxQYXJzZXI6OnNlbmRUb2tlbnNU
b01haW5UaHJlYWQoKQogI2lmbmRlZiBOREVCVUcKICAgICBjaGVja1RoYXRUb2tlbnNBcmVTYWZl
VG9TZW5kVG9Bbm90aGVyVGhyZWFkKG1fcGVuZGluZ1Rva2Vucy5nZXQoKSk7CiAgICAgY2hlY2tU
aGF0UHJlbG9hZHNBcmVTYWZlVG9TZW5kVG9Bbm90aGVyVGhyZWFkKG1fcGVuZGluZ1ByZWxvYWRz
KTsKLSAgICBjaGVja1RoYXRYU1NJbmZvc0FyZVNhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQobV9w
ZW5kaW5nWFNTSW5mb3MpOwogI2VuZGlmCiAKICAgICBPd25QdHI8SFRNTERvY3VtZW50UGFyc2Vy
OjpQYXJzZWRDaHVuaz4gY2h1bmsgPSBhZG9wdFB0cihuZXcgSFRNTERvY3VtZW50UGFyc2VyOjpQ
YXJzZWRDaHVuayk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1M
RG9jdW1lbnRQYXJzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3Vt
ZW50UGFyc2VyLmNwcAppbmRleCA5NjdkMWQ1NGQzM2IyMTMyYTc5NTA4NDgyYmUxYzY3YjNkMGMx
MWVmLi5mZTI3YTBkODE4ZjhiZmM1NTVjMzAwMmY0YWVlYThmZDAzYjUxMmJhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHAKQEAgLTUz
NCw3ICs1MzQsNyBAQCB2b2lkIEhUTUxEb2N1bWVudFBhcnNlcjo6cHVtcFRva2VuaXplcihTeW5j
aHJvbm91c01vZGUgbW9kZSkKICAgICAvLyBtdWNoIHdlIHBhcnNlZCBhcyBwYXJ0IG9mIGRpZFdy
aXRlSFRNTCBpbnN0ZWFkIG9mIHdpbGxXcml0ZUhUTUwuCiAgICAgSW5zcGVjdG9ySW5zdHJ1bWVu
dGF0aW9uQ29va2llIGNvb2tpZSA9IEluc3BlY3Rvckluc3RydW1lbnRhdGlvbjo6d2lsbFdyaXRl
SFRNTChkb2N1bWVudCgpLCBtX2lucHV0LmN1cnJlbnQoKS5jdXJyZW50TGluZSgpLnplcm9CYXNl
ZEludCgpKTsKIAotICAgIG1feHNzQXVkaXRvci5pbml0KGRvY3VtZW50KCkpOworICAgIG1feHNz
QXVkaXRvci5pbml0KGRvY3VtZW50KCksICZtX3hzc0F1ZGl0b3JEZWxlZ2F0ZSk7CiAKICAgICB3
aGlsZSAoY2FuVGFrZU5leHRUb2tlbihtb2RlLCBzZXNzaW9uKSAmJiAhc2Vzc2lvbi5uZWVkc1lp
ZWxkKSB7CiAgICAgICAgIGlmICghaXNQYXJzaW5nRnJhZ21lbnQoKSkKQEAgLTY3NSw3ICs2NzUs
NyBAQCB2b2lkIEhUTUxEb2N1bWVudFBhcnNlcjo6c3RhcnRCYWNrZ3JvdW5kUGFyc2VyKCkKICAg
ICBjb25maWctPm9wdGlvbnMgPSBtX29wdGlvbnM7CiAgICAgY29uZmlnLT5wYXJzZXIgPSBtX3dl
YWtGYWN0b3J5LmNyZWF0ZVdlYWtQdHIoKTsKICAgICBjb25maWctPnhzc0F1ZGl0b3IgPSBhZG9w
dFB0cihuZXcgWFNTQXVkaXRvcik7Ci0gICAgY29uZmlnLT54c3NBdWRpdG9yLT5pbml0KGRvY3Vt
ZW50KCkpOworICAgIGNvbmZpZy0+eHNzQXVkaXRvci0+aW5pdChkb2N1bWVudCgpLCAmbV94c3NB
dWRpdG9yRGVsZWdhdGUpOwogICAgIGNvbmZpZy0+cHJlbG9hZFNjYW5uZXIgPSBhZG9wdFB0cihu
ZXcgVG9rZW5QcmVsb2FkU2Nhbm5lcihkb2N1bWVudCgpLT51cmwoKS5jb3B5KCkpKTsKIAogICAg
IEFTU0VSVChjb25maWctPnhzc0F1ZGl0b3ItPmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3IuY3Bw
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRvci5jcHAKaW5kZXggNzk0YTcy
YTc2MDU1NDI0NmRhZjUzZDA5YTliNGEzNTQwNWIyZTU2My4uZWFkNTgwZmM2YjJjNWE4Y2I4ZmY2
ZDE0MGJhM2I5YmE4NjVjMjM2ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJz
ZXIvWFNTQXVkaXRvci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVk
aXRvci5jcHAKQEAgLTUxLDYgKzUxLDcgQEAKICNpbmNsdWRlICJUZXh0RW5jb2RpbmcuaCIKICNp
bmNsdWRlICJUZXh0UmVzb3VyY2VEZWNvZGVyLmgiCiAjaW5jbHVkZSAiWExpbmtOYW1lcy5oIgor
I2luY2x1ZGUgIlhTU0F1ZGl0b3JEZWxlZ2F0ZS5oIgogCiAjaWYgRU5BQkxFKFNWRykKICNpbmNs
dWRlICJTVkdOYW1lcy5oIgpAQCAtMjI2LDcgKzIyNyw3IEBAIFhTU0F1ZGl0b3I6OlhTU0F1ZGl0
b3IoKQogICAgIC8vIHdlIHdhbnQgdG8gcmVmZXJlbmNlIG1pZ2h0IG5vdCBhbGwgaGF2ZSBiZWVu
IGNvbnN0cnVjdGVkIHlldC4KIH0KIAotdm9pZCBYU1NBdWRpdG9yOjppbml0KERvY3VtZW50KiBk
b2N1bWVudCkKK3ZvaWQgWFNTQXVkaXRvcjo6aW5pdChEb2N1bWVudCogZG9jdW1lbnQsIFhTU0F1
ZGl0b3JEZWxlZ2F0ZSogYXVkaXRvckRlbGVnYXRlKQogewogICAgIGNvbnN0IHNpemVfdCBtaW5p
dW1MZW5ndGhGb3JTdWZmaXhUcmVlID0gNTEyOyAvLyBGSVhNRTogVHVuZSB0aGlzIHBhcmFtZXRl
ci4KICAgICBjb25zdCBpbnQgc3VmZml4VHJlZURlcHRoID0gNTsKQEAgLTI5OCw3ICsyOTksOSBA
QCB2b2lkIFhTU0F1ZGl0b3I6OmluaXQoRG9jdW1lbnQqIGRvY3VtZW50KQogICAgICAgICBtX2Rp
ZFNlbmRWYWxpZENTUEhlYWRlciA9IGNzcEhlYWRlciAhPSBDb250ZW50U2VjdXJpdHlQb2xpY3k6
OlJlZmxlY3RlZFhTU1Vuc2V0ICYmIGNzcEhlYWRlciAhPSBDb250ZW50U2VjdXJpdHlQb2xpY3k6
OlJlZmxlY3RlZFhTU0ludmFsaWQ7CiAKICAgICAgICAgbV94c3NQcm90ZWN0aW9uID0gY29tYmlu
ZVhTU1Byb3RlY3Rpb25IZWFkZXJBbmRDU1AoeHNzUHJvdGVjdGlvbkhlYWRlciwgY3NwSGVhZGVy
KTsKLSAgICAgICAgbV9yZXBvcnRVUkwgPSB4c3NQcm90ZWN0aW9uUmVwb3J0VVJMOyAvLyBGSVhN
RTogQ29tYmluZSB0aGUgdHdvIHJlcG9ydCBVUkxzIGluIHNvbWUgcmVhc29uYWJsZSB3YXkuCisg
ICAgICAgIC8vIEZJWE1FOiBDb21iaW5lIHRoZSB0d28gcmVwb3J0IFVSTHMgaW4gc29tZSByZWFz
b25hYmxlIHdheS4KKyAgICAgICAgaWYgKGF1ZGl0b3JEZWxlZ2F0ZSkKKyAgICAgICAgICAgIGF1
ZGl0b3JEZWxlZ2F0ZS0+c2V0UmVwb3J0VVJMKHhzc1Byb3RlY3Rpb25SZXBvcnRVUkwuY29weSgp
KTsKICAgICAgICAgRm9ybURhdGEqIGh0dHBCb2R5ID0gZG9jdW1lbnRMb2FkZXItPm9yaWdpbmFs
UmVxdWVzdCgpLmh0dHBCb2R5KCk7CiAgICAgICAgIGlmIChodHRwQm9keSAmJiAhaHR0cEJvZHkt
PmlzRW1wdHkoKSkgewogICAgICAgICAgICAgaHR0cEJvZHlBc1N0cmluZyA9IGh0dHBCb2R5LT5m
bGF0dGVuVG9TdHJpbmcoKTsKQEAgLTMzNiw4ICszMzksNyBAQCBQYXNzT3duUHRyPFhTU0luZm8+
IFhTU0F1ZGl0b3I6OmZpbHRlclRva2VuKGNvbnN0IEZpbHRlclRva2VuUmVxdWVzdCYgcmVxdWVz
dCkKIAogICAgIGlmIChkaWRCbG9ja1NjcmlwdCkgewogICAgICAgICBib29sIGRpZEJsb2NrRW50
aXJlUGFnZSA9IChtX3hzc1Byb3RlY3Rpb24gPT0gQ29udGVudFNlY3VyaXR5UG9saWN5OjpCbG9j
a1JlZmxlY3RlZFhTUyk7Ci0gICAgICAgIE93blB0cjxYU1NJbmZvPiB4c3NJbmZvID0gWFNTSW5m
bzo6Y3JlYXRlKG1fcmVwb3J0VVJMLCBkaWRCbG9ja0VudGlyZVBhZ2UsIG1fZGlkU2VuZFZhbGlk
WFNTUHJvdGVjdGlvbkhlYWRlciwgbV9kaWRTZW5kVmFsaWRDU1BIZWFkZXIpOwotICAgICAgICBt
X3JlcG9ydFVSTCA9IEtVUkwoKTsKKyAgICAgICAgT3duUHRyPFhTU0luZm8+IHhzc0luZm8gPSBY
U1NJbmZvOjpjcmVhdGUoZGlkQmxvY2tFbnRpcmVQYWdlLCBtX2RpZFNlbmRWYWxpZFhTU1Byb3Rl
Y3Rpb25IZWFkZXIsIG1fZGlkU2VuZFZhbGlkQ1NQSGVhZGVyKTsKICAgICAgICAgcmV0dXJuIHhz
c0luZm8ucmVsZWFzZSgpOwogICAgIH0KICAgICByZXR1cm4gbnVsbHB0cjsKQEAgLTcyOCw4ICs3
MzAsNyBAQCBib29sIFhTU0F1ZGl0b3I6OmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgpIGNv
bnN0CiAgICAgcmV0dXJuIG1fZG9jdW1lbnRVUkwuaXNTYWZlVG9TZW5kVG9Bbm90aGVyVGhyZWFk
KCkKICAgICAgICAgJiYgbV9kZWNvZGVkVVJMLmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgp
CiAgICAgICAgICYmIG1fZGVjb2RlZEhUVFBCb2R5LmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVh
ZCgpCi0gICAgICAgICYmIG1fY2FjaGVkRGVjb2RlZFNuaXBwZXQuaXNTYWZlVG9TZW5kVG9Bbm90
aGVyVGhyZWFkKCkKLSAgICAgICAgJiYgbV9yZXBvcnRVUkwuaXNTYWZlVG9TZW5kVG9Bbm90aGVy
VGhyZWFkKCk7CisgICAgICAgICYmIG1fY2FjaGVkRGVjb2RlZFNuaXBwZXQuaXNTYWZlVG9TZW5k
VG9Bbm90aGVyVGhyZWFkKCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3IuaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3IuaAppbmRleCA0YjAxY2Q3MzQ1OTY4YTE1MjU0ZDFm
OTQ3YzY4ZmFmMTFiZjBlYzUyLi44MmJlMzQ2YzkwZWI3ZWNkMzdmMThhNjA1Yjk5ZGQxMjY4NGQ4
YTliIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRvci5oCkBAIC0zOSw2ICsz
OSw3IEBAIGNsYXNzIERvY3VtZW50OwogY2xhc3MgSFRNTERvY3VtZW50UGFyc2VyOwogY2xhc3Mg
SFRNTFNvdXJjZVRyYWNrZXI7CiBjbGFzcyBYU1NJbmZvOworY2xhc3MgWFNTQXVkaXRvckRlbGVn
YXRlOwogCiBzdHJ1Y3QgRmlsdGVyVG9rZW5SZXF1ZXN0IHsKICAgICBGaWx0ZXJUb2tlblJlcXVl
c3QoSFRNTFRva2VuJiB0b2tlbiwgSFRNTFNvdXJjZVRyYWNrZXImIHNvdXJjZVRyYWNrZXIsIGJv
b2wgc2hvdWxkQWxsb3dDREFUQSkKQEAgLTU3LDcgKzU4LDcgQEAgY2xhc3MgWFNTQXVkaXRvciB7
CiBwdWJsaWM6CiAgICAgWFNTQXVkaXRvcigpOwogCi0gICAgdm9pZCBpbml0KERvY3VtZW50Kik7
CisgICAgdm9pZCBpbml0KERvY3VtZW50KiwgWFNTQXVkaXRvckRlbGVnYXRlKik7CiAgICAgUGFz
c093blB0cjxYU1NJbmZvPiBmaWx0ZXJUb2tlbihjb25zdCBGaWx0ZXJUb2tlblJlcXVlc3QmKTsK
ICAgICBib29sIGlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgpIGNvbnN0OwogCkBAIC0xMTUs
NyArMTE2LDYgQEAgcHJpdmF0ZToKICAgICBTdGF0ZSBtX3N0YXRlOwogICAgIFN0cmluZyBtX2Nh
Y2hlZERlY29kZWRTbmlwcGV0OwogICAgIHVuc2lnbmVkIG1fc2NyaXB0VGFnTmVzdGluZ0xldmVs
OwotICAgIEtVUkwgbV9yZXBvcnRVUkw7CiAgICAgVGV4dEVuY29kaW5nIG1fZW5jb2Rpbmc7CiB9
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yRGVs
ZWdhdGUuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRvckRlbGVnYXRl
LmNwcAppbmRleCAwNDFmM2ZjNDYzZWVlNWJmOGE1OGMxMThhNjRiZmI4YmVhNTMyMmE0Li5kNDg1
ZjVmNjA2NjMwNmFjZWJhZmFmODExMDQyNmI2MDRhZTY3ZDQ0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5jcHAKQEAgLTQxLDExICs0MSw2
IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotYm9vbCBYU1NJbmZvOjppc1NhZmVUb1NlbmRU
b0Fub3RoZXJUaHJlYWQoKSBjb25zdAotewotICAgIHJldHVybiBtX3JlcG9ydFVSTC5pc1NhZmVU
b1NlbmRUb0Fub3RoZXJUaHJlYWQoKTsKLX0KLQogWFNTQXVkaXRvckRlbGVnYXRlOjpYU1NBdWRp
dG9yRGVsZWdhdGUoRG9jdW1lbnQqIGRvY3VtZW50KQogICAgIDogbV9kb2N1bWVudChkb2N1bWVu
dCkKICAgICAsIG1fZGlkTm90aWZ5Q2xpZW50KGZhbHNlKQpAQCAtOTEsNyArODYsNyBAQCB2b2lk
IFhTU0F1ZGl0b3JEZWxlZ2F0ZTo6ZGlkQmxvY2tTY3JpcHQoY29uc3QgWFNTSW5mbyYgeHNzSW5m
bykKICAgICAgICAgbV9kaWROb3RpZnlDbGllbnQgPSB0cnVlOwogICAgIH0KIAotICAgIGlmICgh
eHNzSW5mby5tX3JlcG9ydFVSTC5pc0VtcHR5KCkpIHsKKyAgICBpZiAoIW1fcmVwb3J0VVJMLmlz
RW1wdHkoKSkgewogICAgICAgICBSZWZQdHI8SW5zcGVjdG9yT2JqZWN0PiByZXBvcnREZXRhaWxz
ID0gSW5zcGVjdG9yT2JqZWN0OjpjcmVhdGUoKTsKICAgICAgICAgcmVwb3J0RGV0YWlscy0+c2V0
U3RyaW5nKCJyZXF1ZXN0LXVybCIsIG1fZG9jdW1lbnQtPnVybCgpLnN0cmluZygpKTsKIApAQCAt
MTA2LDcgKzEwMSw3IEBAIHZvaWQgWFNTQXVkaXRvckRlbGVnYXRlOjpkaWRCbG9ja1NjcmlwdChj
b25zdCBYU1NJbmZvJiB4c3NJbmZvKQogICAgICAgICByZXBvcnRPYmplY3QtPnNldE9iamVjdCgi
eHNzLXJlcG9ydCIsIHJlcG9ydERldGFpbHMucmVsZWFzZSgpKTsKIAogICAgICAgICBSZWZQdHI8
Rm9ybURhdGE+IHJlcG9ydCA9IEZvcm1EYXRhOjpjcmVhdGUocmVwb3J0T2JqZWN0LT50b0pTT05T
dHJpbmcoKS51dGY4KCkuZGF0YSgpKTsKLSAgICAgICAgUGluZ0xvYWRlcjo6c2VuZFZpb2xhdGlv
blJlcG9ydChtX2RvY3VtZW50LT5mcmFtZSgpLCB4c3NJbmZvLm1fcmVwb3J0VVJMLCByZXBvcnQp
OworICAgICAgICBQaW5nTG9hZGVyOjpzZW5kVmlvbGF0aW9uUmVwb3J0KG1fZG9jdW1lbnQtPmZy
YW1lKCksIG1fcmVwb3J0VVJMLCByZXBvcnQpOwogICAgIH0KIAogICAgIGlmICh4c3NJbmZvLm1f
ZGlkQmxvY2tFbnRpcmVQYWdlKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJz
ZXIvWFNTQXVkaXRvckRlbGVnYXRlLmggYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NB
dWRpdG9yRGVsZWdhdGUuaAppbmRleCBjNDUzYjBjNmFhYjJhZTNjNzRlMDA0Y2E4YmM5ZTczZGFh
ODJkYzEyLi5kODhjNDZmNTc4OTEyMzc5MjcyNjk3NGM4MDQ2NDI0MzU0YzlhYjY1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuaApAQCAtMzks
MjMgKzM5LDE5IEBAIGNsYXNzIERvY3VtZW50OwogCiBjbGFzcyBYU1NJbmZvIHsKIHB1YmxpYzoK
LSAgICBzdGF0aWMgUGFzc093blB0cjxYU1NJbmZvPiBjcmVhdGUoY29uc3QgS1VSTCYgcmVwb3J0
VVJMLCBib29sIGRpZEJsb2NrRW50aXJlUGFnZSwgYm9vbCBkaWRTZW5kWFNTUHJvdGVjdGlvbkhl
YWRlciwgYm9vbCBkaWRTZW5kQ1NQSGVhZGVyKQorICAgIHN0YXRpYyBQYXNzT3duUHRyPFhTU0lu
Zm8+IGNyZWF0ZShib29sIGRpZEJsb2NrRW50aXJlUGFnZSwgYm9vbCBkaWRTZW5kWFNTUHJvdGVj
dGlvbkhlYWRlciwgYm9vbCBkaWRTZW5kQ1NQSGVhZGVyKQogICAgIHsKLSAgICAgICAgcmV0dXJu
IGFkb3B0UHRyKG5ldyBYU1NJbmZvKHJlcG9ydFVSTCwgZGlkQmxvY2tFbnRpcmVQYWdlLCBkaWRT
ZW5kWFNTUHJvdGVjdGlvbkhlYWRlciwgZGlkU2VuZENTUEhlYWRlcikpOworICAgICAgICByZXR1
cm4gYWRvcHRQdHIobmV3IFhTU0luZm8oZGlkQmxvY2tFbnRpcmVQYWdlLCBkaWRTZW5kWFNTUHJv
dGVjdGlvbkhlYWRlciwgZGlkU2VuZENTUEhlYWRlcikpOwogICAgIH0KIAotICAgIGJvb2wgaXNT
YWZlVG9TZW5kVG9Bbm90aGVyVGhyZWFkKCkgY29uc3Q7Ci0KLSAgICBLVVJMIG1fcmVwb3J0VVJM
OwogICAgIGJvb2wgbV9kaWRCbG9ja0VudGlyZVBhZ2U7CiAgICAgYm9vbCBtX2RpZFNlbmRYU1NQ
cm90ZWN0aW9uSGVhZGVyOwogICAgIGJvb2wgbV9kaWRTZW5kQ1NQSGVhZGVyOwogICAgIFRleHRQ
b3NpdGlvbiBtX3RleHRQb3NpdGlvbjsKIAogcHJpdmF0ZToKLSAgICBYU1NJbmZvKGNvbnN0IEtV
UkwmIHJlcG9ydFVSTCwgYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UsIGJvb2wgZGlkU2VuZFhTU1By
b3RlY3Rpb25IZWFkZXIsIGJvb2wgZGlkU2VuZENTUEhlYWRlcikKLSAgICAgICAgOiBtX3JlcG9y
dFVSTChyZXBvcnRVUkwpCi0gICAgICAgICwgbV9kaWRCbG9ja0VudGlyZVBhZ2UoZGlkQmxvY2tF
bnRpcmVQYWdlKQorICAgIFhTU0luZm8oYm9vbCBkaWRCbG9ja0VudGlyZVBhZ2UsIGJvb2wgZGlk
U2VuZFhTU1Byb3RlY3Rpb25IZWFkZXIsIGJvb2wgZGlkU2VuZENTUEhlYWRlcikKKyAgICAgICAg
OiBtX2RpZEJsb2NrRW50aXJlUGFnZShkaWRCbG9ja0VudGlyZVBhZ2UpCiAgICAgICAgICwgbV9k
aWRTZW5kWFNTUHJvdGVjdGlvbkhlYWRlcihkaWRTZW5kWFNTUHJvdGVjdGlvbkhlYWRlcikKICAg
ICAgICAgLCBtX2RpZFNlbmRDU1BIZWFkZXIoZGlkU2VuZENTUEhlYWRlcikKICAgICB7IH0KQEAg
LTY3LDEwICs2MywxMiBAQCBwdWJsaWM6CiAgICAgZXhwbGljaXQgWFNTQXVkaXRvckRlbGVnYXRl
KERvY3VtZW50Kik7CiAKICAgICB2b2lkIGRpZEJsb2NrU2NyaXB0KGNvbnN0IFhTU0luZm8mKTsK
KyAgICB2b2lkIHNldFJlcG9ydFVSTChjb25zdCBLVVJMJiB1cmwpIHsgbV9yZXBvcnRVUkwgPSB1
cmw7IH0KIAogcHJpdmF0ZToKICAgICBEb2N1bWVudCogbV9kb2N1bWVudDsKICAgICBib29sIG1f
ZGlkTm90aWZ5Q2xpZW50OworICAgIEtVUkwgbV9yZXBvcnRVUkw7CiB9OwogCiB0eXBlZGVmIFZl
Y3RvcjxPd25QdHI8WFNTSW5mbz4gPiBYU1NJbmZvU3RyZWFtOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>192881</attachid>
            <date>2013-03-13 01:43:38 -0700</date>
            <delta_ts>2013-03-13 02:34:38 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-112179-20130313093934.patch</filename>
            <type>text/plain</type>
            <size>12085</size>
            <attacher name="Mike West">mkwst</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ1NTExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZTdhODVlYjM5MDBmYmE0
YjY2NGQ1NjM2YTFlZTcxMzFkMTEwMzU5Zi4uYzhiOGM0NDQ0MGRiNzIyN2NiYzdmODU1ZjNjMWJh
N2JkOTMzZmIxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ2IEBACisyMDEzLTAzLTEzICBNaWtl
IFdlc3QgIDxta3dzdEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUGFzcyB0aGUgWFNTQXVkaXRv
cidzIHJlcG9ydCBVUkwgdG8gdGhlIFhTU0F1ZGl0b3JEZWxlZ2F0ZSBvbiB0aGUgbWFpbiB0aHJl
YWQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTIx
NzkKKworICAgICAgICBSZXZpZXdlZCBieSBBZGFtIEJhcnRoLgorCisgICAgICAgIFJhdGhlciB0
aGFuIHJlbHlpbmcgb24gWFNTSW5mbyBvYmplY3RzIHRvIG1vdmUgdGhlIFhTU0F1ZGl0b3IncyBy
ZXBvcnQKKyAgICAgICAgVVJMIGludG8gdGhlIFhTU0F1ZGl0b3JEZWxlZ2F0ZSBmb3IgcmVwb3J0
aW5nLCB3ZSBzaG91bGQgYmUgYWJsZSB0byBncmFiCisgICAgICAgIHRoZSBVUkwgZGlyZWN0bHkg
ZnJvbSBYU1NBdWRpdG9yIGJlZm9yZSBpdCBtb3ZlcyBvZmYgdGhlIG1haW4gdGhyZWFkLAorICAg
ICAgICBhbmQgc3RvcmUgaXQgb24gdGhlIGRlbGVnYXRlLgorCisgICAgICAgIFRoaXMgd2lsbCBl
bmFibGUgdXMgdG8gZHJvcCB0aGUgcmVwb3J0IFVSTCBwcm9wZXJ0aWVzIGZyb20gYm90aAorICAg
ICAgICBYU1NBdWRpdG9yIGFuZCBYU1NJbmZvLiBPaCwgaGFwcHkgZGF5IQorCisgICAgICAgICog
aHRtbC9wYXJzZXIvQmFja2dyb3VuZEhUTUxQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6
QmFja2dyb3VuZEhUTUxQYXJzZXI6OnNlbmRUb2tlbnNUb01haW5UaHJlYWQpOgorICAgICAgICAg
ICAgV2Ugbm8gbG9uZ2VyIG5lZWQgdG8gY2hlY2sgd2hldGhlciBYU1NJbmZvIG9iamVjdHMgYXJl
IHRocmVhZCBzYWZlLAorICAgICAgICAgICAgYXMgd2UndmUgZHJvcHBlZCB0aGUgb25seSBwcm9i
bGVtYXRpYyBiaXQuCisgICAgICAgICogaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFyc2VyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxEb2N1bWVudFBhcnNlcjo6cHVtcFRva2VuaXplcik6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MRG9jdW1lbnRQYXJzZXI6OnN0YXJ0QmFja2dyb3VuZFBh
cnNlcik6CisgICAgICAgICogaHRtbC9wYXJzZXIvWFNTQXVkaXRvci5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpYU1NBdWRpdG9yOjppbml0KToKKyAgICAgICAgICAgIFdoZW4gaW5pdGlhbGl6aW5n
IHRoZSBYU1NBdWRpdG9yLCBwYXNzIGluIGFuIFhTU0F1ZGl0b3JEZWxlZ2F0ZSoKKyAgICAgICAg
ICAgIGFuZCBhc3NpZ24gdGhlIHJlcG9ydCBVUkwgZGlyZWN0bHkgb250byB0aGF0IG9iamVjdC4K
KyAgICAgICAgKFdlYkNvcmU6OlhTU0F1ZGl0b3I6OmZpbHRlclRva2VuKToKKyAgICAgICAgICAg
IERyb3AgdGhlIHJlcG9ydCBVUkwgcGFyYW1ldGVyIGZyb20gWFNTSW5mbyBvYmplY3RzIHdlIGNy
ZWF0ZSBpbiB0aGUKKyAgICAgICAgICAgIEF1ZGl0b3IsIGFzIHRoZXkncmUgbm93IGhhbmRsZWQg
ZGlyZWN0bHkgZnJvbSB0aGUgZGVsZWdhdGUuCisgICAgICAgIChXZWJDb3JlOjpYU1NBdWRpdG9y
Ojppc1NhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQpOgorICAgICAgICAgICAgRHJvcCB0aGUgcmVw
b3J0IFVSTCBwcm9wZXJ0eSBmcm9tIFhTU0F1ZGl0b3IncyB0aHJlYWRzYWZlbmVzcyBjaGVjaywK
KyAgICAgICAgICAgIGFzIHByb3BlcnRpZXMgdGhhdCBkbyBub3QgZXhpc3QgYXJlIGF1dG9tYXRp
Y2FsbHkgdGhyZWFkLXNhZmUuCisgICAgICAgICogaHRtbC9wYXJzZXIvWFNTQXVkaXRvckRlbGVn
YXRlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlhTU0F1ZGl0b3JEZWxlZ2F0ZTo6ZGlkQmxvY2tT
Y3JpcHQpOgorICAgICAgICAgICAgVXNlIHRoZSBkZWxlZ2F0ZSdzIG93biByZXBvcnQgVVJMIHJh
dGhlciB0aGFuIHRoZSBYU1NJbmZvIG9iamVjdHMnLgorICAgICAgICAqIGh0bWwvcGFyc2VyL1hT
U0F1ZGl0b3JEZWxlZ2F0ZS5oOgorICAgICAgICAoV2ViQ29yZTo6WFNTSW5mbzo6Y3JlYXRlKToK
KyAgICAgICAgKFdlYkNvcmU6OlhTU0luZm86OlhTU0luZm8pOgorICAgICAgICAgICAgRHJvcCB0
aGUgcmVwb3J0IFVSTCBwcm9wZXJ0eSBmcm9tIFhTU0luZm8uCisgICAgICAgIChXZWJDb3JlOjpY
U1NBdWRpdG9yRGVsZWdhdGU6OnNldFJlcG9ydFVSTCk6CisgICAgICAgIChYU1NBdWRpdG9yRGVs
ZWdhdGUpOgorICAgICAgICAgICAgUHJvdmlkZSBhIHB1YmxpYyBBUEkgZm9yIHNldHRpbmcgYSBk
ZWxlZ2F0ZSdzIHJlcG9ydCBVUkwuCisKIDIwMTMtMDMtMTIgIE1hcmphIEjDtmx0dMOkICA8bWFy
amFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtWOF0gR2V0IHJpZCBvZiBmdW5jdGlvbi1sZXZl
bCBzdGF0aWMgRnVuY3Rpb25UZW1wbGF0ZXMgaW4gZ2VuZXJhdGVkIGJpbmRpbmdzIGNvZGUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0JhY2tncm91bmRIVE1MUGFyc2Vy
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0JhY2tncm91bmRIVE1MUGFyc2VyLmNw
cAppbmRleCAwYjc1MjBlNDBkM2UzNzM5YzIyY2UzYjUwMmMzZmNhOTM5NGRmZWVmLi4xODg5OGUz
ODEwNjZhMzNkMDZjNWQzNGI1OWIzZTZkNDZlZjRjNjk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3BhcnNlci9CYWNrZ3JvdW5kSFRNTFBhcnNlci5jcHAKKysrIGIvU291cmNlL1dl
YkNvcmUvaHRtbC9wYXJzZXIvQmFja2dyb3VuZEhUTUxQYXJzZXIuY3BwCkBAIC01MywxMiArNTMs
NiBAQCBzdGF0aWMgdm9pZCBjaGVja1RoYXRQcmVsb2Fkc0FyZVNhZmVUb1NlbmRUb0Fub3RoZXJU
aHJlYWQoY29uc3QgUHJlbG9hZFJlcXVlc3RTdAogICAgICAgICBBU1NFUlQocHJlbG9hZHNbaV0t
PmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgpKTsKIH0KIAotc3RhdGljIHZvaWQgY2hlY2tU
aGF0WFNTSW5mb3NBcmVTYWZlVG9TZW5kVG9Bbm90aGVyVGhyZWFkKGNvbnN0IFhTU0luZm9TdHJl
YW0mIHhzc0luZm9zKQotewotICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgeHNzSW5mb3Muc2l6
ZSgpOyArK2kpCi0gICAgICAgIEFTU0VSVCh4c3NJbmZvc1tpXS0+aXNTYWZlVG9TZW5kVG9Bbm90
aGVyVGhyZWFkKCkpOwotfQotCiAjZW5kaWYKIAogc3RhdGljIGNvbnN0IHNpemVfdCBwZW5kaW5n
VG9rZW5MaW1pdCA9IDEwMDA7CkBAIC0xNjcsNyArMTYxLDYgQEAgdm9pZCBCYWNrZ3JvdW5kSFRN
TFBhcnNlcjo6c2VuZFRva2Vuc1RvTWFpblRocmVhZCgpCiAjaWZuZGVmIE5ERUJVRwogICAgIGNo
ZWNrVGhhdFRva2Vuc0FyZVNhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQobV9wZW5kaW5nVG9rZW5z
LmdldCgpKTsKICAgICBjaGVja1RoYXRQcmVsb2Fkc0FyZVNhZmVUb1NlbmRUb0Fub3RoZXJUaHJl
YWQobV9wZW5kaW5nUHJlbG9hZHMpOwotICAgIGNoZWNrVGhhdFhTU0luZm9zQXJlU2FmZVRvU2Vu
ZFRvQW5vdGhlclRocmVhZChtX3BlbmRpbmdYU1NJbmZvcyk7CiAjZW5kaWYKIAogICAgIE93blB0
cjxIVE1MRG9jdW1lbnRQYXJzZXI6OlBhcnNlZENodW5rPiBjaHVuayA9IGFkb3B0UHRyKG5ldyBI
VE1MRG9jdW1lbnRQYXJzZXI6OlBhcnNlZENodW5rKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL3BhcnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuY3BwCmluZGV4IDk2N2QxZDU0ZDMzYjIxMzJh
Nzk1MDg0ODJiZTFjNjdiM2QwYzExZWYuLmZlMjdhMGQ4MThmOGJmYzU1NWMzMDAyZjRhZWVhOGZk
MDNiNTEyYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1
bWVudFBhcnNlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3Vt
ZW50UGFyc2VyLmNwcApAQCAtNTM0LDcgKzUzNCw3IEBAIHZvaWQgSFRNTERvY3VtZW50UGFyc2Vy
OjpwdW1wVG9rZW5pemVyKFN5bmNocm9ub3VzTW9kZSBtb2RlKQogICAgIC8vIG11Y2ggd2UgcGFy
c2VkIGFzIHBhcnQgb2YgZGlkV3JpdGVIVE1MIGluc3RlYWQgb2Ygd2lsbFdyaXRlSFRNTC4KICAg
ICBJbnNwZWN0b3JJbnN0cnVtZW50YXRpb25Db29raWUgY29va2llID0gSW5zcGVjdG9ySW5zdHJ1
bWVudGF0aW9uOjp3aWxsV3JpdGVIVE1MKGRvY3VtZW50KCksIG1faW5wdXQuY3VycmVudCgpLmN1
cnJlbnRMaW5lKCkuemVyb0Jhc2VkSW50KCkpOwogCi0gICAgbV94c3NBdWRpdG9yLmluaXQoZG9j
dW1lbnQoKSk7CisgICAgbV94c3NBdWRpdG9yLmluaXQoZG9jdW1lbnQoKSwgJm1feHNzQXVkaXRv
ckRlbGVnYXRlKTsKIAogICAgIHdoaWxlIChjYW5UYWtlTmV4dFRva2VuKG1vZGUsIHNlc3Npb24p
ICYmICFzZXNzaW9uLm5lZWRzWWllbGQpIHsKICAgICAgICAgaWYgKCFpc1BhcnNpbmdGcmFnbWVu
dCgpKQpAQCAtNjc1LDcgKzY3NSw3IEBAIHZvaWQgSFRNTERvY3VtZW50UGFyc2VyOjpzdGFydEJh
Y2tncm91bmRQYXJzZXIoKQogICAgIGNvbmZpZy0+b3B0aW9ucyA9IG1fb3B0aW9uczsKICAgICBj
b25maWctPnBhcnNlciA9IG1fd2Vha0ZhY3RvcnkuY3JlYXRlV2Vha1B0cigpOwogICAgIGNvbmZp
Zy0+eHNzQXVkaXRvciA9IGFkb3B0UHRyKG5ldyBYU1NBdWRpdG9yKTsKLSAgICBjb25maWctPnhz
c0F1ZGl0b3ItPmluaXQoZG9jdW1lbnQoKSk7CisgICAgY29uZmlnLT54c3NBdWRpdG9yLT5pbml0
KGRvY3VtZW50KCksICZtX3hzc0F1ZGl0b3JEZWxlZ2F0ZSk7CiAgICAgY29uZmlnLT5wcmVsb2Fk
U2Nhbm5lciA9IGFkb3B0UHRyKG5ldyBUb2tlblByZWxvYWRTY2FubmVyKGRvY3VtZW50KCktPnVy
bCgpLmNvcHkoKSkpOwogCiAgICAgQVNTRVJUKGNvbmZpZy0+eHNzQXVkaXRvci0+aXNTYWZlVG9T
ZW5kVG9Bbm90aGVyVGhyZWFkKCkpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9w
YXJzZXIvWFNTQXVkaXRvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRp
dG9yLmNwcAppbmRleCA3OTRhNzJhNzYwNTU0MjQ2ZGFmNTNkMDlhOWI0YTM1NDA1YjJlNTYzLi5l
YWQ1ODBmYzZiMmM1YThjYjhmZjZkMTQwYmEzYjliYTg2NWMyMzZlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yLmNwcApAQCAtNTEsNiArNTEsNyBAQAogI2luY2x1ZGUg
IlRleHRFbmNvZGluZy5oIgogI2luY2x1ZGUgIlRleHRSZXNvdXJjZURlY29kZXIuaCIKICNpbmNs
dWRlICJYTGlua05hbWVzLmgiCisjaW5jbHVkZSAiWFNTQXVkaXRvckRlbGVnYXRlLmgiCiAKICNp
ZiBFTkFCTEUoU1ZHKQogI2luY2x1ZGUgIlNWR05hbWVzLmgiCkBAIC0yMjYsNyArMjI3LDcgQEAg
WFNTQXVkaXRvcjo6WFNTQXVkaXRvcigpCiAgICAgLy8gd2Ugd2FudCB0byByZWZlcmVuY2UgbWln
aHQgbm90IGFsbCBoYXZlIGJlZW4gY29uc3RydWN0ZWQgeWV0LgogfQogCi12b2lkIFhTU0F1ZGl0
b3I6OmluaXQoRG9jdW1lbnQqIGRvY3VtZW50KQordm9pZCBYU1NBdWRpdG9yOjppbml0KERvY3Vt
ZW50KiBkb2N1bWVudCwgWFNTQXVkaXRvckRlbGVnYXRlKiBhdWRpdG9yRGVsZWdhdGUpCiB7CiAg
ICAgY29uc3Qgc2l6ZV90IG1pbml1bUxlbmd0aEZvclN1ZmZpeFRyZWUgPSA1MTI7IC8vIEZJWE1F
OiBUdW5lIHRoaXMgcGFyYW1ldGVyLgogICAgIGNvbnN0IGludCBzdWZmaXhUcmVlRGVwdGggPSA1
OwpAQCAtMjk4LDcgKzI5OSw5IEBAIHZvaWQgWFNTQXVkaXRvcjo6aW5pdChEb2N1bWVudCogZG9j
dW1lbnQpCiAgICAgICAgIG1fZGlkU2VuZFZhbGlkQ1NQSGVhZGVyID0gY3NwSGVhZGVyICE9IENv
bnRlbnRTZWN1cml0eVBvbGljeTo6UmVmbGVjdGVkWFNTVW5zZXQgJiYgY3NwSGVhZGVyICE9IENv
bnRlbnRTZWN1cml0eVBvbGljeTo6UmVmbGVjdGVkWFNTSW52YWxpZDsKIAogICAgICAgICBtX3hz
c1Byb3RlY3Rpb24gPSBjb21iaW5lWFNTUHJvdGVjdGlvbkhlYWRlckFuZENTUCh4c3NQcm90ZWN0
aW9uSGVhZGVyLCBjc3BIZWFkZXIpOwotICAgICAgICBtX3JlcG9ydFVSTCA9IHhzc1Byb3RlY3Rp
b25SZXBvcnRVUkw7IC8vIEZJWE1FOiBDb21iaW5lIHRoZSB0d28gcmVwb3J0IFVSTHMgaW4gc29t
ZSByZWFzb25hYmxlIHdheS4KKyAgICAgICAgLy8gRklYTUU6IENvbWJpbmUgdGhlIHR3byByZXBv
cnQgVVJMcyBpbiBzb21lIHJlYXNvbmFibGUgd2F5LgorICAgICAgICBpZiAoYXVkaXRvckRlbGVn
YXRlKQorICAgICAgICAgICAgYXVkaXRvckRlbGVnYXRlLT5zZXRSZXBvcnRVUkwoeHNzUHJvdGVj
dGlvblJlcG9ydFVSTC5jb3B5KCkpOwogICAgICAgICBGb3JtRGF0YSogaHR0cEJvZHkgPSBkb2N1
bWVudExvYWRlci0+b3JpZ2luYWxSZXF1ZXN0KCkuaHR0cEJvZHkoKTsKICAgICAgICAgaWYgKGh0
dHBCb2R5ICYmICFodHRwQm9keS0+aXNFbXB0eSgpKSB7CiAgICAgICAgICAgICBodHRwQm9keUFz
U3RyaW5nID0gaHR0cEJvZHktPmZsYXR0ZW5Ub1N0cmluZygpOwpAQCAtMzM2LDggKzMzOSw3IEBA
IFBhc3NPd25QdHI8WFNTSW5mbz4gWFNTQXVkaXRvcjo6ZmlsdGVyVG9rZW4oY29uc3QgRmlsdGVy
VG9rZW5SZXF1ZXN0JiByZXF1ZXN0KQogCiAgICAgaWYgKGRpZEJsb2NrU2NyaXB0KSB7CiAgICAg
ICAgIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlID0gKG1feHNzUHJvdGVjdGlvbiA9PSBDb250ZW50
U2VjdXJpdHlQb2xpY3k6OkJsb2NrUmVmbGVjdGVkWFNTKTsKLSAgICAgICAgT3duUHRyPFhTU0lu
Zm8+IHhzc0luZm8gPSBYU1NJbmZvOjpjcmVhdGUobV9yZXBvcnRVUkwsIGRpZEJsb2NrRW50aXJl
UGFnZSwgbV9kaWRTZW5kVmFsaWRYU1NQcm90ZWN0aW9uSGVhZGVyLCBtX2RpZFNlbmRWYWxpZENT
UEhlYWRlcik7Ci0gICAgICAgIG1fcmVwb3J0VVJMID0gS1VSTCgpOworICAgICAgICBPd25QdHI8
WFNTSW5mbz4geHNzSW5mbyA9IFhTU0luZm86OmNyZWF0ZShkaWRCbG9ja0VudGlyZVBhZ2UsIG1f
ZGlkU2VuZFZhbGlkWFNTUHJvdGVjdGlvbkhlYWRlciwgbV9kaWRTZW5kVmFsaWRDU1BIZWFkZXIp
OwogICAgICAgICByZXR1cm4geHNzSW5mby5yZWxlYXNlKCk7CiAgICAgfQogICAgIHJldHVybiBu
dWxscHRyOwpAQCAtNzI4LDggKzczMCw3IEBAIGJvb2wgWFNTQXVkaXRvcjo6aXNTYWZlVG9TZW5k
VG9Bbm90aGVyVGhyZWFkKCkgY29uc3QKICAgICByZXR1cm4gbV9kb2N1bWVudFVSTC5pc1NhZmVU
b1NlbmRUb0Fub3RoZXJUaHJlYWQoKQogICAgICAgICAmJiBtX2RlY29kZWRVUkwuaXNTYWZlVG9T
ZW5kVG9Bbm90aGVyVGhyZWFkKCkKICAgICAgICAgJiYgbV9kZWNvZGVkSFRUUEJvZHkuaXNTYWZl
VG9TZW5kVG9Bbm90aGVyVGhyZWFkKCkKLSAgICAgICAgJiYgbV9jYWNoZWREZWNvZGVkU25pcHBl
dC5pc1NhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQoKQotICAgICAgICAmJiBtX3JlcG9ydFVSTC5p
c1NhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQoKTsKKyAgICAgICAgJiYgbV9jYWNoZWREZWNvZGVk
U25pcHBldC5pc1NhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQoKTsKIH0KIAogfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVk
aXRvci5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRvci5oCmluZGV4IDRi
MDFjZDczNDU5NjhhMTUyNTRkMWY5NDdjNjhmYWYxMWJmMGVjNTIuLjgyYmUzNDZjOTBlYjdlY2Qz
N2YxOGE2MDViOTlkZDEyNjg0ZDhhOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
cGFyc2VyL1hTU0F1ZGl0b3IuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NB
dWRpdG9yLmgKQEAgLTM5LDYgKzM5LDcgQEAgY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBIVE1MRG9j
dW1lbnRQYXJzZXI7CiBjbGFzcyBIVE1MU291cmNlVHJhY2tlcjsKIGNsYXNzIFhTU0luZm87Citj
bGFzcyBYU1NBdWRpdG9yRGVsZWdhdGU7CiAKIHN0cnVjdCBGaWx0ZXJUb2tlblJlcXVlc3Qgewog
ICAgIEZpbHRlclRva2VuUmVxdWVzdChIVE1MVG9rZW4mIHRva2VuLCBIVE1MU291cmNlVHJhY2tl
ciYgc291cmNlVHJhY2tlciwgYm9vbCBzaG91bGRBbGxvd0NEQVRBKQpAQCAtNTcsNyArNTgsNyBA
QCBjbGFzcyBYU1NBdWRpdG9yIHsKIHB1YmxpYzoKICAgICBYU1NBdWRpdG9yKCk7CiAKLSAgICB2
b2lkIGluaXQoRG9jdW1lbnQqKTsKKyAgICB2b2lkIGluaXQoRG9jdW1lbnQqLCBYU1NBdWRpdG9y
RGVsZWdhdGUqKTsKICAgICBQYXNzT3duUHRyPFhTU0luZm8+IGZpbHRlclRva2VuKGNvbnN0IEZp
bHRlclRva2VuUmVxdWVzdCYpOwogICAgIGJvb2wgaXNTYWZlVG9TZW5kVG9Bbm90aGVyVGhyZWFk
KCkgY29uc3Q7CiAKQEAgLTExNSw3ICsxMTYsNiBAQCBwcml2YXRlOgogICAgIFN0YXRlIG1fc3Rh
dGU7CiAgICAgU3RyaW5nIG1fY2FjaGVkRGVjb2RlZFNuaXBwZXQ7CiAgICAgdW5zaWduZWQgbV9z
Y3JpcHRUYWdOZXN0aW5nTGV2ZWw7Ci0gICAgS1VSTCBtX3JlcG9ydFVSTDsKICAgICBUZXh0RW5j
b2RpbmcgbV9lbmNvZGluZzsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwv
cGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNl
ci9YU1NBdWRpdG9yRGVsZWdhdGUuY3BwCmluZGV4IDA0MWYzZmM0NjNlZWU1YmY4YTU4YzExOGE2
NGJmYjhiZWE1MzIyYTQuLmQ0ODVmNWY2MDY2MzA2YWNlYmFmYWY4MTEwNDI2YjYwNGFlNjdkNDQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0
ZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvWFNTQXVkaXRvckRlbGVnYXRl
LmNwcApAQCAtNDEsMTEgKzQxLDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi1ib29sIFhT
U0luZm86OmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgpIGNvbnN0Ci17Ci0gICAgcmV0dXJu
IG1fcmVwb3J0VVJMLmlzU2FmZVRvU2VuZFRvQW5vdGhlclRocmVhZCgpOwotfQotCiBYU1NBdWRp
dG9yRGVsZWdhdGU6OlhTU0F1ZGl0b3JEZWxlZ2F0ZShEb2N1bWVudCogZG9jdW1lbnQpCiAgICAg
OiBtX2RvY3VtZW50KGRvY3VtZW50KQogICAgICwgbV9kaWROb3RpZnlDbGllbnQoZmFsc2UpCkBA
IC05MSw3ICs4Niw3IEBAIHZvaWQgWFNTQXVkaXRvckRlbGVnYXRlOjpkaWRCbG9ja1NjcmlwdChj
b25zdCBYU1NJbmZvJiB4c3NJbmZvKQogICAgICAgICBtX2RpZE5vdGlmeUNsaWVudCA9IHRydWU7
CiAgICAgfQogCi0gICAgaWYgKCF4c3NJbmZvLm1fcmVwb3J0VVJMLmlzRW1wdHkoKSkgeworICAg
IGlmICghbV9yZXBvcnRVUkwuaXNFbXB0eSgpKSB7CiAgICAgICAgIFJlZlB0cjxJbnNwZWN0b3JP
YmplY3Q+IHJlcG9ydERldGFpbHMgPSBJbnNwZWN0b3JPYmplY3Q6OmNyZWF0ZSgpOwogICAgICAg
ICByZXBvcnREZXRhaWxzLT5zZXRTdHJpbmcoInJlcXVlc3QtdXJsIiwgbV9kb2N1bWVudC0+dXJs
KCkuc3RyaW5nKCkpOwogCkBAIC0xMDYsNyArMTAxLDcgQEAgdm9pZCBYU1NBdWRpdG9yRGVsZWdh
dGU6OmRpZEJsb2NrU2NyaXB0KGNvbnN0IFhTU0luZm8mIHhzc0luZm8pCiAgICAgICAgIHJlcG9y
dE9iamVjdC0+c2V0T2JqZWN0KCJ4c3MtcmVwb3J0IiwgcmVwb3J0RGV0YWlscy5yZWxlYXNlKCkp
OwogCiAgICAgICAgIFJlZlB0cjxGb3JtRGF0YT4gcmVwb3J0ID0gRm9ybURhdGE6OmNyZWF0ZShy
ZXBvcnRPYmplY3QtPnRvSlNPTlN0cmluZygpLnV0ZjgoKS5kYXRhKCkpOwotICAgICAgICBQaW5n
TG9hZGVyOjpzZW5kVmlvbGF0aW9uUmVwb3J0KG1fZG9jdW1lbnQtPmZyYW1lKCksIHhzc0luZm8u
bV9yZXBvcnRVUkwsIHJlcG9ydCk7CisgICAgICAgIFBpbmdMb2FkZXI6OnNlbmRWaW9sYXRpb25S
ZXBvcnQobV9kb2N1bWVudC0+ZnJhbWUoKSwgbV9yZXBvcnRVUkwsIHJlcG9ydCk7CiAgICAgfQog
CiAgICAgaWYgKHhzc0luZm8ubV9kaWRCbG9ja0VudGlyZVBhZ2UpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL3BhcnNlci9YU1NBdWRpdG9yRGVsZWdhdGUuaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0b3JEZWxlZ2F0ZS5oCmluZGV4IGM0NTNiMGM2YWFiMmFl
M2M3NGUwMDRjYThiYzllNzNkYWE4MmRjMTIuLmQ4OGM0NmY1Nzg5MTIzNzkyNzI2OTc0YzgwNDY0
MjQzNTRjOWFiNjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1
ZGl0b3JEZWxlZ2F0ZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL1hTU0F1ZGl0
b3JEZWxlZ2F0ZS5oCkBAIC0zOSwyMyArMzksMTkgQEAgY2xhc3MgRG9jdW1lbnQ7CiAKIGNsYXNz
IFhTU0luZm8gewogcHVibGljOgotICAgIHN0YXRpYyBQYXNzT3duUHRyPFhTU0luZm8+IGNyZWF0
ZShjb25zdCBLVVJMJiByZXBvcnRVUkwsIGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlLCBib29sIGRp
ZFNlbmRYU1NQcm90ZWN0aW9uSGVhZGVyLCBib29sIGRpZFNlbmRDU1BIZWFkZXIpCisgICAgc3Rh
dGljIFBhc3NPd25QdHI8WFNTSW5mbz4gY3JlYXRlKGJvb2wgZGlkQmxvY2tFbnRpcmVQYWdlLCBi
b29sIGRpZFNlbmRYU1NQcm90ZWN0aW9uSGVhZGVyLCBib29sIGRpZFNlbmRDU1BIZWFkZXIpCiAg
ICAgewotICAgICAgICByZXR1cm4gYWRvcHRQdHIobmV3IFhTU0luZm8ocmVwb3J0VVJMLCBkaWRC
bG9ja0VudGlyZVBhZ2UsIGRpZFNlbmRYU1NQcm90ZWN0aW9uSGVhZGVyLCBkaWRTZW5kQ1NQSGVh
ZGVyKSk7CisgICAgICAgIHJldHVybiBhZG9wdFB0cihuZXcgWFNTSW5mbyhkaWRCbG9ja0VudGly
ZVBhZ2UsIGRpZFNlbmRYU1NQcm90ZWN0aW9uSGVhZGVyLCBkaWRTZW5kQ1NQSGVhZGVyKSk7CiAg
ICAgfQogCi0gICAgYm9vbCBpc1NhZmVUb1NlbmRUb0Fub3RoZXJUaHJlYWQoKSBjb25zdDsKLQot
ICAgIEtVUkwgbV9yZXBvcnRVUkw7CiAgICAgYm9vbCBtX2RpZEJsb2NrRW50aXJlUGFnZTsKICAg
ICBib29sIG1fZGlkU2VuZFhTU1Byb3RlY3Rpb25IZWFkZXI7CiAgICAgYm9vbCBtX2RpZFNlbmRD
U1BIZWFkZXI7CiAgICAgVGV4dFBvc2l0aW9uIG1fdGV4dFBvc2l0aW9uOwogCiBwcml2YXRlOgot
ICAgIFhTU0luZm8oY29uc3QgS1VSTCYgcmVwb3J0VVJMLCBib29sIGRpZEJsb2NrRW50aXJlUGFn
ZSwgYm9vbCBkaWRTZW5kWFNTUHJvdGVjdGlvbkhlYWRlciwgYm9vbCBkaWRTZW5kQ1NQSGVhZGVy
KQotICAgICAgICA6IG1fcmVwb3J0VVJMKHJlcG9ydFVSTCkKLSAgICAgICAgLCBtX2RpZEJsb2Nr
RW50aXJlUGFnZShkaWRCbG9ja0VudGlyZVBhZ2UpCisgICAgWFNTSW5mbyhib29sIGRpZEJsb2Nr
RW50aXJlUGFnZSwgYm9vbCBkaWRTZW5kWFNTUHJvdGVjdGlvbkhlYWRlciwgYm9vbCBkaWRTZW5k
Q1NQSGVhZGVyKQorICAgICAgICA6IG1fZGlkQmxvY2tFbnRpcmVQYWdlKGRpZEJsb2NrRW50aXJl
UGFnZSkKICAgICAgICAgLCBtX2RpZFNlbmRYU1NQcm90ZWN0aW9uSGVhZGVyKGRpZFNlbmRYU1NQ
cm90ZWN0aW9uSGVhZGVyKQogICAgICAgICAsIG1fZGlkU2VuZENTUEhlYWRlcihkaWRTZW5kQ1NQ
SGVhZGVyKQogICAgIHsgfQpAQCAtNjcsMTAgKzYzLDEyIEBAIHB1YmxpYzoKICAgICBleHBsaWNp
dCBYU1NBdWRpdG9yRGVsZWdhdGUoRG9jdW1lbnQqKTsKIAogICAgIHZvaWQgZGlkQmxvY2tTY3Jp
cHQoY29uc3QgWFNTSW5mbyYpOworICAgIHZvaWQgc2V0UmVwb3J0VVJMKGNvbnN0IEtVUkwmIHVy
bCkgeyBtX3JlcG9ydFVSTCA9IHVybDsgfQogCiBwcml2YXRlOgogICAgIERvY3VtZW50KiBtX2Rv
Y3VtZW50OwogICAgIGJvb2wgbV9kaWROb3RpZnlDbGllbnQ7CisgICAgS1VSTCBtX3JlcG9ydFVS
TDsKIH07CiAKIHR5cGVkZWYgVmVjdG9yPE93blB0cjxYU1NJbmZvPiA+IFhTU0luZm9TdHJlYW07
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>