<?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>40723</bug_id>
          
          <creation_ts>2010-06-16 11:11:14 -0700</creation_ts>
          <short_desc>Fix paren matching rules for switch/if/while in check-webkit-style script</short_desc>
          <delta_ts>2010-06-23 00:48:02 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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="Sam Magnuson">smagnuso</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>cjerdonek</cc>
    
    <cc>eric</cc>
    
    <cc>hamaji</cc>
    
    <cc>hausmann</cc>
    
    <cc>manyoso</cc>
    
    <cc>noam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>238967</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Magnuson">smagnuso</who>
    <bug_when>2010-06-16 11:11:14 -0700</bug_when>
    <thetext>I&apos;ve been bitten a few times going through the review process with:

if( foo )

being flagged as bad style by a reviewer but never flagged by the check-webkit-style script. Since these roundtrips waste everybody&apos;s time it would be great if check-webkit-style would flag it on my end (to help newcomers like me learn the rules)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>238970</commentid>
    <comment_count>1</comment_count>
      <attachid>58908</attachid>
    <who name="Sam Magnuson">smagnuso</who>
    <bug_when>2010-06-16 11:17:51 -0700</bug_when>
    <thetext>Created attachment 58908
Proposed patch

I&apos;ve updated the unit tests so that all pass.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239256</commentid>
    <comment_count>2</comment_count>
      <attachid>58908</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-06-16 23:33:40 -0700</bug_when>
    <thetext>Comment on attachment 58908
Proposed patch

Looks good. Thanks for this patch!

Please run the style checker for WebCore/*/*.{cpp,h} and examine if there are no false postives.

WebKitTools/Scripts/webkitpy/style/processors/cpp_unittest.py: 
 +          self.assert_lint(&apos;while (  foo  ) {&apos;, &apos;Should have zero or one spaces inside&apos;
I think we still want this test. Maybe this case should produce two errors?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239458</commentid>
    <comment_count>3</comment_count>
      <attachid>59009</attachid>
    <who name="Sam Magnuson">smagnuso</who>
    <bug_when>2010-06-17 10:36:10 -0700</bug_when>
    <thetext>Created attachment 59009
Updated change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239460</commentid>
    <comment_count>4</comment_count>
    <who name="Sam Magnuson">smagnuso</who>
    <bug_when>2010-06-17 10:37:24 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 58908 [details])
&gt; Looks good. Thanks for this patch!
&gt; 
&gt; Please run the style checker for WebCore/*/*.{cpp,h} and examine if there are no false postives.
&gt; 

I shouldn&apos;t have been so confident :) I noticed that:

for(int a = 0; a &lt; 10; )

Got broken with my change, I&apos;ve fixed that in the revised patch.

&gt; WebKitTools/Scripts/webkitpy/style/processors/cpp_unittest.py: 
&gt;  +          self.assert_lint(&apos;while (  foo  ) {&apos;, &apos;Should have zero or one spaces inside&apos;
&gt; I think we still want this test. Maybe this case should produce two errors?

This actually will spit out the to messages (one for the space after &apos;(&apos; and one for the space before &apos;)&apos;. I didn&apos;t see any other tests that check for two errors, are there anyway?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239467</commentid>
    <comment_count>5</comment_count>
      <attachid>59010</attachid>
    <who name="Sam Magnuson">smagnuso</who>
    <bug_when>2010-06-17 10:49:26 -0700</bug_when>
    <thetext>Created attachment 59010
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239470</commentid>
    <comment_count>6</comment_count>
      <attachid>59011</attachid>
    <who name="Sam Magnuson">smagnuso</who>
    <bug_when>2010-06-17 10:51:49 -0700</bug_when>
    <thetext>Created attachment 59011
The right patch this time, sigh.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239607</commentid>
    <comment_count>7</comment_count>
      <attachid>58908</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-17 15:30:15 -0700</bug_when>
    <thetext>Comment on attachment 58908
Proposed patch

Cleared Shinichiro Hamaji&apos;s review+ from obsolete attachment 58908 so that this bug does not appear in http://webkit.org/pending-commit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>239751</commentid>
    <comment_count>8</comment_count>
      <attachid>59011</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-06-17 21:47:19 -0700</bug_when>
    <thetext>Comment on attachment 59011
The right patch this time, sigh.

&gt; This actually will spit out the to messages (one for the space after &apos;(&apos; and one for the space before &apos;)&apos;. I didn&apos;t see any other tests that check for two errors, are there anyway?

I think assert_lint can take a list of errors as the second parameter. Like,

self.assert_lint(&apos;while (  foo  ) {&apos;,
                 [&apos;the first error!&apos;,
                  &apos;the second error!&apos;])</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241514</commentid>
    <comment_count>9</comment_count>
      <attachid>59436</attachid>
    <who name="Sam Magnuson">smagnuso</who>
    <bug_when>2010-06-22 16:11:51 -0700</bug_when>
    <thetext>Created attachment 59436
Rediff against trunk</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241519</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-22 16:14:17 -0700</bug_when>
    <thetext>Attachment 59436 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;, &apos;--no-squash&apos;]&quot; exit_code: 1
WebKitTools/Scripts/webkitpy/style/checkers/cpp_unittest.py:1183:  whitespace before &apos;)&apos;  [pep8/E202] [5]
Total errors found: 1 in 3 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241639</commentid>
    <comment_count>11</comment_count>
      <attachid>59436</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-06-22 21:21:51 -0700</bug_when>
    <thetext>Comment on attachment 59436
Rediff against trunk

WebKitTools/ChangeLog:13
 +  2010-06-16  Sam Magnuson  &lt;smagnuson@netflix.com&gt;
It&apos;s better to put this new changelog entry on the top of this file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241640</commentid>
    <comment_count>12</comment_count>
      <attachid>59436</attachid>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-06-22 21:22:31 -0700</bug_when>
    <thetext>Comment on attachment 59436
Rediff against trunk

Also, please fix the style error the review bot found. Otherwise this patch looks good. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241641</commentid>
    <comment_count>13</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-06-22 21:24:29 -0700</bug_when>
    <thetext>Ah, you are not a committer yet, right? So, I&apos;ll land this patch with fixes I&apos;ve suggested. You don&apos;t need to update the patch again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241706</commentid>
    <comment_count>14</comment_count>
    <who name="Shinichiro Hamaji">hamaji</who>
    <bug_when>2010-06-23 00:11:33 -0700</bug_when>
    <thetext>Committed r61666: &lt;http://trac.webkit.org/changeset/61666&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>241725</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-06-23 00:48:02 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/61666 might have broken Qt Linux Release
The following changes are on the blame list:
http://trac.webkit.org/changeset/61666
http://trac.webkit.org/changeset/61667
http://trac.webkit.org/changeset/61668</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58908</attachid>
            <date>2010-06-16 11:17:51 -0700</date>
            <delta_ts>2010-06-17 15:30:15 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-40723.patch</filename>
            <type>text/plain</type>
            <size>8197</size>
            <attacher name="Sam Magnuson">smagnuso</attacher>
            
              <data encoding="base64">RnJvbSA3YjczNzMzYjIzYjQ0OWFiZDI1OTc0N2JjZDVkZTI2NTZmZmZhODNhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTYW0gTWFnbnVzb24gPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4K
RGF0ZTogV2VkLCAxNiBKdW4gMjAxMCAxMToxMjo0MyAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIEZv
bGxvdyBwcm9wZXIgY29udmVudGlvbiBmb3IgaWYvc3dpdGNoL3doaWxlCiBidWctNDA3MjMKCi0t
LQogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
IDE0ICsrKysrKysrKwogLi4uL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAu
cHkgICAgICAgfCAgIDE5ICsrKysrLS0tLS0tLQogLi4uL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3Nv
cnMvY3BwX3VuaXR0ZXN0LnB5ICAgICAgfCAgIDMwICsrKysrKysrKysrLS0tLS0tLS0KIDMgZmls
ZXMgY2hhbmdlZCwgMzkgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCiBtb2RlIGNoYW5n
ZSAxMDA2NDQgPT4gMTAwNzU1IFdlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJv
Y2Vzc29ycy9jcHAucHkKIG1vZGUgY2hhbmdlIDEwMDY0NCA9PiAxMDA3NTUgV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weQoKZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwppbmRl
eCBmNjEyMjc4Li4wYjEwNmJlIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cKKysr
IGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTAtMDYtMTYgIFNh
bSBNYWdudXNvbiAgPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb2xsb3cgcHJvcGVyIGNvbnZlbnRpb24gZm9y
IGlmL3N3aXRjaC93aGlsZSBhcyBJJ3ZlIGRpc2NvdmVyZWQKKyAgICAgICAgdGhlbSB0byBiZSB0
aHJvdWdoIG15IHJldmlldyBwcm9jZXNzZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00MDcyMworICAgICAgICAKKyAgICAgICAgTW9kaWZpZWQgdGVz
dCBzbyB0aGF0IGlmKCBmb28gKSBpcyBub3QgYWxsb3dlZCBhcyBpdCBhcHBlYXJzIG5vdAorICAg
ICAgICB0byBiZSB0aGUgYWNjZXB0ZWQgY29udmVudGlvbi4gCisgICAgICAgIAorICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAucHk6CisgICAgICAgICogU2Ny
aXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weToKKwogMjAxMC0w
Ni0wMiAgVGFzdWt1IFN1enVraSAgPHRhc3VrdS5zdXp1a2lAbm9raWEuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IFNoaW5pY2hpcm8gSGFtYWppLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weSBiL1dlYktpdFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAucHkKb2xkIG1vZGUgMTAwNjQ0Cm5l
dyBtb2RlIDEwMDc1NQppbmRleCA4MTRiNjA3Li4zMzRmN2ZiCi0tLSBhL1dlYktpdFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAucHkKKysrIGIvV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weQpAQCAtMTYxLDcgKzE2MSw3
IEBAIGRlZiB1cF90b191bm1hdGNoZWRfY2xvc2luZ19wYXJlbihzKToKIAogICAgIFJldHVybnM6
CiAgICAgICBBIHBhaXIgb2Ygc3RyaW5ncyAocHJlZml4IGJlZm9yZSBmaXJzdCB1bm1hdGNoZWQg
JyknLAotICAgICAgcmVtaW5kZXIgb2YgcyBhZnRlciBmaXJzdCB1bm1hdGNoZWQgJyknKSwgZS5n
LiwKKyAgICAgIHJlbWFpbmRlciBvZiBzIGFmdGVyIGZpcnN0IHVubWF0Y2hlZCAnKScpLCBlLmcu
LAogICAgICAgdXBfdG9fdW5tYXRjaGVkX2Nsb3NpbmdfcGFyZW4oImEgPT0gKGIgKyBjKSkgeyAi
KQogICAgICAgcmV0dXJucyAiYSA9PSAoYiArIGMpIiwgIiB7Ii4KICAgICAgIFJldHVybnMgTm9u
ZSwgTm9uZSBpZiB0aGVyZSBpcyBubyB1bm1hdGNoZWQgJyknCkBAIC0xMzMzLDI2ICsxMzMzLDIz
IEBAIGRlZiBjaGVja19zcGFjaW5nKGZpbGVfZXh0ZW5zaW9uLCBjbGVhbl9saW5lcywgbGluZV9u
dW1iZXIsIGVycm9yKToKICAgICAjIHRoZXJlIHNob3VsZCBlaXRoZXIgYmUgemVybyBvciBvbmUg
c3BhY2VzIGluc2lkZSB0aGUgcGFyZW5zLgogICAgICMgV2UgZG9uJ3Qgd2FudDogImlmICggZm9v
KSIgb3IgImlmICggZm9vICAgKSIuCiAgICAgIyBFeGNlcHRpb246ICJmb3IgKCA7IGZvbzsgYmFy
KSIgYW5kICJmb3IgKGZvbzsgYmFyOyApIiBhcmUgYWxsb3dlZC4KLSAgICBtYXRjaGVkID0gc2Vh
cmNoKHInXGIoP1A8c3RhdGVtZW50PmlmfGZvcnxmb3JlYWNofHdoaWxlfHN3aXRjaClccypcKCg/
UDxyZW1pbmRlcj4uKikkJywgbGluZSkKKyAgICBtYXRjaGVkID0gc2VhcmNoKHInXGIoP1A8c3Rh
dGVtZW50PmlmfGZvcnxmb3JlYWNofHdoaWxlfHN3aXRjaClccypcKCg/UDxyZW1haW5kZXI+Liop
JCcsIGxpbmUpCiAgICAgaWYgbWF0Y2hlZDoKICAgICAgICAgc3RhdGVtZW50ID0gbWF0Y2hlZC5n
cm91cCgnc3RhdGVtZW50JykKLSAgICAgICAgY29uZGl0aW9uLCByZXN0ID0gdXBfdG9fdW5tYXRj
aGVkX2Nsb3NpbmdfcGFyZW4obWF0Y2hlZC5ncm91cCgncmVtaW5kZXInKSkKKyAgICAgICAgY29u
ZGl0aW9uLCByZXN0ID0gdXBfdG9fdW5tYXRjaGVkX2Nsb3NpbmdfcGFyZW4obWF0Y2hlZC5ncm91
cCgncmVtYWluZGVyJykpCiAgICAgICAgIGlmIGNvbmRpdGlvbiBpcyBub3QgTm9uZToKICAgICAg
ICAgICAgIGNvbmRpdGlvbl9tYXRjaCA9IHNlYXJjaChyJyg/UDxsZWFkaW5nPlsgXSopKD9QPHNl
cGFyYXRvcj4uKS4qW14gXSsoP1A8dHJhaWxpbmc+WyBdKiknLCBjb25kaXRpb24pCiAgICAgICAg
ICAgICBpZiBjb25kaXRpb25fbWF0Y2g6CiAgICAgICAgICAgICAgICAgbl9sZWFkaW5nID0gbGVu
KGNvbmRpdGlvbl9tYXRjaC5ncm91cCgnbGVhZGluZycpKQogICAgICAgICAgICAgICAgIG5fdHJh
aWxpbmcgPSBsZW4oY29uZGl0aW9uX21hdGNoLmdyb3VwKCd0cmFpbGluZycpKQotICAgICAgICAg
ICAgICAgIGlmIG5fbGVhZGluZyAhPSBuX3RyYWlsaW5nOgotICAgICAgICAgICAgICAgICAgICBm
b3JfZXhjZXB0aW9uID0gc3RhdGVtZW50ID09ICdmb3InIGFuZCAoCi0gICAgICAgICAgICAgICAg
ICAgICAgICAoY29uZGl0aW9uLnN0YXJ0c3dpdGgoJyA7JykgYW5kIG5fdHJhaWxpbmcgPT0gMCkg
b3IKLSAgICAgICAgICAgICAgICAgICAgICAgIChjb25kaXRpb24uZW5kc3dpdGgoJzsgJykgICBh
bmQgbl9sZWFkaW5nID09IDApKQorICAgICAgICAgICAgICAgIGlmIG5fbGVhZGluZyAhPSAwOgor
ICAgICAgICAgICAgICAgICAgICBmb3JfZXhjZXB0aW9uID0gc3RhdGVtZW50ID09ICdmb3InIGFu
ZCBjb25kaXRpb24uc3RhcnRzd2l0aCgnIDsnKQogICAgICAgICAgICAgICAgICAgICBpZiBub3Qg
Zm9yX2V4Y2VwdGlvbjoKICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yKGxpbmVfbnVtYmVy
LCAnd2hpdGVzcGFjZS9wYXJlbnMnLCA1LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
J01pc21hdGNoaW5nIHNwYWNlcyBpbnNpZGUgKCkgaW4gJXMnICUgc3RhdGVtZW50KQotICAgICAg
ICAgICAgICAgIGlmIG5fbGVhZGluZyA+IDE6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAnRXh0cmEgc3BhY2UgYWZ0ZXIgKCBpbiAlcycgJSBzdGF0ZW1lbnQpCisgICAgICAgICAgICAg
ICAgaWYgbl90cmFpbGluZyAhPSAwOgogICAgICAgICAgICAgICAgICAgICBlcnJvcihsaW5lX251
bWJlciwgJ3doaXRlc3BhY2UvcGFyZW5zJywgNSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
J1Nob3VsZCBoYXZlIHplcm8gb3Igb25lIHNwYWNlcyBpbnNpZGUgKCBhbmQgKSBpbiAlcycgJQot
ICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0ZW1lbnQpCisgICAgICAgICAgICAgICAgICAg
ICAgICAgICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiAlcycgJSBzdGF0ZW1lbnQpCiAKICAgICAg
ICAgICAgICMgRG8gbm90IGNoZWNrIGZvciBtb3JlIHRoYW4gb25lIGNvbW1hbmQgaW4gbWFjcm9z
CiAgICAgICAgICAgICBpbl9tYWNybyA9IG1hdGNoKHInXHMqI2RlZmluZScsIGxpbmUpCmRpZmYg
LS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3Bw
X3VuaXR0ZXN0LnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNz
b3JzL2NwcF91bml0dGVzdC5weQpvbGQgbW9kZSAxMDA2NDQKbmV3IG1vZGUgMTAwNzU1CmluZGV4
IGM0NzM4ZjkuLjg1YzZjMWUKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHls
ZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5CkBAIC0xMTYzLDI4ICsxMTYz
LDMyIEBAIGNsYXNzIENwcFN0eWxlVGVzdChDcHBTdHlsZVRlc3RCYXNlKToKICAgICAgICAgICAg
ICcnKQogCiAgICAgZGVmIHRlc3RfbWlzbWF0Y2hpbmdfc3BhY2VzX2luX3BhcmVucyhzZWxmKToK
LSAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnaWYgKGZvbyApIHsnLCAnTWlzbWF0Y2hpbmcgc3Bh
Y2VzIGluc2lkZSAoKSBpbiBpZicKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnaWYgKGZvbyAp
IHsnLCAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gaWYnCiAgICAgICAgICAgICAgICAgICAgICAg
ICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQotICAgICAgICBzZWxmLmFzc2VydF9saW50
KCdzd2l0Y2ggKCBmb28pIHsnLCAnTWlzbWF0Y2hpbmcgc3BhY2VzIGluc2lkZSAoKSBpbiBzd2l0
Y2gnCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ3N3aXRjaCAoIGZvbykgeycsICdFeHRyYSBz
cGFjZSBhZnRlciAoIGluIHN3aXRjaCcKICAgICAgICAgICAgICAgICAgICAgICAgICAnICBbd2hp
dGVzcGFjZS9wYXJlbnNdIFs1XScpCi0gICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoZm9v
OyBiYTsgYmFyICkgeycsICdNaXNtYXRjaGluZyBzcGFjZXMgaW5zaWRlICgpIGluIGZvcicKKyAg
ICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yIChmb287IGJhOyBiYXIgKSB7JywgJ0V4dHJhIHNw
YWNlIGJlZm9yZSApIGluIGZvcicKICAgICAgICAgICAgICAgICAgICAgICAgICAnICBbd2hpdGVz
cGFjZS9wYXJlbnNdIFs1XScpCi0gICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoKGZvbyk7
IChiYSk7IChiYXIpICkgeycsICdNaXNtYXRjaGluZyBzcGFjZXMgaW5zaWRlICgpIGluIGZvcicK
KyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICgoZm9vKTsgKGJhKTsgKGJhcikgKSB7Jywg
J0V4dHJhIHNwYWNlIGJlZm9yZSApIGluIGZvcicKICAgICAgICAgICAgICAgICAgICAgICAgICAn
ICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCiAgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2Zv
ciAoOyBmb287IGJhcikgeycsICcnKQogICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3IgKDsg
KGZvbyk7IChiYXIpKSB7JywgJycpCiAgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoIDsg
Zm9vOyBiYXIpIHsnLCAnJykKICAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICggOyAoZm9v
KTsgKGJhcikpIHsnLCAnJykKLSAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICggOyBmb287
IGJhciApIHsnLCAnJykKLSAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICggOyAoZm9vKTsg
KGJhcikgKSB7JywgJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoZm9vOyBiYXI7
ICkgeycsICcnKQotICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3IgKChmb28pOyAoYmFyKTsg
KSB7JywgJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvcmVhY2ggKGZvbywgZm9vcyAp
IHsnLCAnTWlzbWF0Y2hpbmcgc3BhY2VzIGluc2lkZSAoKSBpbiBmb3JlYWNoJworICAgICAgICBz
ZWxmLmFzc2VydF9saW50KCdmb3IgKCA7IGZvbzsgYmFyICkgeycsICdFeHRyYSBzcGFjZSBiZWZv
cmUgKSBpbiBmb3InCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFy
ZW5zXSBbNV0nKQotICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3JlYWNoICggZm9vLCBmb29z
KSB7JywgJ01pc21hdGNoaW5nIHNwYWNlcyBpbnNpZGUgKCkgaW4gZm9yZWFjaCcKKyAgICAgICAg
c2VsZi5hc3NlcnRfbGludCgnZm9yICggOyAoZm9vKTsgKGJhcikgKSB7JywgJ0V4dHJhIHNwYWNl
IGJlZm9yZSApIGluIGZvcicKKyAgICAgICAgICAgICAgICAgICAgICAgICAnICBbd2hpdGVzcGFj
ZS9wYXJlbnNdIFs1XScpCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoZm9vOyBiYXI7
ICkgeycsICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiBmb3InCisgICAgICAgICAgICAgICAgICAg
ICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQorICAgICAgICBzZWxmLmFzc2VydF9s
aW50KCdmb3IgKChmb28pOyAoYmFyKTsgKSB7JywgJ0V4dHJhIHNwYWNlIGJlZm9yZSApIGluIGZv
cicKKyAgICAgICAgICAgICAgICAgICAgICAgICAnICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScp
CisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvcmVhY2ggKGZvbywgZm9vcyApIHsnLCAnRXh0
cmEgc3BhY2UgYmVmb3JlICkgaW4gZm9yZWFjaCcKKyAgICAgICAgICAgICAgICAgICAgICAgICAn
ICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2Zv
cmVhY2ggKCBmb28sIGZvb3MpIHsnLCAnRXh0cmEgc3BhY2UgYWZ0ZXIgKCBpbiBmb3JlYWNoJwor
ICAgICAgICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKKyAg
ICAgICAgc2VsZi5hc3NlcnRfbGludCgnd2hpbGUgKCAgZm9vKSB7JywgJ0V4dHJhIHNwYWNlIGFm
dGVyICggaW4gd2hpbGUnCiAgICAgICAgICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2Uv
cGFyZW5zXSBbNV0nKQotICAgICAgICBzZWxmLmFzc2VydF9saW50KCd3aGlsZSAoICBmb28gICkg
eycsICdTaG91bGQgaGF2ZSB6ZXJvIG9yIG9uZSBzcGFjZXMgaW5zaWRlJwotICAgICAgICAgICAg
ICAgICAgICAgICAgICcgKCBhbmQgKSBpbiB3aGlsZSAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0n
KQogCiAgICAgZGVmIHRlc3Rfc3BhY2luZ19mb3JfZm5jYWxsKHNlbGYpOgogICAgICAgICBzZWxm
LmFzc2VydF9saW50KCdpZiAoZm9vKSB7JywgJycpCkBAIC0zMDM4LDcgKzMwNDIsNyBAQCBjbGFz
cyBXZWJLaXRTdHlsZVRlc3QoQ3BwU3R5bGVUZXN0QmFzZSk6CiAgICAgICAgICAgICAnJykKICAg
ICAgICAgc2VsZi5hc3NlcnRfbXVsdGlfbGluZV9saW50KAogICAgICAgICAgICAgJyNkZWZpbmUg
VEVTVF9BU1NFUlQoZXhwcmVzc2lvbikgZG8geyBpZiAoICEoZXhwcmVzc2lvbikpIHsgVGVzdHND
b250cm9sbGVyOjpzaGFyZWQoKS50ZXN0RmFpbGVkKF9fRklMRV9fLCBfX0xJTkVfXywgI2V4cHJl
c3Npb24pOyByZXR1cm47IH0gfSB3aGlsZSAoMClcbicsCi0gICAgICAgICAgICAnTWlzbWF0Y2hp
bmcgc3BhY2VzIGluc2lkZSAoKSBpbiBpZiAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQorICAg
ICAgICAgICAgJ0V4dHJhIHNwYWNlIGFmdGVyICggaW4gaWYgIFt3aGl0ZXNwYWNlL3BhcmVuc10g
WzVdJykKICAgICAgICAgIyBGSVhNRTogY3VycmVudGx5IHdlIG9ubHkgY2hlY2sgZmlyc3QgY29u
ZGl0aW9uYWwsIHNvIHdlIGNhbm5vdCBkZXRlY3QgZXJyb3JzIGluIG5leHQgb25lcy4KICAgICAg
ICAgIyBzZWxmLmFzc2VydF9tdWx0aV9saW5lX2xpbnQoCiAgICAgICAgICMgICAgICcjZGVmaW5l
IFRFU1RfQVNTRVJUKGV4cHJlc3Npb24pIGRvIHsgaWYgKCEoZXhwcmVzc2lvbikpIHsgVGVzdHND
b250cm9sbGVyOjpzaGFyZWQoKS50ZXN0RmFpbGVkKF9fRklMRV9fLCBfX0xJTkVfXywgI2V4cHJl
c3Npb24pOyByZXR1cm47IH0gfSB3aGlsZSAoMCApXG4nLAotLSAKMS43LjEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59009</attachid>
            <date>2010-06-17 10:36:10 -0700</date>
            <delta_ts>2010-06-17 10:49:26 -0700</delta_ts>
            <desc>Updated change</desc>
            <filename>bug-40723.patch</filename>
            <type>text/plain</type>
            <size>11263</size>
            <attacher name="Sam Magnuson">smagnuso</attacher>
            
              <data encoding="base64">RnJvbSAxZWFhNzRiOWFmOTJjNmU3ZThjZjQ2YzVkOGJjZjM1ODFjMDk5ZTRhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTYW0gTWFnbnVzb24gPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4K
RGF0ZTogV2VkLCAxNiBKdW4gMjAxMCAxMToxMjo0MyAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMS8y
XSBGb2xsb3cgcHJvcGVyIGNvbnZlbnRpb24gZm9yIGlmL3N3aXRjaC93aGlsZQogYnVnLTQwNzIz
CgotLS0KIFdlYktpdFRvb2xzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAxNCArKysrKysrKysKIC4uLi9TY3JpcHRzL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMv
Y3BwLnB5ICAgICAgIHwgICAyMyArKysrKysrLS0tLS0tLS0KIC4uLi93ZWJraXRweS9zdHlsZS9w
cm9jZXNzb3JzL2NwcF91bml0dGVzdC5weSAgICAgIHwgICAzMCArKysrKysrKysrKy0tLS0tLS0t
CiAzIGZpbGVzIGNoYW5nZWQsIDQyIGluc2VydGlvbnMoKyksIDI1IGRlbGV0aW9ucygtKQogbW9k
ZSBjaGFuZ2UgMTAwNjQ0ID0+IDEwMDc1NSBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3N0
eWxlL3Byb2Nlc3NvcnMvY3BwLnB5CiBtb2RlIGNoYW5nZSAxMDA2NDQgPT4gMTAwNzU1IFdlYktp
dFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHkK
CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKaW5kZXggZjYxMjI3OC4uNTNkNjMyZiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hhbmdl
TG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEwLTA2
LTE2ICBTYW0gTWFnbnVzb24gIDxzbWFnbnVzb25AbmV0ZmxpeC5jb20+CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9sbG93IHByb3BlciBjb252ZW50
aW9uIGZvciBpZi9zd2l0Y2gvd2hpbGUgYXMgSSd2ZSBkaXNjb3ZlcmVkCisgICAgICAgIHRoZW0g
dG8gYmUgdGhyb3VnaCBteSByZXZpZXcgcHJvY2Vzc2VzLgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA3MjMKKworICAgICAgICBNb2RpZmllZCB0ZXN0
IHNvIHRoYXQgaWYoIGZvbyApIGlzIG5vdCBhbGxvd2VkIGFzIGl0IGFwcGVhcnMgbm90CisgICAg
ICAgIHRvIGJlIHRoZSBhY2NlcHRlZCBjb252ZW50aW9uLgorCisgICAgICAgICogU2NyaXB0cy93
ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5OgorCiAyMDEwLTA2LTAyICBUYXN1
a3UgU3V6dWtpICA8dGFzdWt1LnN1enVraUBub2tpYS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgU2hpbmljaGlybyBIYW1hamkuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weQpvbGQgbW9kZSAxMDA2NDQKbmV3IG1vZGUgMTAw
NzU1CmluZGV4IDgxNGI2MDcuLjc2NTZjYjkKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5CkBAIC0xNjEsNyArMTYxLDcgQEAgZGVmIHVw
X3RvX3VubWF0Y2hlZF9jbG9zaW5nX3BhcmVuKHMpOgogCiAgICAgUmV0dXJuczoKICAgICAgIEEg
cGFpciBvZiBzdHJpbmdzIChwcmVmaXggYmVmb3JlIGZpcnN0IHVubWF0Y2hlZCAnKScsCi0gICAg
ICByZW1pbmRlciBvZiBzIGFmdGVyIGZpcnN0IHVubWF0Y2hlZCAnKScpLCBlLmcuLAorICAgICAg
cmVtYWluZGVyIG9mIHMgYWZ0ZXIgZmlyc3QgdW5tYXRjaGVkICcpJyksIGUuZy4sCiAgICAgICB1
cF90b191bm1hdGNoZWRfY2xvc2luZ19wYXJlbigiYSA9PSAoYiArIGMpKSB7ICIpCiAgICAgICBy
ZXR1cm5zICJhID09IChiICsgYykiLCAiIHsiLgogICAgICAgUmV0dXJucyBOb25lLCBOb25lIGlm
IHRoZXJlIGlzIG5vIHVubWF0Y2hlZCAnKScKQEAgLTEzMzMsMjYgKzEzMzMsMjUgQEAgZGVmIGNo
ZWNrX3NwYWNpbmcoZmlsZV9leHRlbnNpb24sIGNsZWFuX2xpbmVzLCBsaW5lX251bWJlciwgZXJy
b3IpOgogICAgICMgdGhlcmUgc2hvdWxkIGVpdGhlciBiZSB6ZXJvIG9yIG9uZSBzcGFjZXMgaW5z
aWRlIHRoZSBwYXJlbnMuCiAgICAgIyBXZSBkb24ndCB3YW50OiAiaWYgKCBmb28pIiBvciAiaWYg
KCBmb28gICApIi4KICAgICAjIEV4Y2VwdGlvbjogImZvciAoIDsgZm9vOyBiYXIpIiBhbmQgImZv
ciAoZm9vOyBiYXI7ICkiIGFyZSBhbGxvd2VkLgotICAgIG1hdGNoZWQgPSBzZWFyY2gocidcYig/
UDxzdGF0ZW1lbnQ+aWZ8Zm9yfGZvcmVhY2h8d2hpbGV8c3dpdGNoKVxzKlwoKD9QPHJlbWluZGVy
Pi4qKSQnLCBsaW5lKQorICAgIG1hdGNoZWQgPSBzZWFyY2gocidcYig/UDxzdGF0ZW1lbnQ+aWZ8
Zm9yfGZvcmVhY2h8d2hpbGV8c3dpdGNoKVxzKlwoKD9QPHJlbWFpbmRlcj4uKikkJywgbGluZSkK
ICAgICBpZiBtYXRjaGVkOgogICAgICAgICBzdGF0ZW1lbnQgPSBtYXRjaGVkLmdyb3VwKCdzdGF0
ZW1lbnQnKQotICAgICAgICBjb25kaXRpb24sIHJlc3QgPSB1cF90b191bm1hdGNoZWRfY2xvc2lu
Z19wYXJlbihtYXRjaGVkLmdyb3VwKCdyZW1pbmRlcicpKQorICAgICAgICBjb25kaXRpb24sIHJl
c3QgPSB1cF90b191bm1hdGNoZWRfY2xvc2luZ19wYXJlbihtYXRjaGVkLmdyb3VwKCdyZW1haW5k
ZXInKSkKICAgICAgICAgaWYgY29uZGl0aW9uIGlzIG5vdCBOb25lOgogICAgICAgICAgICAgY29u
ZGl0aW9uX21hdGNoID0gc2VhcmNoKHInKD9QPGxlYWRpbmc+WyBdKikoP1A8c2VwYXJhdG9yPi4p
LipbXiBdKyg/UDx0cmFpbGluZz5bIF0qKScsIGNvbmRpdGlvbikKICAgICAgICAgICAgIGlmIGNv
bmRpdGlvbl9tYXRjaDoKICAgICAgICAgICAgICAgICBuX2xlYWRpbmcgPSBsZW4oY29uZGl0aW9u
X21hdGNoLmdyb3VwKCdsZWFkaW5nJykpCiAgICAgICAgICAgICAgICAgbl90cmFpbGluZyA9IGxl
bihjb25kaXRpb25fbWF0Y2guZ3JvdXAoJ3RyYWlsaW5nJykpCi0gICAgICAgICAgICAgICAgaWYg
bl9sZWFkaW5nICE9IG5fdHJhaWxpbmc6Ci0gICAgICAgICAgICAgICAgICAgIGZvcl9leGNlcHRp
b24gPSBzdGF0ZW1lbnQgPT0gJ2ZvcicgYW5kICgKLSAgICAgICAgICAgICAgICAgICAgICAgIChj
b25kaXRpb24uc3RhcnRzd2l0aCgnIDsnKSBhbmQgbl90cmFpbGluZyA9PSAwKSBvcgotICAgICAg
ICAgICAgICAgICAgICAgICAgKGNvbmRpdGlvbi5lbmRzd2l0aCgnOyAnKSAgIGFuZCBuX2xlYWRp
bmcgPT0gMCkpCisgICAgICAgICAgICAgICAgaWYgbl9sZWFkaW5nICE9IDA6CisgICAgICAgICAg
ICAgICAgICAgIGZvcl9leGNlcHRpb24gPSBzdGF0ZW1lbnQgPT0gJ2ZvcicgYW5kIGNvbmRpdGlv
bi5zdGFydHN3aXRoKCcgOycpCiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBmb3JfZXhjZXB0
aW9uOgogICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IobGluZV9udW1iZXIsICd3aGl0ZXNw
YWNlL3BhcmVucycsIDUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnTWlzbWF0Y2hp
bmcgc3BhY2VzIGluc2lkZSAoKSBpbiAlcycgJSBzdGF0ZW1lbnQpCi0gICAgICAgICAgICAgICAg
aWYgbl9sZWFkaW5nID4gMToKLSAgICAgICAgICAgICAgICAgICAgZXJyb3IobGluZV9udW1iZXIs
ICd3aGl0ZXNwYWNlL3BhcmVucycsIDUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICdTaG91
bGQgaGF2ZSB6ZXJvIG9yIG9uZSBzcGFjZXMgaW5zaWRlICggYW5kICkgaW4gJXMnICUKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgc3RhdGVtZW50KQorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgJ0V4dHJhIHNwYWNlIGFmdGVyICggaW4gJXMnICUgc3RhdGVtZW50KQorICAgICAgICAg
ICAgICAgIGlmIG5fdHJhaWxpbmcgIT0gMDoKKyAgICAgICAgICAgICAgICAgICAgZm9yX2V4Y2Vw
dGlvbiA9IHN0YXRlbWVudCA9PSAnZm9yJyBhbmQgY29uZGl0aW9uLmVuZHN3aXRoKCc7ICcpCisg
ICAgICAgICAgICAgICAgICAgIGlmIG5vdCBmb3JfZXhjZXB0aW9uOgorICAgICAgICAgICAgICAg
ICAgICAgICAgZXJyb3IobGluZV9udW1iZXIsICd3aGl0ZXNwYWNlL3BhcmVucycsIDUsCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gJXMnICUg
c3RhdGVtZW50KQogCiAgICAgICAgICAgICAjIERvIG5vdCBjaGVjayBmb3IgbW9yZSB0aGFuIG9u
ZSBjb21tYW5kIGluIG1hY3JvcwogICAgICAgICAgICAgaW5fbWFjcm8gPSBtYXRjaChyJ1xzKiNk
ZWZpbmUnLCBsaW5lKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9z
dHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHkKb2xkIG1vZGUgMTAwNjQ0Cm5l
dyBtb2RlIDEwMDc1NQppbmRleCBjNDczOGY5Li44NWM2YzFlCi0tLSBhL1dlYktpdFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHkKKysrIGIvV2Vi
S2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5w
eQpAQCAtMTE2MywyOCArMTE2MywzMiBAQCBjbGFzcyBDcHBTdHlsZVRlc3QoQ3BwU3R5bGVUZXN0
QmFzZSk6CiAgICAgICAgICAgICAnJykKIAogICAgIGRlZiB0ZXN0X21pc21hdGNoaW5nX3NwYWNl
c19pbl9wYXJlbnMoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2lmIChmb28gKSB7
JywgJ01pc21hdGNoaW5nIHNwYWNlcyBpbnNpZGUgKCkgaW4gaWYnCisgICAgICAgIHNlbGYuYXNz
ZXJ0X2xpbnQoJ2lmIChmb28gKSB7JywgJ0V4dHJhIHNwYWNlIGJlZm9yZSApIGluIGlmJwogICAg
ICAgICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKLSAgICAg
ICAgc2VsZi5hc3NlcnRfbGludCgnc3dpdGNoICggZm9vKSB7JywgJ01pc21hdGNoaW5nIHNwYWNl
cyBpbnNpZGUgKCkgaW4gc3dpdGNoJworICAgICAgICBzZWxmLmFzc2VydF9saW50KCdzd2l0Y2gg
KCBmb28pIHsnLCAnRXh0cmEgc3BhY2UgYWZ0ZXIgKCBpbiBzd2l0Y2gnCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQotICAgICAgICBzZWxmLmFz
c2VydF9saW50KCdmb3IgKGZvbzsgYmE7IGJhciApIHsnLCAnTWlzbWF0Y2hpbmcgc3BhY2VzIGlu
c2lkZSAoKSBpbiBmb3InCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoZm9vOyBiYTsg
YmFyICkgeycsICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiBmb3InCiAgICAgICAgICAgICAgICAg
ICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQotICAgICAgICBzZWxmLmFzc2Vy
dF9saW50KCdmb3IgKChmb28pOyAoYmEpOyAoYmFyKSApIHsnLCAnTWlzbWF0Y2hpbmcgc3BhY2Vz
IGluc2lkZSAoKSBpbiBmb3InCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoKGZvbyk7
IChiYSk7IChiYXIpICkgeycsICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiBmb3InCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQogICAgICAgICBz
ZWxmLmFzc2VydF9saW50KCdmb3IgKDsgZm9vOyBiYXIpIHsnLCAnJykKICAgICAgICAgc2VsZi5h
c3NlcnRfbGludCgnZm9yICg7IChmb28pOyAoYmFyKSkgeycsICcnKQogICAgICAgICBzZWxmLmFz
c2VydF9saW50KCdmb3IgKCA7IGZvbzsgYmFyKSB7JywgJycpCiAgICAgICAgIHNlbGYuYXNzZXJ0
X2xpbnQoJ2ZvciAoIDsgKGZvbyk7IChiYXIpKSB7JywgJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0
X2xpbnQoJ2ZvciAoIDsgZm9vOyBiYXIgKSB7JywgJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0X2xp
bnQoJ2ZvciAoIDsgKGZvbyk7IChiYXIpICkgeycsICcnKQotICAgICAgICBzZWxmLmFzc2VydF9s
aW50KCdmb3IgKGZvbzsgYmFyOyApIHsnLCAnJykKLSAgICAgICAgc2VsZi5hc3NlcnRfbGludCgn
Zm9yICgoZm9vKTsgKGJhcik7ICkgeycsICcnKQotICAgICAgICBzZWxmLmFzc2VydF9saW50KCdm
b3JlYWNoIChmb28sIGZvb3MgKSB7JywgJ01pc21hdGNoaW5nIHNwYWNlcyBpbnNpZGUgKCkgaW4g
Zm9yZWFjaCcKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICggOyBmb287IGJhciApIHsn
LCAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gZm9yJwogICAgICAgICAgICAgICAgICAgICAgICAg
ICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKLSAgICAgICAgc2VsZi5hc3NlcnRfbGludCgn
Zm9yZWFjaCAoIGZvbywgZm9vcykgeycsICdNaXNtYXRjaGluZyBzcGFjZXMgaW5zaWRlICgpIGlu
IGZvcmVhY2gnCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoIDsgKGZvbyk7IChiYXIp
ICkgeycsICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiBmb3InCisgICAgICAgICAgICAgICAgICAg
ICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQorICAgICAgICBzZWxmLmFzc2VydF9s
aW50KCdmb3IgKGZvbzsgYmFyOyApIHsnLCAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gZm9yJwor
ICAgICAgICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKKyAg
ICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICgoZm9vKTsgKGJhcik7ICkgeycsICdFeHRyYSBz
cGFjZSBiZWZvcmUgKSBpbiBmb3InCisgICAgICAgICAgICAgICAgICAgICAgICAgJyAgW3doaXRl
c3BhY2UvcGFyZW5zXSBbNV0nKQorICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3JlYWNoIChm
b28sIGZvb3MgKSB7JywgJ0V4dHJhIHNwYWNlIGJlZm9yZSApIGluIGZvcmVhY2gnCisgICAgICAg
ICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQorICAgICAgICBz
ZWxmLmFzc2VydF9saW50KCdmb3JlYWNoICggZm9vLCBmb29zKSB7JywgJ0V4dHJhIHNwYWNlIGFm
dGVyICggaW4gZm9yZWFjaCcKKyAgICAgICAgICAgICAgICAgICAgICAgICAnICBbd2hpdGVzcGFj
ZS9wYXJlbnNdIFs1XScpCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ3doaWxlICggIGZvbykg
eycsICdFeHRyYSBzcGFjZSBhZnRlciAoIGluIHdoaWxlJwogICAgICAgICAgICAgICAgICAgICAg
ICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKLSAgICAgICAgc2VsZi5hc3NlcnRfbGlu
dCgnd2hpbGUgKCAgZm9vICApIHsnLCAnU2hvdWxkIGhhdmUgemVybyBvciBvbmUgc3BhY2VzIGlu
c2lkZScKLSAgICAgICAgICAgICAgICAgICAgICAgICAnICggYW5kICkgaW4gd2hpbGUgIFt3aGl0
ZXNwYWNlL3BhcmVuc10gWzVdJykKIAogICAgIGRlZiB0ZXN0X3NwYWNpbmdfZm9yX2ZuY2FsbChz
ZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnaWYgKGZvbykgeycsICcnKQpAQCAtMzAz
OCw3ICszMDQyLDcgQEAgY2xhc3MgV2ViS2l0U3R5bGVUZXN0KENwcFN0eWxlVGVzdEJhc2UpOgog
ICAgICAgICAgICAgJycpCiAgICAgICAgIHNlbGYuYXNzZXJ0X211bHRpX2xpbmVfbGludCgKICAg
ICAgICAgICAgICcjZGVmaW5lIFRFU1RfQVNTRVJUKGV4cHJlc3Npb24pIGRvIHsgaWYgKCAhKGV4
cHJlc3Npb24pKSB7IFRlc3RzQ29udHJvbGxlcjo6c2hhcmVkKCkudGVzdEZhaWxlZChfX0ZJTEVf
XywgX19MSU5FX18sICNleHByZXNzaW9uKTsgcmV0dXJuOyB9IH0gd2hpbGUgKDApXG4nLAotICAg
ICAgICAgICAgJ01pc21hdGNoaW5nIHNwYWNlcyBpbnNpZGUgKCkgaW4gaWYgIFt3aGl0ZXNwYWNl
L3BhcmVuc10gWzVdJykKKyAgICAgICAgICAgICdFeHRyYSBzcGFjZSBhZnRlciAoIGluIGlmICBb
d2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCiAgICAgICAgICMgRklYTUU6IGN1cnJlbnRseSB3ZSBv
bmx5IGNoZWNrIGZpcnN0IGNvbmRpdGlvbmFsLCBzbyB3ZSBjYW5ub3QgZGV0ZWN0IGVycm9ycyBp
biBuZXh0IG9uZXMuCiAgICAgICAgICMgc2VsZi5hc3NlcnRfbXVsdGlfbGluZV9saW50KAogICAg
ICAgICAjICAgICAnI2RlZmluZSBURVNUX0FTU0VSVChleHByZXNzaW9uKSBkbyB7IGlmICghKGV4
cHJlc3Npb24pKSB7IFRlc3RzQ29udHJvbGxlcjo6c2hhcmVkKCkudGVzdEZhaWxlZChfX0ZJTEVf
XywgX19MSU5FX18sICNleHByZXNzaW9uKTsgcmV0dXJuOyB9IH0gd2hpbGUgKDAgKVxuJywKLS0g
CjEuNy4xCgoKRnJvbSA3MmFkOTBmYjc4OGMxY2ZlYjM4YWVjOGRiMTg5NTNlMDA1Nzk5NjQxIE1v
biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBTYW0gTWFnbnVzb24gPHNtYWdudXNvbkBuZXRm
bGl4LmNvbT4KRGF0ZTogV2VkLCAxNiBKdW4gMjAxMCAxMToyNTowNiAtMDcwMApTdWJqZWN0OiBb
UEFUQ0ggMi8yXSBGb2xsb3cgcHJvcGVyIGNvbnZlbnRpb24gZm9yIHZhcmlhYmxlIGRlY2xhcmF0
aW9uIHNwYWNpbmcuCiBidWctNDA3MjQKCi0tLQogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEyICsrKysrKysrKysrKwogLi4uL1NjcmlwdHMv
d2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAucHkgICAgICAgfCAgICA1ICsrKysrCiAuLi4v
d2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHkgICAgICB8ICAgIDQgKysr
KwogMyBmaWxlcyBjaGFuZ2VkLCAyMSBpbnNlcnRpb25zKCspLCAwIGRlbGV0aW9ucygtKQoKZGlm
ZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpp
bmRleCA1M2Q2MzJmLi5iYWZhODlhIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTAtMDYtMTcg
IFNhbSBNYWdudXNvbiAgPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb2xsb3cgcHJvcGVyIGNvbnZlbnRpb24g
Zm9yIHZhcmlhYmxlIGRlY2xhcmF0aW9uIHNwYWNpbmcuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDcyNAorCisgICAgICAgIE1vZGlmaWVkIHRlc3Qg
c28gdGhhdCAnaW50ICAgYTsnIGlzIG5vdCBhbGxvd2VkLgorCisgICAgICAgICogU2NyaXB0cy93
ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtp
dHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5OgorCiAyMDEwLTA2LTE2ICBTYW0g
TWFnbnVzb24gIDxzbWFnbnVzb25AbmV0ZmxpeC5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9z
dHlsZS9wcm9jZXNzb3JzL2NwcC5weQppbmRleCA3NjU2Y2I5Li4wYTEwMThiIDEwMDc1NQotLS0g
YS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5Cisr
KyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAucHkK
QEAgLTEzNjQsNiArMTM2NCwxMSBAQCBkZWYgY2hlY2tfc3BhY2luZyhmaWxlX2V4dGVuc2lvbiwg
Y2xlYW5fbGluZXMsIGxpbmVfbnVtYmVyLCBlcnJvcik6CiAgICAgICAgIGVycm9yKGxpbmVfbnVt
YmVyLCAnd2hpdGVzcGFjZS9jb21tYScsIDMsCiAgICAgICAgICAgICAgICdNaXNzaW5nIHNwYWNl
IGFmdGVyICwnKQogCisgICAgbWF0Y2hlZCA9IHNlYXJjaChyJ15ccyooP1A8dHlwZT5cdyspXHNc
cysoP1A8bmFtZT5cdyspJywgbGluZSkKKyAgICBpZiBtYXRjaGVkOgorICAgICAgICBlcnJvcihs
aW5lX251bWJlciwgJ3doaXRlc3BhY2UvZGVjbGFyYXRpb24nLCAzLAorICAgICAgICAgICAgICAn
RGVjbGFyYXRpb24gaGFzIHNwYWNlIGJldHdlZW4gJXMgYW5kICVzICcgJSAobWF0Y2hlZC5ncm91
cCgndHlwZScpLCBtYXRjaGVkLmdyb3VwKCduYW1lJykpICkKKwogICAgIGlmIGZpbGVfZXh0ZW5z
aW9uID09ICdjcHAnOgogICAgICAgICAjIEMrKyBzaG91bGQgaGF2ZSB0aGUgJiBvciAqIGJlc2lk
ZSB0aGUgdHlwZSBub3QgdGhlIHZhcmlhYmxlIG5hbWUuCiAgICAgICAgIG1hdGNoZWQgPSBtYXRj
aChyJ1xzKlx3Kyg/PCFcYnJldHVybnxcYmRlbGV0ZSlccysoP1A8cG9pbnRlcl9vcGVyYXRvcj5c
KnxcJilcdysnLCBsaW5lKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHkKaW5kZXggODVjNmMxZS4u
NDQ1MTFmOSAxMDA3NTUKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9w
cm9jZXNzb3JzL2NwcF91bml0dGVzdC5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtp
dHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5CkBAIC0xNTQ1LDYgKzE1NDUsMTAg
QEAgY2xhc3MgQ3BwU3R5bGVUZXN0KENwcFN0eWxlVGVzdEJhc2UpOgogICAgICAgICBzZWxmLmFz
c2VydF9saW50KCdmKGEsIC8qIG5hbWUgKi8gYik7JywgJycpCiAgICAgICAgIHNlbGYuYXNzZXJ0
X2xpbnQoJ2YoYSwgLyogbmFtZSAqL2IpOycsICcnKQogCisgICAgZGVmIHRlc3RfZGVjbGFyYXRp
b24oc2VsZik6CisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ludCBhOycsICcnKQorICAgICAg
ICBzZWxmLmFzc2VydF9saW50KCdpbnQgICBhOycsICdEZWNsYXJhdGlvbiBoYXMgc3BhY2UgYmV0
d2VlbiBpbnQgYW5kIGEgICBbd2hpdGVzcGFjZS9kZWNsYXJhdGlvbl0gWzNdJykKKwogICAgIGRl
ZiB0ZXN0X3BvaW50ZXJfcmVmZXJlbmNlX21hcmtlcl9sb2NhdGlvbihzZWxmKToKICAgICAgICAg
c2VsZi5hc3NlcnRfbGludCgnaW50KiBiOycsICcnLCAnZm9vLmNwcCcpCiAgICAgICAgIHNlbGYu
YXNzZXJ0X2xpbnQoJ2ludCAqYjsnLAotLSAKMS43LjEKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59010</attachid>
            <date>2010-06-17 10:49:26 -0700</date>
            <delta_ts>2010-06-17 10:51:49 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>bug-40723.patch</filename>
            <type>text/plain</type>
            <size>11049</size>
            <attacher name="Sam Magnuson">smagnuso</attacher>
            
              <data encoding="base64">RnJvbSAyYTcwN2IzNzM0YTljNTcxNDZmMzdhOWNkYjk1NmY4MWRjY2FiZmQyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTYW0gTWFnbnVzb24gPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4K
RGF0ZTogV2VkLCAxNiBKdW4gMjAxMCAxMToxMjo0MyAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMS8y
XSBGb2xsb3cgcHJvcGVyIGNvbnZlbnRpb24gZm9yIGlmL3N3aXRjaC93aGlsZQogYnVnLTQwNzIz
CgotLS0KIFdlYktpdFRvb2xzL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAxNCArKysrKysrKysrCiAuLi4vU2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3Jz
L2NwcC5weSAgICAgICB8ICAgMjMgKysrKysrKystLS0tLS0tLS0KIC4uLi93ZWJraXRweS9zdHls
ZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weSAgICAgIHwgICAyNiArKysrKysrKysrLS0tLS0t
LS0tCiAzIGZpbGVzIGNoYW5nZWQsIDM5IGluc2VydGlvbnMoKyksIDI0IGRlbGV0aW9ucygtKQog
bW9kZSBjaGFuZ2UgMTAwNjQ0ID0+IDEwMDc1NSBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5
L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5CiBtb2RlIGNoYW5nZSAxMDA2NDQgPT4gMTAwNzU1IFdl
YktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3Qu
cHkKCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9XZWJLaXRUb29scy9DaGFu
Z2VMb2cKaW5kZXggZjYxMjI3OC4uNTNkNjMyZiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEw
LTA2LTE2ICBTYW0gTWFnbnVzb24gIDxzbWFnbnVzb25AbmV0ZmxpeC5jb20+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRm9sbG93IHByb3BlciBjb252
ZW50aW9uIGZvciBpZi9zd2l0Y2gvd2hpbGUgYXMgSSd2ZSBkaXNjb3ZlcmVkCisgICAgICAgIHRo
ZW0gdG8gYmUgdGhyb3VnaCBteSByZXZpZXcgcHJvY2Vzc2VzLgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDA3MjMKKworICAgICAgICBNb2RpZmllZCB0
ZXN0IHNvIHRoYXQgaWYoIGZvbyApIGlzIG5vdCBhbGxvd2VkIGFzIGl0IGFwcGVhcnMgbm90Cisg
ICAgICAgIHRvIGJlIHRoZSBhY2NlcHRlZCBjb252ZW50aW9uLgorCisgICAgICAgICogU2NyaXB0
cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5OgorCiAyMDEwLTA2LTAyICBU
YXN1a3UgU3V6dWtpICA8dGFzdWt1LnN1enVraUBub2tpYS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgU2hpbmljaGlybyBIYW1hamkuCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRz
L3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93
ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weQpvbGQgbW9kZSAxMDA2NDQKbmV3IG1vZGUg
MTAwNzU1CmluZGV4IDgxNGI2MDcuLjc2NTZjYjkKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93
ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRz
L3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5CkBAIC0xNjEsNyArMTYxLDcgQEAgZGVm
IHVwX3RvX3VubWF0Y2hlZF9jbG9zaW5nX3BhcmVuKHMpOgogCiAgICAgUmV0dXJuczoKICAgICAg
IEEgcGFpciBvZiBzdHJpbmdzIChwcmVmaXggYmVmb3JlIGZpcnN0IHVubWF0Y2hlZCAnKScsCi0g
ICAgICByZW1pbmRlciBvZiBzIGFmdGVyIGZpcnN0IHVubWF0Y2hlZCAnKScpLCBlLmcuLAorICAg
ICAgcmVtYWluZGVyIG9mIHMgYWZ0ZXIgZmlyc3QgdW5tYXRjaGVkICcpJyksIGUuZy4sCiAgICAg
ICB1cF90b191bm1hdGNoZWRfY2xvc2luZ19wYXJlbigiYSA9PSAoYiArIGMpKSB7ICIpCiAgICAg
ICByZXR1cm5zICJhID09IChiICsgYykiLCAiIHsiLgogICAgICAgUmV0dXJucyBOb25lLCBOb25l
IGlmIHRoZXJlIGlzIG5vIHVubWF0Y2hlZCAnKScKQEAgLTEzMzMsMjYgKzEzMzMsMjUgQEAgZGVm
IGNoZWNrX3NwYWNpbmcoZmlsZV9leHRlbnNpb24sIGNsZWFuX2xpbmVzLCBsaW5lX251bWJlciwg
ZXJyb3IpOgogICAgICMgdGhlcmUgc2hvdWxkIGVpdGhlciBiZSB6ZXJvIG9yIG9uZSBzcGFjZXMg
aW5zaWRlIHRoZSBwYXJlbnMuCiAgICAgIyBXZSBkb24ndCB3YW50OiAiaWYgKCBmb28pIiBvciAi
aWYgKCBmb28gICApIi4KICAgICAjIEV4Y2VwdGlvbjogImZvciAoIDsgZm9vOyBiYXIpIiBhbmQg
ImZvciAoZm9vOyBiYXI7ICkiIGFyZSBhbGxvd2VkLgotICAgIG1hdGNoZWQgPSBzZWFyY2gocidc
Yig/UDxzdGF0ZW1lbnQ+aWZ8Zm9yfGZvcmVhY2h8d2hpbGV8c3dpdGNoKVxzKlwoKD9QPHJlbWlu
ZGVyPi4qKSQnLCBsaW5lKQorICAgIG1hdGNoZWQgPSBzZWFyY2gocidcYig/UDxzdGF0ZW1lbnQ+
aWZ8Zm9yfGZvcmVhY2h8d2hpbGV8c3dpdGNoKVxzKlwoKD9QPHJlbWFpbmRlcj4uKikkJywgbGlu
ZSkKICAgICBpZiBtYXRjaGVkOgogICAgICAgICBzdGF0ZW1lbnQgPSBtYXRjaGVkLmdyb3VwKCdz
dGF0ZW1lbnQnKQotICAgICAgICBjb25kaXRpb24sIHJlc3QgPSB1cF90b191bm1hdGNoZWRfY2xv
c2luZ19wYXJlbihtYXRjaGVkLmdyb3VwKCdyZW1pbmRlcicpKQorICAgICAgICBjb25kaXRpb24s
IHJlc3QgPSB1cF90b191bm1hdGNoZWRfY2xvc2luZ19wYXJlbihtYXRjaGVkLmdyb3VwKCdyZW1h
aW5kZXInKSkKICAgICAgICAgaWYgY29uZGl0aW9uIGlzIG5vdCBOb25lOgogICAgICAgICAgICAg
Y29uZGl0aW9uX21hdGNoID0gc2VhcmNoKHInKD9QPGxlYWRpbmc+WyBdKikoP1A8c2VwYXJhdG9y
Pi4pLipbXiBdKyg/UDx0cmFpbGluZz5bIF0qKScsIGNvbmRpdGlvbikKICAgICAgICAgICAgIGlm
IGNvbmRpdGlvbl9tYXRjaDoKICAgICAgICAgICAgICAgICBuX2xlYWRpbmcgPSBsZW4oY29uZGl0
aW9uX21hdGNoLmdyb3VwKCdsZWFkaW5nJykpCiAgICAgICAgICAgICAgICAgbl90cmFpbGluZyA9
IGxlbihjb25kaXRpb25fbWF0Y2guZ3JvdXAoJ3RyYWlsaW5nJykpCi0gICAgICAgICAgICAgICAg
aWYgbl9sZWFkaW5nICE9IG5fdHJhaWxpbmc6Ci0gICAgICAgICAgICAgICAgICAgIGZvcl9leGNl
cHRpb24gPSBzdGF0ZW1lbnQgPT0gJ2ZvcicgYW5kICgKLSAgICAgICAgICAgICAgICAgICAgICAg
IChjb25kaXRpb24uc3RhcnRzd2l0aCgnIDsnKSBhbmQgbl90cmFpbGluZyA9PSAwKSBvcgotICAg
ICAgICAgICAgICAgICAgICAgICAgKGNvbmRpdGlvbi5lbmRzd2l0aCgnOyAnKSAgIGFuZCBuX2xl
YWRpbmcgPT0gMCkpCisgICAgICAgICAgICAgICAgaWYgbl9sZWFkaW5nICE9IDA6CisgICAgICAg
ICAgICAgICAgICAgIGZvcl9leGNlcHRpb24gPSBzdGF0ZW1lbnQgPT0gJ2ZvcicgYW5kIGNvbmRp
dGlvbi5zdGFydHN3aXRoKCcgOycpCiAgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBmb3JfZXhj
ZXB0aW9uOgogICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IobGluZV9udW1iZXIsICd3aGl0
ZXNwYWNlL3BhcmVucycsIDUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnTWlzbWF0
Y2hpbmcgc3BhY2VzIGluc2lkZSAoKSBpbiAlcycgJSBzdGF0ZW1lbnQpCi0gICAgICAgICAgICAg
ICAgaWYgbl9sZWFkaW5nID4gMToKLSAgICAgICAgICAgICAgICAgICAgZXJyb3IobGluZV9udW1i
ZXIsICd3aGl0ZXNwYWNlL3BhcmVucycsIDUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICdT
aG91bGQgaGF2ZSB6ZXJvIG9yIG9uZSBzcGFjZXMgaW5zaWRlICggYW5kICkgaW4gJXMnICUKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGVtZW50KQorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgJ0V4dHJhIHNwYWNlIGFmdGVyICggaW4gJXMnICUgc3RhdGVtZW50KQorICAgICAg
ICAgICAgICAgIGlmIG5fdHJhaWxpbmcgIT0gMDoKKyAgICAgICAgICAgICAgICAgICAgZm9yX2V4
Y2VwdGlvbiA9IHN0YXRlbWVudCA9PSAnZm9yJyBhbmQgY29uZGl0aW9uLmVuZHN3aXRoKCc7ICcp
CisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBmb3JfZXhjZXB0aW9uOgorICAgICAgICAgICAg
ICAgICAgICAgICAgZXJyb3IobGluZV9udW1iZXIsICd3aGl0ZXNwYWNlL3BhcmVucycsIDUsCisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gJXMn
ICUgc3RhdGVtZW50KQogCiAgICAgICAgICAgICAjIERvIG5vdCBjaGVjayBmb3IgbW9yZSB0aGFu
IG9uZSBjb21tYW5kIGluIG1hY3JvcwogICAgICAgICAgICAgaW5fbWFjcm8gPSBtYXRjaChyJ1xz
KiNkZWZpbmUnLCBsaW5lKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRw
eS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMv
d2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHkKb2xkIG1vZGUgMTAwNjQ0
Cm5ldyBtb2RlIDEwMDc1NQppbmRleCBjNDczOGY5Li43MjhhMjEzCi0tLSBhL1dlYktpdFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHkKKysrIGIv
V2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVz
dC5weQpAQCAtMTE2MywyOCArMTE2MywzMCBAQCBjbGFzcyBDcHBTdHlsZVRlc3QoQ3BwU3R5bGVU
ZXN0QmFzZSk6CiAgICAgICAgICAgICAnJykKIAogICAgIGRlZiB0ZXN0X21pc21hdGNoaW5nX3Nw
YWNlc19pbl9wYXJlbnMoc2VsZik6Ci0gICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2lmIChmb28g
KSB7JywgJ01pc21hdGNoaW5nIHNwYWNlcyBpbnNpZGUgKCkgaW4gaWYnCisgICAgICAgIHNlbGYu
YXNzZXJ0X2xpbnQoJ2lmIChmb28gKSB7JywgJ0V4dHJhIHNwYWNlIGJlZm9yZSApIGluIGlmJwog
ICAgICAgICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKLSAg
ICAgICAgc2VsZi5hc3NlcnRfbGludCgnc3dpdGNoICggZm9vKSB7JywgJ01pc21hdGNoaW5nIHNw
YWNlcyBpbnNpZGUgKCkgaW4gc3dpdGNoJworICAgICAgICBzZWxmLmFzc2VydF9saW50KCdzd2l0
Y2ggKCBmb28pIHsnLCAnRXh0cmEgc3BhY2UgYWZ0ZXIgKCBpbiBzd2l0Y2gnCiAgICAgICAgICAg
ICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQotICAgICAgICBzZWxm
LmFzc2VydF9saW50KCdmb3IgKGZvbzsgYmE7IGJhciApIHsnLCAnTWlzbWF0Y2hpbmcgc3BhY2Vz
IGluc2lkZSAoKSBpbiBmb3InCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoZm9vOyBi
YTsgYmFyICkgeycsICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiBmb3InCiAgICAgICAgICAgICAg
ICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQotICAgICAgICBzZWxmLmFz
c2VydF9saW50KCdmb3IgKChmb28pOyAoYmEpOyAoYmFyKSApIHsnLCAnTWlzbWF0Y2hpbmcgc3Bh
Y2VzIGluc2lkZSAoKSBpbiBmb3InCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoKGZv
byk7IChiYSk7IChiYXIpICkgeycsICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiBmb3InCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQogICAgICAg
ICBzZWxmLmFzc2VydF9saW50KCdmb3IgKDsgZm9vOyBiYXIpIHsnLCAnJykKICAgICAgICAgc2Vs
Zi5hc3NlcnRfbGludCgnZm9yICg7IChmb28pOyAoYmFyKSkgeycsICcnKQogICAgICAgICBzZWxm
LmFzc2VydF9saW50KCdmb3IgKCA7IGZvbzsgYmFyKSB7JywgJycpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0X2xpbnQoJ2ZvciAoIDsgKGZvbyk7IChiYXIpKSB7JywgJycpCi0gICAgICAgIHNlbGYuYXNz
ZXJ0X2xpbnQoJ2ZvciAoIDsgZm9vOyBiYXIgKSB7JywgJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0
X2xpbnQoJ2ZvciAoIDsgKGZvbyk7IChiYXIpICkgeycsICcnKQotICAgICAgICBzZWxmLmFzc2Vy
dF9saW50KCdmb3IgKGZvbzsgYmFyOyApIHsnLCAnJykKKyAgICAgICAgc2VsZi5hc3NlcnRfbGlu
dCgnZm9yICggOyBmb287IGJhciApIHsnLCAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gZm9yJwor
ICAgICAgICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKKyAg
ICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICggOyAoZm9vKTsgKGJhcikgKSB7JywgJ0V4dHJh
IHNwYWNlIGJlZm9yZSApIGluIGZvcicKKyAgICAgICAgICAgICAgICAgICAgICAgICAnICBbd2hp
dGVzcGFjZS9wYXJlbnNdIFs1XScpCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoZm9v
OyBiYXI7ICkgeycsICcnICkKICAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICgoZm9vKTsg
KGJhcik7ICkgeycsICcnKQotICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3JlYWNoIChmb28s
IGZvb3MgKSB7JywgJ01pc21hdGNoaW5nIHNwYWNlcyBpbnNpZGUgKCkgaW4gZm9yZWFjaCcKKyAg
ICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yZWFjaCAoZm9vLCBmb29zICkgeycsICdFeHRyYSBz
cGFjZSBiZWZvcmUgKSBpbiBmb3JlYWNoJworICAgICAgICAgICAgICAgICAgICAgICAgICcgIFt3
aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yZWFj
aCAoIGZvbywgZm9vcykgeycsICdFeHRyYSBzcGFjZSBhZnRlciAoIGluIGZvcmVhY2gnCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQotICAgICAg
ICBzZWxmLmFzc2VydF9saW50KCdmb3JlYWNoICggZm9vLCBmb29zKSB7JywgJ01pc21hdGNoaW5n
IHNwYWNlcyBpbnNpZGUgKCkgaW4gZm9yZWFjaCcKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgn
d2hpbGUgKCAgZm9vKSB7JywgJ0V4dHJhIHNwYWNlIGFmdGVyICggaW4gd2hpbGUnCiAgICAgICAg
ICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQotICAgICAgICBz
ZWxmLmFzc2VydF9saW50KCd3aGlsZSAoICBmb28gICkgeycsICdTaG91bGQgaGF2ZSB6ZXJvIG9y
IG9uZSBzcGFjZXMgaW5zaWRlJwotICAgICAgICAgICAgICAgICAgICAgICAgICcgKCBhbmQgKSBp
biB3aGlsZSAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQogCiAgICAgZGVmIHRlc3Rfc3BhY2lu
Z19mb3JfZm5jYWxsKHNlbGYpOgogICAgICAgICBzZWxmLmFzc2VydF9saW50KCdpZiAoZm9vKSB7
JywgJycpCkBAIC0zMDM4LDcgKzMwNDAsNyBAQCBjbGFzcyBXZWJLaXRTdHlsZVRlc3QoQ3BwU3R5
bGVUZXN0QmFzZSk6CiAgICAgICAgICAgICAnJykKICAgICAgICAgc2VsZi5hc3NlcnRfbXVsdGlf
bGluZV9saW50KAogICAgICAgICAgICAgJyNkZWZpbmUgVEVTVF9BU1NFUlQoZXhwcmVzc2lvbikg
ZG8geyBpZiAoICEoZXhwcmVzc2lvbikpIHsgVGVzdHNDb250cm9sbGVyOjpzaGFyZWQoKS50ZXN0
RmFpbGVkKF9fRklMRV9fLCBfX0xJTkVfXywgI2V4cHJlc3Npb24pOyByZXR1cm47IH0gfSB3aGls
ZSAoMClcbicsCi0gICAgICAgICAgICAnTWlzbWF0Y2hpbmcgc3BhY2VzIGluc2lkZSAoKSBpbiBp
ZiAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQorICAgICAgICAgICAgJ0V4dHJhIHNwYWNlIGFm
dGVyICggaW4gaWYgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKICAgICAgICAgIyBGSVhNRTog
Y3VycmVudGx5IHdlIG9ubHkgY2hlY2sgZmlyc3QgY29uZGl0aW9uYWwsIHNvIHdlIGNhbm5vdCBk
ZXRlY3QgZXJyb3JzIGluIG5leHQgb25lcy4KICAgICAgICAgIyBzZWxmLmFzc2VydF9tdWx0aV9s
aW5lX2xpbnQoCiAgICAgICAgICMgICAgICcjZGVmaW5lIFRFU1RfQVNTRVJUKGV4cHJlc3Npb24p
IGRvIHsgaWYgKCEoZXhwcmVzc2lvbikpIHsgVGVzdHNDb250cm9sbGVyOjpzaGFyZWQoKS50ZXN0
RmFpbGVkKF9fRklMRV9fLCBfX0xJTkVfXywgI2V4cHJlc3Npb24pOyByZXR1cm47IH0gfSB3aGls
ZSAoMCApXG4nLAotLSAKMS43LjEKCgpGcm9tIDg2MzJlNzMyMWYyMDJmMjJkNjdiNTcwYmMzMGJi
ODFmYmQyMTg4MzQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IFNhbSBNYWdudXNvbiA8
c21hZ251c29uQG5ldGZsaXguY29tPgpEYXRlOiBXZWQsIDE2IEp1biAyMDEwIDExOjI1OjA2IC0w
NzAwClN1YmplY3Q6IFtQQVRDSCAyLzJdIEZvbGxvdyBwcm9wZXIgY29udmVudGlvbiBmb3IgdmFy
aWFibGUgZGVjbGFyYXRpb24gc3BhY2luZy4KIGJ1Zy00MDcyNAoKLS0tCiBXZWJLaXRUb29scy9D
aGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTIgKysrKysrKysrKysr
CiAuLi4vU2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcC5weSAgICAgICB8ICAg
IDUgKysrKysKIC4uLi93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weSAg
ICAgIHwgICAgNCArKysrCiAzIGZpbGVzIGNoYW5nZWQsIDIxIGluc2VydGlvbnMoKyksIDAgZGVs
ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9v
bHMvQ2hhbmdlTG9nCmluZGV4IDUzZDYzMmYuLmJhZmE4OWEgMTAwNjQ0Ci0tLSBhL1dlYktpdFRv
b2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBA
QAorMjAxMC0wNi0xNyAgU2FtIE1hZ251c29uICA8c21hZ251c29uQG5ldGZsaXguY29tPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZvbGxvdyBwcm9w
ZXIgY29udmVudGlvbiBmb3IgdmFyaWFibGUgZGVjbGFyYXRpb24gc3BhY2luZy4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNzI0CisKKyAgICAgICAg
TW9kaWZpZWQgdGVzdCBzbyB0aGF0ICdpbnQgICBhOycgaXMgbm90IGFsbG93ZWQuCisKKyAgICAg
ICAgKiBTY3JpcHRzL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5OgorICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHk6CisKIDIw
MTAtMDYtMTYgIFNhbSBNYWdudXNvbiAgPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAucHkgYi9XZWJLaXRUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5CmluZGV4IDc2NTZjYjkuLjBhMTAx
OGIgMTAwNzU1Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vz
c29ycy9jcHAucHkKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9j
ZXNzb3JzL2NwcC5weQpAQCAtMTM2NCw2ICsxMzY0LDExIEBAIGRlZiBjaGVja19zcGFjaW5nKGZp
bGVfZXh0ZW5zaW9uLCBjbGVhbl9saW5lcywgbGluZV9udW1iZXIsIGVycm9yKToKICAgICAgICAg
ZXJyb3IobGluZV9udW1iZXIsICd3aGl0ZXNwYWNlL2NvbW1hJywgMywKICAgICAgICAgICAgICAg
J01pc3Npbmcgc3BhY2UgYWZ0ZXIgLCcpCiAKKyAgICBtYXRjaGVkID0gc2VhcmNoKHInXlxzKig/
UDx0eXBlPlx3Kylcc1xzKyg/UDxuYW1lPlx3KyknLCBsaW5lKQorICAgIGlmIG1hdGNoZWQ6Cisg
ICAgICAgIGVycm9yKGxpbmVfbnVtYmVyLCAnd2hpdGVzcGFjZS9kZWNsYXJhdGlvbicsIDMsCisg
ICAgICAgICAgICAgICdEZWNsYXJhdGlvbiBoYXMgc3BhY2UgYmV0d2VlbiAlcyBhbmQgJXMgJyAl
IChtYXRjaGVkLmdyb3VwKCd0eXBlJyksIG1hdGNoZWQuZ3JvdXAoJ25hbWUnKSkgKQorCiAgICAg
aWYgZmlsZV9leHRlbnNpb24gPT0gJ2NwcCc6CiAgICAgICAgICMgQysrIHNob3VsZCBoYXZlIHRo
ZSAmIG9yICogYmVzaWRlIHRoZSB0eXBlIG5vdCB0aGUgdmFyaWFibGUgbmFtZS4KICAgICAgICAg
bWF0Y2hlZCA9IG1hdGNoKHInXHMqXHcrKD88IVxicmV0dXJufFxiZGVsZXRlKVxzKyg/UDxwb2lu
dGVyX29wZXJhdG9yPlwqfFwmKVx3KycsIGxpbmUpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5IGIvV2ViS2l0
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weQpp
bmRleCA3MjhhMjEzLi41MTU0YmE2IDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5CisrKyBiL1dlYktpdFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHkKQEAgLTE1
NDMsNiArMTU0MywxMCBAQCBjbGFzcyBDcHBTdHlsZVRlc3QoQ3BwU3R5bGVUZXN0QmFzZSk6CiAg
ICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2YoYSwgLyogbmFtZSAqLyBiKTsnLCAnJykKICAgICAg
ICAgc2VsZi5hc3NlcnRfbGludCgnZihhLCAvKiBuYW1lICovYik7JywgJycpCiAKKyAgICBkZWYg
dGVzdF9kZWNsYXJhdGlvbihzZWxmKToKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnaW50IGE7
JywgJycpCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ludCAgIGE7JywgJ0RlY2xhcmF0aW9u
IGhhcyBzcGFjZSBiZXR3ZWVuIGludCBhbmQgYSAgIFt3aGl0ZXNwYWNlL2RlY2xhcmF0aW9uXSBb
M10nKQorCiAgICAgZGVmIHRlc3RfcG9pbnRlcl9yZWZlcmVuY2VfbWFya2VyX2xvY2F0aW9uKHNl
bGYpOgogICAgICAgICBzZWxmLmFzc2VydF9saW50KCdpbnQqIGI7JywgJycsICdmb28uY3BwJykK
ICAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnaW50ICpiOycsCi0tIAoxLjcuMQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59011</attachid>
            <date>2010-06-17 10:51:49 -0700</date>
            <delta_ts>2010-06-22 16:11:51 -0700</delta_ts>
            <desc>The right patch this time, sigh.</desc>
            <filename>bug-40723.patch</filename>
            <type>text/plain</type>
            <size>8169</size>
            <attacher name="Sam Magnuson">smagnuso</attacher>
            
              <data encoding="base64">RnJvbSAyYTcwN2IzNzM0YTljNTcxNDZmMzdhOWNkYjk1NmY4MWRjY2FiZmQyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBTYW0gTWFnbnVzb24gPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4K
RGF0ZTogV2VkLCAxNiBKdW4gMjAxMCAxMToxMjo0MyAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIEZv
bGxvdyBwcm9wZXIgY29udmVudGlvbiBmb3IgaWYvc3dpdGNoL3doaWxlCiBidWctNDA3MjMKCi0t
LQogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
IDE0ICsrKysrKysrKysKIC4uLi9TY3JpcHRzL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3Bw
LnB5ICAgICAgIHwgICAyMyArKysrKysrKy0tLS0tLS0tLQogLi4uL3dlYmtpdHB5L3N0eWxlL3By
b2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5ICAgICAgfCAgIDI2ICsrKysrKysrKystLS0tLS0tLS0K
IDMgZmlsZXMgY2hhbmdlZCwgMzkgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCiBtb2Rl
IGNoYW5nZSAxMDA2NDQgPT4gMTAwNzU1IFdlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5
bGUvcHJvY2Vzc29ycy9jcHAucHkKIG1vZGUgY2hhbmdlIDEwMDY0NCA9PiAxMDA3NTUgV2ViS2l0
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weQoK
ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBmNjEyMjc4Li41M2Q2MzJmIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTAtMDYt
MTYgIFNhbSBNYWdudXNvbiAgPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4KKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBGb2xsb3cgcHJvcGVyIGNvbnZlbnRp
b24gZm9yIGlmL3N3aXRjaC93aGlsZSBhcyBJJ3ZlIGRpc2NvdmVyZWQKKyAgICAgICAgdGhlbSB0
byBiZSB0aHJvdWdoIG15IHJldmlldyBwcm9jZXNzZXMuCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00MDcyMworCisgICAgICAgIE1vZGlmaWVkIHRlc3Qg
c28gdGhhdCBpZiggZm9vICkgaXMgbm90IGFsbG93ZWQgYXMgaXQgYXBwZWFycyBub3QKKyAgICAg
ICAgdG8gYmUgdGhlIGFjY2VwdGVkIGNvbnZlbnRpb24uCisKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHBfdW5pdHRlc3QucHk6CisKIDIwMTAtMDYtMDIgIFRhc3Vr
dSBTdXp1a2kgIDx0YXN1a3Uuc3V6dWtpQG5va2lhLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBi
eSBTaGluaWNoaXJvIEhhbWFqaS4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtp
dHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5Cm9sZCBtb2RlIDEwMDY0NApuZXcgbW9kZSAxMDA3
NTUKaW5kZXggODE0YjYwNy4uNzY1NmNiOQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtp
dHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwLnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0cHkvc3R5bGUvcHJvY2Vzc29ycy9jcHAucHkKQEAgLTE2MSw3ICsxNjEsNyBAQCBkZWYgdXBf
dG9fdW5tYXRjaGVkX2Nsb3NpbmdfcGFyZW4ocyk6CiAKICAgICBSZXR1cm5zOgogICAgICAgQSBw
YWlyIG9mIHN0cmluZ3MgKHByZWZpeCBiZWZvcmUgZmlyc3QgdW5tYXRjaGVkICcpJywKLSAgICAg
IHJlbWluZGVyIG9mIHMgYWZ0ZXIgZmlyc3QgdW5tYXRjaGVkICcpJyksIGUuZy4sCisgICAgICBy
ZW1haW5kZXIgb2YgcyBhZnRlciBmaXJzdCB1bm1hdGNoZWQgJyknKSwgZS5nLiwKICAgICAgIHVw
X3RvX3VubWF0Y2hlZF9jbG9zaW5nX3BhcmVuKCJhID09IChiICsgYykpIHsgIikKICAgICAgIHJl
dHVybnMgImEgPT0gKGIgKyBjKSIsICIgeyIuCiAgICAgICBSZXR1cm5zIE5vbmUsIE5vbmUgaWYg
dGhlcmUgaXMgbm8gdW5tYXRjaGVkICcpJwpAQCAtMTMzMywyNiArMTMzMywyNSBAQCBkZWYgY2hl
Y2tfc3BhY2luZyhmaWxlX2V4dGVuc2lvbiwgY2xlYW5fbGluZXMsIGxpbmVfbnVtYmVyLCBlcnJv
cik6CiAgICAgIyB0aGVyZSBzaG91bGQgZWl0aGVyIGJlIHplcm8gb3Igb25lIHNwYWNlcyBpbnNp
ZGUgdGhlIHBhcmVucy4KICAgICAjIFdlIGRvbid0IHdhbnQ6ICJpZiAoIGZvbykiIG9yICJpZiAo
IGZvbyAgICkiLgogICAgICMgRXhjZXB0aW9uOiAiZm9yICggOyBmb287IGJhcikiIGFuZCAiZm9y
IChmb287IGJhcjsgKSIgYXJlIGFsbG93ZWQuCi0gICAgbWF0Y2hlZCA9IHNlYXJjaChyJ1xiKD9Q
PHN0YXRlbWVudD5pZnxmb3J8Zm9yZWFjaHx3aGlsZXxzd2l0Y2gpXHMqXCgoP1A8cmVtaW5kZXI+
LiopJCcsIGxpbmUpCisgICAgbWF0Y2hlZCA9IHNlYXJjaChyJ1xiKD9QPHN0YXRlbWVudD5pZnxm
b3J8Zm9yZWFjaHx3aGlsZXxzd2l0Y2gpXHMqXCgoP1A8cmVtYWluZGVyPi4qKSQnLCBsaW5lKQog
ICAgIGlmIG1hdGNoZWQ6CiAgICAgICAgIHN0YXRlbWVudCA9IG1hdGNoZWQuZ3JvdXAoJ3N0YXRl
bWVudCcpCi0gICAgICAgIGNvbmRpdGlvbiwgcmVzdCA9IHVwX3RvX3VubWF0Y2hlZF9jbG9zaW5n
X3BhcmVuKG1hdGNoZWQuZ3JvdXAoJ3JlbWluZGVyJykpCisgICAgICAgIGNvbmRpdGlvbiwgcmVz
dCA9IHVwX3RvX3VubWF0Y2hlZF9jbG9zaW5nX3BhcmVuKG1hdGNoZWQuZ3JvdXAoJ3JlbWFpbmRl
cicpKQogICAgICAgICBpZiBjb25kaXRpb24gaXMgbm90IE5vbmU6CiAgICAgICAgICAgICBjb25k
aXRpb25fbWF0Y2ggPSBzZWFyY2gocicoP1A8bGVhZGluZz5bIF0qKSg/UDxzZXBhcmF0b3I+Liku
KlteIF0rKD9QPHRyYWlsaW5nPlsgXSopJywgY29uZGl0aW9uKQogICAgICAgICAgICAgaWYgY29u
ZGl0aW9uX21hdGNoOgogICAgICAgICAgICAgICAgIG5fbGVhZGluZyA9IGxlbihjb25kaXRpb25f
bWF0Y2guZ3JvdXAoJ2xlYWRpbmcnKSkKICAgICAgICAgICAgICAgICBuX3RyYWlsaW5nID0gbGVu
KGNvbmRpdGlvbl9tYXRjaC5ncm91cCgndHJhaWxpbmcnKSkKLSAgICAgICAgICAgICAgICBpZiBu
X2xlYWRpbmcgIT0gbl90cmFpbGluZzoKLSAgICAgICAgICAgICAgICAgICAgZm9yX2V4Y2VwdGlv
biA9IHN0YXRlbWVudCA9PSAnZm9yJyBhbmQgKAotICAgICAgICAgICAgICAgICAgICAgICAgKGNv
bmRpdGlvbi5zdGFydHN3aXRoKCcgOycpIGFuZCBuX3RyYWlsaW5nID09IDApIG9yCi0gICAgICAg
ICAgICAgICAgICAgICAgICAoY29uZGl0aW9uLmVuZHN3aXRoKCc7ICcpICAgYW5kIG5fbGVhZGlu
ZyA9PSAwKSkKKyAgICAgICAgICAgICAgICBpZiBuX2xlYWRpbmcgIT0gMDoKKyAgICAgICAgICAg
ICAgICAgICAgZm9yX2V4Y2VwdGlvbiA9IHN0YXRlbWVudCA9PSAnZm9yJyBhbmQgY29uZGl0aW9u
LnN0YXJ0c3dpdGgoJyA7JykKICAgICAgICAgICAgICAgICAgICAgaWYgbm90IGZvcl9leGNlcHRp
b246CiAgICAgICAgICAgICAgICAgICAgICAgICBlcnJvcihsaW5lX251bWJlciwgJ3doaXRlc3Bh
Y2UvcGFyZW5zJywgNSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdNaXNtYXRjaGlu
ZyBzcGFjZXMgaW5zaWRlICgpIGluICVzJyAlIHN0YXRlbWVudCkKLSAgICAgICAgICAgICAgICBp
ZiBuX2xlYWRpbmcgPiAxOgotICAgICAgICAgICAgICAgICAgICBlcnJvcihsaW5lX251bWJlciwg
J3doaXRlc3BhY2UvcGFyZW5zJywgNSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgJ1Nob3Vs
ZCBoYXZlIHplcm8gb3Igb25lIHNwYWNlcyBpbnNpZGUgKCBhbmQgKSBpbiAlcycgJQotICAgICAg
ICAgICAgICAgICAgICAgICAgICBzdGF0ZW1lbnQpCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAnRXh0cmEgc3BhY2UgYWZ0ZXIgKCBpbiAlcycgJSBzdGF0ZW1lbnQpCisgICAgICAgICAg
ICAgICAgaWYgbl90cmFpbGluZyAhPSAwOgorICAgICAgICAgICAgICAgICAgICBmb3JfZXhjZXB0
aW9uID0gc3RhdGVtZW50ID09ICdmb3InIGFuZCBjb25kaXRpb24uZW5kc3dpdGgoJzsgJykKKyAg
ICAgICAgICAgICAgICAgICAgaWYgbm90IGZvcl9leGNlcHRpb246CisgICAgICAgICAgICAgICAg
ICAgICAgICBlcnJvcihsaW5lX251bWJlciwgJ3doaXRlc3BhY2UvcGFyZW5zJywgNSwKKyAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiAlcycgJSBz
dGF0ZW1lbnQpCiAKICAgICAgICAgICAgICMgRG8gbm90IGNoZWNrIGZvciBtb3JlIHRoYW4gb25l
IGNvbW1hbmQgaW4gbWFjcm9zCiAgICAgICAgICAgICBpbl9tYWNybyA9IG1hdGNoKHInXHMqI2Rl
ZmluZScsIGxpbmUpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3N0
eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJr
aXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weQpvbGQgbW9kZSAxMDA2NDQKbmV3
IG1vZGUgMTAwNzU1CmluZGV4IGM0NzM4ZjkuLjcyOGEyMTMKLS0tIGEvV2ViS2l0VG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9zdHlsZS9wcm9jZXNzb3JzL2NwcF91bml0dGVzdC5weQorKysgYi9XZWJL
aXRUb29scy9TY3JpcHRzL3dlYmtpdHB5L3N0eWxlL3Byb2Nlc3NvcnMvY3BwX3VuaXR0ZXN0LnB5
CkBAIC0xMTYzLDI4ICsxMTYzLDMwIEBAIGNsYXNzIENwcFN0eWxlVGVzdChDcHBTdHlsZVRlc3RC
YXNlKToKICAgICAgICAgICAgICcnKQogCiAgICAgZGVmIHRlc3RfbWlzbWF0Y2hpbmdfc3BhY2Vz
X2luX3BhcmVucyhzZWxmKToKLSAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnaWYgKGZvbyApIHsn
LCAnTWlzbWF0Y2hpbmcgc3BhY2VzIGluc2lkZSAoKSBpbiBpZicKKyAgICAgICAgc2VsZi5hc3Nl
cnRfbGludCgnaWYgKGZvbyApIHsnLCAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gaWYnCiAgICAg
ICAgICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQotICAgICAg
ICBzZWxmLmFzc2VydF9saW50KCdzd2l0Y2ggKCBmb28pIHsnLCAnTWlzbWF0Y2hpbmcgc3BhY2Vz
IGluc2lkZSAoKSBpbiBzd2l0Y2gnCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ3N3aXRjaCAo
IGZvbykgeycsICdFeHRyYSBzcGFjZSBhZnRlciAoIGluIHN3aXRjaCcKICAgICAgICAgICAgICAg
ICAgICAgICAgICAnICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCi0gICAgICAgIHNlbGYuYXNz
ZXJ0X2xpbnQoJ2ZvciAoZm9vOyBiYTsgYmFyICkgeycsICdNaXNtYXRjaGluZyBzcGFjZXMgaW5z
aWRlICgpIGluIGZvcicKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yIChmb287IGJhOyBi
YXIgKSB7JywgJ0V4dHJhIHNwYWNlIGJlZm9yZSApIGluIGZvcicKICAgICAgICAgICAgICAgICAg
ICAgICAgICAnICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCi0gICAgICAgIHNlbGYuYXNzZXJ0
X2xpbnQoJ2ZvciAoKGZvbyk7IChiYSk7IChiYXIpICkgeycsICdNaXNtYXRjaGluZyBzcGFjZXMg
aW5zaWRlICgpIGluIGZvcicKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICgoZm9vKTsg
KGJhKTsgKGJhcikgKSB7JywgJ0V4dHJhIHNwYWNlIGJlZm9yZSApIGluIGZvcicKICAgICAgICAg
ICAgICAgICAgICAgICAgICAnICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCiAgICAgICAgIHNl
bGYuYXNzZXJ0X2xpbnQoJ2ZvciAoOyBmb287IGJhcikgeycsICcnKQogICAgICAgICBzZWxmLmFz
c2VydF9saW50KCdmb3IgKDsgKGZvbyk7IChiYXIpKSB7JywgJycpCiAgICAgICAgIHNlbGYuYXNz
ZXJ0X2xpbnQoJ2ZvciAoIDsgZm9vOyBiYXIpIHsnLCAnJykKICAgICAgICAgc2VsZi5hc3NlcnRf
bGludCgnZm9yICggOyAoZm9vKTsgKGJhcikpIHsnLCAnJykKLSAgICAgICAgc2VsZi5hc3NlcnRf
bGludCgnZm9yICggOyBmb287IGJhciApIHsnLCAnJykKLSAgICAgICAgc2VsZi5hc3NlcnRfbGlu
dCgnZm9yICggOyAoZm9vKTsgKGJhcikgKSB7JywgJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0X2xp
bnQoJ2ZvciAoZm9vOyBiYXI7ICkgeycsICcnKQorICAgICAgICBzZWxmLmFzc2VydF9saW50KCdm
b3IgKCA7IGZvbzsgYmFyICkgeycsICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiBmb3InCisgICAg
ICAgICAgICAgICAgICAgICAgICAgJyAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQorICAgICAg
ICBzZWxmLmFzc2VydF9saW50KCdmb3IgKCA7IChmb28pOyAoYmFyKSApIHsnLCAnRXh0cmEgc3Bh
Y2UgYmVmb3JlICkgaW4gZm9yJworICAgICAgICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNw
YWNlL3BhcmVuc10gWzVdJykKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yIChmb287IGJh
cjsgKSB7JywgJycgKQogICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3IgKChmb28pOyAoYmFy
KTsgKSB7JywgJycpCi0gICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvcmVhY2ggKGZvbywgZm9v
cyApIHsnLCAnTWlzbWF0Y2hpbmcgc3BhY2VzIGluc2lkZSAoKSBpbiBmb3JlYWNoJworICAgICAg
ICBzZWxmLmFzc2VydF9saW50KCdmb3JlYWNoIChmb28sIGZvb3MgKSB7JywgJ0V4dHJhIHNwYWNl
IGJlZm9yZSApIGluIGZvcmVhY2gnCisgICAgICAgICAgICAgICAgICAgICAgICAgJyAgW3doaXRl
c3BhY2UvcGFyZW5zXSBbNV0nKQorICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3JlYWNoICgg
Zm9vLCBmb29zKSB7JywgJ0V4dHJhIHNwYWNlIGFmdGVyICggaW4gZm9yZWFjaCcKICAgICAgICAg
ICAgICAgICAgICAgICAgICAnICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCi0gICAgICAgIHNl
bGYuYXNzZXJ0X2xpbnQoJ2ZvcmVhY2ggKCBmb28sIGZvb3MpIHsnLCAnTWlzbWF0Y2hpbmcgc3Bh
Y2VzIGluc2lkZSAoKSBpbiBmb3JlYWNoJworICAgICAgICBzZWxmLmFzc2VydF9saW50KCd3aGls
ZSAoICBmb28pIHsnLCAnRXh0cmEgc3BhY2UgYWZ0ZXIgKCBpbiB3aGlsZScKICAgICAgICAgICAg
ICAgICAgICAgICAgICAnICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCi0gICAgICAgIHNlbGYu
YXNzZXJ0X2xpbnQoJ3doaWxlICggIGZvbyAgKSB7JywgJ1Nob3VsZCBoYXZlIHplcm8gb3Igb25l
IHNwYWNlcyBpbnNpZGUnCi0gICAgICAgICAgICAgICAgICAgICAgICAgJyAoIGFuZCApIGluIHdo
aWxlICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCiAKICAgICBkZWYgdGVzdF9zcGFjaW5nX2Zv
cl9mbmNhbGwoc2VsZik6CiAgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2lmIChmb28pIHsnLCAn
JykKQEAgLTMwMzgsNyArMzA0MCw3IEBAIGNsYXNzIFdlYktpdFN0eWxlVGVzdChDcHBTdHlsZVRl
c3RCYXNlKToKICAgICAgICAgICAgICcnKQogICAgICAgICBzZWxmLmFzc2VydF9tdWx0aV9saW5l
X2xpbnQoCiAgICAgICAgICAgICAnI2RlZmluZSBURVNUX0FTU0VSVChleHByZXNzaW9uKSBkbyB7
IGlmICggIShleHByZXNzaW9uKSkgeyBUZXN0c0NvbnRyb2xsZXI6OnNoYXJlZCgpLnRlc3RGYWls
ZWQoX19GSUxFX18sIF9fTElORV9fLCAjZXhwcmVzc2lvbik7IHJldHVybjsgfSB9IHdoaWxlICgw
KVxuJywKLSAgICAgICAgICAgICdNaXNtYXRjaGluZyBzcGFjZXMgaW5zaWRlICgpIGluIGlmICBb
d2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCisgICAgICAgICAgICAnRXh0cmEgc3BhY2UgYWZ0ZXIg
KCBpbiBpZiAgW3doaXRlc3BhY2UvcGFyZW5zXSBbNV0nKQogICAgICAgICAjIEZJWE1FOiBjdXJy
ZW50bHkgd2Ugb25seSBjaGVjayBmaXJzdCBjb25kaXRpb25hbCwgc28gd2UgY2Fubm90IGRldGVj
dCBlcnJvcnMgaW4gbmV4dCBvbmVzLgogICAgICAgICAjIHNlbGYuYXNzZXJ0X211bHRpX2xpbmVf
bGludCgKICAgICAgICAgIyAgICAgJyNkZWZpbmUgVEVTVF9BU1NFUlQoZXhwcmVzc2lvbikgZG8g
eyBpZiAoIShleHByZXNzaW9uKSkgeyBUZXN0c0NvbnRyb2xsZXI6OnNoYXJlZCgpLnRlc3RGYWls
ZWQoX19GSUxFX18sIF9fTElORV9fLCAjZXhwcmVzc2lvbik7IHJldHVybjsgfSB9IHdoaWxlICgw
IClcbicsCi0tIAoxLjcuMQoK
</data>
<flag name="review"
          id="45596"
          type_id="1"
          status="+"
          setter="hamaji"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>59436</attachid>
            <date>2010-06-22 16:11:51 -0700</date>
            <delta_ts>2010-06-22 21:22:31 -0700</delta_ts>
            <desc>Rediff against trunk</desc>
            <filename>bug-40723.patch</filename>
            <type>text/plain</type>
            <size>7821</size>
            <attacher name="Sam Magnuson">smagnuso</attacher>
            
              <data encoding="base64">Y29tbWl0IDVhOWQ2YTc1ZDU0YjU4MmExYjQzMmZmZTA0ZTYyOWU3MmE4ZmMwMGUKQXV0aG9yOiBT
YW0gTWFnbnVzb24gPHNtYWdudXNvbkBuZXRmbGl4LmNvbT4KRGF0ZTogICBNb24gSnVuIDIxIDIz
OjEwOjI4IDIwMTAgLTA3MDAKCiAgICBGb2xsb3cgcHJvcGVyIGNvbnZlbnRpb24gZm9yIGlmL3N3
aXRjaC93aGlsZSBhcyBJJ3ZlIGRpc2NvdmVyZWQgdGhlbSB0byBiZSB0aHJvdWdoIG15IHJldmll
dyBwcm9jZXNzZXMuCiAgICBidWctNDA3MjMKCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFu
Z2VMb2cgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5kZXggZWEwMjdhYS4uZDgzZTNhNSAxMDA2
NDQKLS0tIGEvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwpAQCAtMTAsNiArMTAsMjAgQEAKICAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3N0eWxlL2No
ZWNrZXJzL2NwcC5weToKICAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5L3N0eWxlL2NoZWNrZXJz
L2NwcF91bml0dGVzdC5weToKIAorMjAxMC0wNi0xNiAgU2FtIE1hZ251c29uICA8c21hZ251c29u
QG5ldGZsaXguY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgIEZvbGxvdyBwcm9wZXIgY29udmVudGlvbiBmb3IgaWYvc3dpdGNoL3doaWxlIGFzIEkn
dmUgZGlzY292ZXJlZAorICAgICAgICB0aGVtIHRvIGJlIHRocm91Z2ggbXkgcmV2aWV3IHByb2Nl
c3Nlcy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQw
NzIzCisKKyAgICAgICAgTW9kaWZpZWQgdGVzdCBzbyB0aGF0IGlmKCBmb28gKSBpcyBub3QgYWxs
b3dlZCBhcyBpdCBhcHBlYXJzIG5vdAorICAgICAgICB0byBiZSB0aGUgYWNjZXB0ZWQgY29udmVu
dGlvbi4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlcnMvY3BwLnB5
OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlcnMvY3BwX3VuaXR0ZXN0
LnB5OgorCiAyMDEwLTA2LTIxICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29t
PgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFuZGVycyBDYXJsc3Nvbi4KZGlmZiAtLWdpdCBhL1dl
YktpdFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlcnMvY3BwLnB5IGIvV2ViS2l0
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9jaGVja2Vycy9jcHAucHkKb2xkIG1vZGUgMTAw
NjQ0Cm5ldyBtb2RlIDEwMDc1NQppbmRleCA4ZDIyZWExLi5iOGJmZjNlCi0tLSBhL1dlYktpdFRv
b2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlcnMvY3BwLnB5CisrKyBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvd2Via2l0cHkvc3R5bGUvY2hlY2tlcnMvY3BwLnB5CkBAIC0xNjEsNyArMTYx
LDcgQEAgZGVmIHVwX3RvX3VubWF0Y2hlZF9jbG9zaW5nX3BhcmVuKHMpOgogCiAgICAgUmV0dXJu
czoKICAgICAgIEEgcGFpciBvZiBzdHJpbmdzIChwcmVmaXggYmVmb3JlIGZpcnN0IHVubWF0Y2hl
ZCAnKScsCi0gICAgICByZW1pbmRlciBvZiBzIGFmdGVyIGZpcnN0IHVubWF0Y2hlZCAnKScpLCBl
LmcuLAorICAgICAgcmVtYWluZGVyIG9mIHMgYWZ0ZXIgZmlyc3QgdW5tYXRjaGVkICcpJyksIGUu
Zy4sCiAgICAgICB1cF90b191bm1hdGNoZWRfY2xvc2luZ19wYXJlbigiYSA9PSAoYiArIGMpKSB7
ICIpCiAgICAgICByZXR1cm5zICJhID09IChiICsgYykiLCAiIHsiLgogICAgICAgUmV0dXJucyBO
b25lLCBOb25lIGlmIHRoZXJlIGlzIG5vIHVubWF0Y2hlZCAnKScKQEAgLTEzMzcsMjYgKzEzMzcs
MjUgQEAgZGVmIGNoZWNrX3NwYWNpbmcoZmlsZV9leHRlbnNpb24sIGNsZWFuX2xpbmVzLCBsaW5l
X251bWJlciwgZXJyb3IpOgogICAgICMgdGhlcmUgc2hvdWxkIGVpdGhlciBiZSB6ZXJvIG9yIG9u
ZSBzcGFjZXMgaW5zaWRlIHRoZSBwYXJlbnMuCiAgICAgIyBXZSBkb24ndCB3YW50OiAiaWYgKCBm
b28pIiBvciAiaWYgKCBmb28gICApIi4KICAgICAjIEV4Y2VwdGlvbjogImZvciAoIDsgZm9vOyBi
YXIpIiBhbmQgImZvciAoZm9vOyBiYXI7ICkiIGFyZSBhbGxvd2VkLgotICAgIG1hdGNoZWQgPSBz
ZWFyY2gocidcYig/UDxzdGF0ZW1lbnQ+aWZ8Zm9yfGZvcmVhY2h8d2hpbGV8c3dpdGNoKVxzKlwo
KD9QPHJlbWluZGVyPi4qKSQnLCBsaW5lKQorICAgIG1hdGNoZWQgPSBzZWFyY2gocidcYig/UDxz
dGF0ZW1lbnQ+aWZ8Zm9yfGZvcmVhY2h8d2hpbGV8c3dpdGNoKVxzKlwoKD9QPHJlbWFpbmRlcj4u
KikkJywgbGluZSkKICAgICBpZiBtYXRjaGVkOgogICAgICAgICBzdGF0ZW1lbnQgPSBtYXRjaGVk
Lmdyb3VwKCdzdGF0ZW1lbnQnKQotICAgICAgICBjb25kaXRpb24sIHJlc3QgPSB1cF90b191bm1h
dGNoZWRfY2xvc2luZ19wYXJlbihtYXRjaGVkLmdyb3VwKCdyZW1pbmRlcicpKQorICAgICAgICBj
b25kaXRpb24sIHJlc3QgPSB1cF90b191bm1hdGNoZWRfY2xvc2luZ19wYXJlbihtYXRjaGVkLmdy
b3VwKCdyZW1haW5kZXInKSkKICAgICAgICAgaWYgY29uZGl0aW9uIGlzIG5vdCBOb25lOgogICAg
ICAgICAgICAgY29uZGl0aW9uX21hdGNoID0gc2VhcmNoKHInKD9QPGxlYWRpbmc+WyBdKikoP1A8
c2VwYXJhdG9yPi4pLipbXiBdKyg/UDx0cmFpbGluZz5bIF0qKScsIGNvbmRpdGlvbikKICAgICAg
ICAgICAgIGlmIGNvbmRpdGlvbl9tYXRjaDoKICAgICAgICAgICAgICAgICBuX2xlYWRpbmcgPSBs
ZW4oY29uZGl0aW9uX21hdGNoLmdyb3VwKCdsZWFkaW5nJykpCiAgICAgICAgICAgICAgICAgbl90
cmFpbGluZyA9IGxlbihjb25kaXRpb25fbWF0Y2guZ3JvdXAoJ3RyYWlsaW5nJykpCi0gICAgICAg
ICAgICAgICAgaWYgbl9sZWFkaW5nICE9IG5fdHJhaWxpbmc6Ci0gICAgICAgICAgICAgICAgICAg
IGZvcl9leGNlcHRpb24gPSBzdGF0ZW1lbnQgPT0gJ2ZvcicgYW5kICgKLSAgICAgICAgICAgICAg
ICAgICAgICAgIChjb25kaXRpb24uc3RhcnRzd2l0aCgnIDsnKSBhbmQgbl90cmFpbGluZyA9PSAw
KSBvcgotICAgICAgICAgICAgICAgICAgICAgICAgKGNvbmRpdGlvbi5lbmRzd2l0aCgnOyAnKSAg
IGFuZCBuX2xlYWRpbmcgPT0gMCkpCisgICAgICAgICAgICAgICAgaWYgbl9sZWFkaW5nICE9IDA6
CisgICAgICAgICAgICAgICAgICAgIGZvcl9leGNlcHRpb24gPSBzdGF0ZW1lbnQgPT0gJ2Zvcicg
YW5kIGNvbmRpdGlvbi5zdGFydHN3aXRoKCcgOycpCiAgICAgICAgICAgICAgICAgICAgIGlmIG5v
dCBmb3JfZXhjZXB0aW9uOgogICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IobGluZV9udW1i
ZXIsICd3aGl0ZXNwYWNlL3BhcmVucycsIDUsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAnTWlzbWF0Y2hpbmcgc3BhY2VzIGluc2lkZSAoKSBpbiAlcycgJSBzdGF0ZW1lbnQpCi0gICAg
ICAgICAgICAgICAgaWYgbl9sZWFkaW5nID4gMToKLSAgICAgICAgICAgICAgICAgICAgZXJyb3Io
bGluZV9udW1iZXIsICd3aGl0ZXNwYWNlL3BhcmVucycsIDUsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICdTaG91bGQgaGF2ZSB6ZXJvIG9yIG9uZSBzcGFjZXMgaW5zaWRlICggYW5kICkgaW4g
JXMnICUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhdGVtZW50KQorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgJ0V4dHJhIHNwYWNlIGFmdGVyICggaW4gJXMnICUgc3RhdGVtZW50
KQorICAgICAgICAgICAgICAgIGlmIG5fdHJhaWxpbmcgIT0gMDoKKyAgICAgICAgICAgICAgICAg
ICAgZm9yX2V4Y2VwdGlvbiA9IHN0YXRlbWVudCA9PSAnZm9yJyBhbmQgY29uZGl0aW9uLmVuZHN3
aXRoKCc7ICcpCisgICAgICAgICAgICAgICAgICAgIGlmIG5vdCBmb3JfZXhjZXB0aW9uOgorICAg
ICAgICAgICAgICAgICAgICAgICAgZXJyb3IobGluZV9udW1iZXIsICd3aGl0ZXNwYWNlL3BhcmVu
cycsIDUsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnRXh0cmEgc3BhY2UgYmVmb3Jl
ICkgaW4gJXMnICUgc3RhdGVtZW50KQogCiAgICAgICAgICAgICAjIERvIG5vdCBjaGVjayBmb3Ig
bW9yZSB0aGFuIG9uZSBjb21tYW5kIGluIG1hY3JvcwogICAgICAgICAgICAgaW5fbWFjcm8gPSBt
YXRjaChyJ1xzKiNkZWZpbmUnLCBsaW5lKQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0
cy93ZWJraXRweS9zdHlsZS9jaGVja2Vycy9jcHBfdW5pdHRlc3QucHkgYi9XZWJLaXRUb29scy9T
Y3JpcHRzL3dlYmtpdHB5L3N0eWxlL2NoZWNrZXJzL2NwcF91bml0dGVzdC5weQpvbGQgbW9kZSAx
MDA2NDQKbmV3IG1vZGUgMTAwNzU1CmluZGV4IDgwYzkzOWIuLjgyYjNhNjEKLS0tIGEvV2ViS2l0
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9jaGVja2Vycy9jcHBfdW5pdHRlc3QucHkKKysr
IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRweS9zdHlsZS9jaGVja2Vycy9jcHBfdW5pdHRl
c3QucHkKQEAgLTExNjQsMjggKzExNjQsMzAgQEAgY2xhc3MgQ3BwU3R5bGVUZXN0KENwcFN0eWxl
VGVzdEJhc2UpOgogICAgICAgICAgICAgJycpCiAKICAgICBkZWYgdGVzdF9taXNtYXRjaGluZ19z
cGFjZXNfaW5fcGFyZW5zKHNlbGYpOgotICAgICAgICBzZWxmLmFzc2VydF9saW50KCdpZiAoZm9v
ICkgeycsICdNaXNtYXRjaGluZyBzcGFjZXMgaW5zaWRlICgpIGluIGlmJworICAgICAgICBzZWxm
LmFzc2VydF9saW50KCdpZiAoZm9vICkgeycsICdFeHRyYSBzcGFjZSBiZWZvcmUgKSBpbiBpZicK
ICAgICAgICAgICAgICAgICAgICAgICAgICAnICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCi0g
ICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ3N3aXRjaCAoIGZvbykgeycsICdNaXNtYXRjaGluZyBz
cGFjZXMgaW5zaWRlICgpIGluIHN3aXRjaCcKKyAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnc3dp
dGNoICggZm9vKSB7JywgJ0V4dHJhIHNwYWNlIGFmdGVyICggaW4gc3dpdGNoJwogICAgICAgICAg
ICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKLSAgICAgICAgc2Vs
Zi5hc3NlcnRfbGludCgnZm9yIChmb287IGJhOyBiYXIgKSB7JywgJ01pc21hdGNoaW5nIHNwYWNl
cyBpbnNpZGUgKCkgaW4gZm9yJworICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3IgKGZvbzsg
YmE7IGJhciApIHsnLCAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gZm9yJwogICAgICAgICAgICAg
ICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKLSAgICAgICAgc2VsZi5h
c3NlcnRfbGludCgnZm9yICgoZm9vKTsgKGJhKTsgKGJhcikgKSB7JywgJ01pc21hdGNoaW5nIHNw
YWNlcyBpbnNpZGUgKCkgaW4gZm9yJworICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3IgKChm
b28pOyAoYmEpOyAoYmFyKSApIHsnLCAnRXh0cmEgc3BhY2UgYmVmb3JlICkgaW4gZm9yJwogICAg
ICAgICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKICAgICAg
ICAgc2VsZi5hc3NlcnRfbGludCgnZm9yICg7IGZvbzsgYmFyKSB7JywgJycpCiAgICAgICAgIHNl
bGYuYXNzZXJ0X2xpbnQoJ2ZvciAoOyAoZm9vKTsgKGJhcikpIHsnLCAnJykKICAgICAgICAgc2Vs
Zi5hc3NlcnRfbGludCgnZm9yICggOyBmb287IGJhcikgeycsICcnKQogICAgICAgICBzZWxmLmFz
c2VydF9saW50KCdmb3IgKCA7IChmb28pOyAoYmFyKSkgeycsICcnKQotICAgICAgICBzZWxmLmFz
c2VydF9saW50KCdmb3IgKCA7IGZvbzsgYmFyICkgeycsICcnKQotICAgICAgICBzZWxmLmFzc2Vy
dF9saW50KCdmb3IgKCA7IChmb28pOyAoYmFyKSApIHsnLCAnJykKLSAgICAgICAgc2VsZi5hc3Nl
cnRfbGludCgnZm9yIChmb287IGJhcjsgKSB7JywgJycpCisgICAgICAgIHNlbGYuYXNzZXJ0X2xp
bnQoJ2ZvciAoIDsgZm9vOyBiYXIgKSB7JywgJ0V4dHJhIHNwYWNlIGJlZm9yZSApIGluIGZvcicK
KyAgICAgICAgICAgICAgICAgICAgICAgICAnICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCisg
ICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoIDsgKGZvbyk7IChiYXIpICkgeycsICdFeHRy
YSBzcGFjZSBiZWZvcmUgKSBpbiBmb3InCisgICAgICAgICAgICAgICAgICAgICAgICAgJyAgW3do
aXRlc3BhY2UvcGFyZW5zXSBbNV0nKQorICAgICAgICBzZWxmLmFzc2VydF9saW50KCdmb3IgKGZv
bzsgYmFyOyApIHsnLCAnJyApCiAgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvciAoKGZvbyk7
IChiYXIpOyApIHsnLCAnJykKLSAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnZm9yZWFjaCAoZm9v
LCBmb29zICkgeycsICdNaXNtYXRjaGluZyBzcGFjZXMgaW5zaWRlICgpIGluIGZvcmVhY2gnCisg
ICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvcmVhY2ggKGZvbywgZm9vcyApIHsnLCAnRXh0cmEg
c3BhY2UgYmVmb3JlICkgaW4gZm9yZWFjaCcKKyAgICAgICAgICAgICAgICAgICAgICAgICAnICBb
d2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQoJ2ZvcmVh
Y2ggKCBmb28sIGZvb3MpIHsnLCAnRXh0cmEgc3BhY2UgYWZ0ZXIgKCBpbiBmb3JlYWNoJwogICAg
ICAgICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKLSAgICAg
ICAgc2VsZi5hc3NlcnRfbGludCgnZm9yZWFjaCAoIGZvbywgZm9vcykgeycsICdNaXNtYXRjaGlu
ZyBzcGFjZXMgaW5zaWRlICgpIGluIGZvcmVhY2gnCisgICAgICAgIHNlbGYuYXNzZXJ0X2xpbnQo
J3doaWxlICggIGZvbykgeycsICdFeHRyYSBzcGFjZSBhZnRlciAoIGluIHdoaWxlJwogICAgICAg
ICAgICAgICAgICAgICAgICAgICcgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKLSAgICAgICAg
c2VsZi5hc3NlcnRfbGludCgnd2hpbGUgKCAgZm9vICApIHsnLCAnU2hvdWxkIGhhdmUgemVybyBv
ciBvbmUgc3BhY2VzIGluc2lkZScKLSAgICAgICAgICAgICAgICAgICAgICAgICAnICggYW5kICkg
aW4gd2hpbGUgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKIAogICAgIGRlZiB0ZXN0X3NwYWNp
bmdfZm9yX2ZuY2FsbChzZWxmKToKICAgICAgICAgc2VsZi5hc3NlcnRfbGludCgnaWYgKGZvbykg
eycsICcnKQpAQCAtMzA2Niw3ICszMDY4LDcgQEAgY2xhc3MgV2ViS2l0U3R5bGVUZXN0KENwcFN0
eWxlVGVzdEJhc2UpOgogICAgICAgICAgICAgJycpCiAgICAgICAgIHNlbGYuYXNzZXJ0X211bHRp
X2xpbmVfbGludCgKICAgICAgICAgICAgICcjZGVmaW5lIFRFU1RfQVNTRVJUKGV4cHJlc3Npb24p
IGRvIHsgaWYgKCAhKGV4cHJlc3Npb24pKSB7IFRlc3RzQ29udHJvbGxlcjo6c2hhcmVkKCkudGVz
dEZhaWxlZChfX0ZJTEVfXywgX19MSU5FX18sICNleHByZXNzaW9uKTsgcmV0dXJuOyB9IH0gd2hp
bGUgKDApXG4nLAotICAgICAgICAgICAgJ01pc21hdGNoaW5nIHNwYWNlcyBpbnNpZGUgKCkgaW4g
aWYgIFt3aGl0ZXNwYWNlL3BhcmVuc10gWzVdJykKKyAgICAgICAgICAgICdFeHRyYSBzcGFjZSBh
ZnRlciAoIGluIGlmICBbd2hpdGVzcGFjZS9wYXJlbnNdIFs1XScpCiAgICAgICAgICMgRklYTUU6
IGN1cnJlbnRseSB3ZSBvbmx5IGNoZWNrIGZpcnN0IGNvbmRpdGlvbmFsLCBzbyB3ZSBjYW5ub3Qg
ZGV0ZWN0IGVycm9ycyBpbiBuZXh0IG9uZXMuCiAgICAgICAgICMgc2VsZi5hc3NlcnRfbXVsdGlf
bGluZV9saW50KAogICAgICAgICAjICAgICAnI2RlZmluZSBURVNUX0FTU0VSVChleHByZXNzaW9u
KSBkbyB7IGlmICghKGV4cHJlc3Npb24pKSB7IFRlc3RzQ29udHJvbGxlcjo6c2hhcmVkKCkudGVz
dEZhaWxlZChfX0ZJTEVfXywgX19MSU5FX18sICNleHByZXNzaW9uKTsgcmV0dXJuOyB9IH0gd2hp
bGUgKDAgKVxuJywK
</data>
<flag name="review"
          id="46286"
          type_id="1"
          status="+"
          setter="hamaji"
    />
          </attachment>
      

    </bug>

</bugzilla>