<?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>28040</bug_id>
          
          <creation_ts>2009-08-06 01:09:57 -0700</creation_ts>
          <short_desc>commit-queue needs a master process</short_desc>
          <delta_ts>2009-08-28 18:51:56 -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>All</rep_platform>
          <op_sys>All</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="Adam Barth">abarth</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>137541</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-06 01:09:57 -0700</bug_when>
    <thetext>To make the commit queue more robust, I&apos;m using a master process that call bugzilla-tool.  We should add the master process to the repository so other folks can use it too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137542</commentid>
    <comment_count>1</comment_count>
      <attachid>34204</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-06 01:11:32 -0700</bug_when>
    <thetext>Created attachment 34204
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137543</commentid>
    <comment_count>2</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2009-08-06 01:17:36 -0700</bug_when>
    <thetext>I know this is really simple at the moment, but can we please make this Python from the start?  I&apos;ve seen plenty of scripts start out this size and then balloon over time.  The second we try to do something like integrate with the waterfall, other try bots, etc, we&apos;ll be happy we did.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137545</commentid>
    <comment_count>3</comment_count>
      <attachid>34204</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-06 01:21:08 -0700</bug_when>
    <thetext>Comment on attachment 34204
Patch v1

Ok.  It&apos;s good for me to learn more python anyway.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>137576</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-06 08:22:46 -0700</bug_when>
    <thetext>If you&apos;re going to make it python, you might find it easier to make it a Command in bugzilla-tool.  such a command could of course just call bugzilla-tool again.  directly, or via the shell, depending on what you wanted to do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142055</commentid>
    <comment_count>5</comment_count>
      <attachid>38416</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-21 17:09:25 -0700</bug_when>
    <thetext>Created attachment 38416
First attempt, needs revision</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142056</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-21 17:10:28 -0700</bug_when>
    <thetext>I could definitely make the logging code simpler.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142717</commentid>
    <comment_count>7</comment_count>
      <attachid>38573</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-25 16:09:04 -0700</bug_when>
    <thetext>Created attachment 38573
Better, not perfect


---
 3 files changed, 98 insertions(+), 3 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>142961</commentid>
    <comment_count>8</comment_count>
      <attachid>38637</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-26 13:46:34 -0700</bug_when>
    <thetext>Created attachment 38637
Patch v1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143033</commentid>
    <comment_count>9</comment_count>
      <attachid>38637</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-26 19:38:41 -0700</bug_when>
    <thetext>Comment on attachment 38637
Patch v1

+            self._run_command([&apos;bugzilla-tool&apos;, &apos;land-patches&apos;, &apos;--force-clean&apos;, &apos;--commit-queue&apos;, &apos;--quiet&apos;, bug_id])

This seems to require bugzilla-tool to be in your path.  We should use our get webkit script path routine here.

+            bug_id = bug_ids[0]

I&apos;m worried we could get stuck in a loop processing bug zero.  Can&apos;t we restructure this loop so we go through all the bugs in the queue?  Also, we should put everything in the try-catch to avoid dieing on exceptions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143206</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-27 14:52:45 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 38637 [details])
&gt; +            self._run_command([&apos;bugzilla-tool&apos;, &apos;land-patches&apos;,
&gt; &apos;--force-clean&apos;, &apos;--commit-queue&apos;, &apos;--quiet&apos;, bug_id])
&gt; 
&gt; This seems to require bugzilla-tool to be in your path.  We should use our get
&gt; webkit script path routine here.

Nah, fixed using __FILE__.  We want to execute the exact same script as we&apos;re currently executing, no matter where it may be.

&gt; +            bug_id = bug_ids[0]
&gt; 
&gt; I&apos;m worried we could get stuck in a loop processing bug zero.  Can&apos;t we
&gt; restructure this loop so we go through all the bugs in the queue?  Also, we
&gt; should put everything in the try-catch to avoid dieing on exceptions.

Yup, we could get stuck.  I don&apos;t think we should try and handle that case.  The commit-queue is a remotely stored queue.  We shouldn&apos;t be trying to work around possible bugs in updating that queue.  If it gets stuck, someone will fix the bug which caused it to get stuck. ;)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143208</commentid>
    <comment_count>11</comment_count>
      <attachid>38690</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-27 14:53:34 -0700</bug_when>
    <thetext>Created attachment 38690
Updated to use __file__


---
 4 files changed, 123 insertions(+), 3 deletions(-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143293</commentid>
    <comment_count>12</comment_count>
      <attachid>38690</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-27 21:56:27 -0700</bug_when>
    <thetext>Comment on attachment 38690
Updated to use __file__

No unit tests.  :)

This probably isn&apos;t perfect, but it&apos;s a good start.  By the way, it annoys me that we use single and double quoted strings indiscriminately.  Can&apos;t we pick one and call it a day?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143299</commentid>
    <comment_count>13</comment_count>
      <attachid>38690</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-27 22:35:54 -0700</bug_when>
    <thetext>Comment on attachment 38690
Updated to use __file__

Rejecting patch 38690 from commit-queue.  This patch will require manual commit.

[&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--quiet&apos;, &apos;--exit-after-n-failures=1&apos;] failed with exit code 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143308</commentid>
    <comment_count>14</comment_count>
      <attachid>38690</attachid>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-08-27 23:18:18 -0700</bug_when>
    <thetext>Comment on attachment 38690
Updated to use __file__

Try again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143311</commentid>
    <comment_count>15</comment_count>
      <attachid>38690</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-27 23:30:44 -0700</bug_when>
    <thetext>Comment on attachment 38690
Updated to use __file__

Rejecting patch 38690 from commit-queue.  This patch will require manual commit.

[&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--quiet&apos;, &apos;--exit-after-n-failures=1&apos;] failed with exit code 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143321</commentid>
    <comment_count>16</comment_count>
      <attachid>38690</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-28 00:27:28 -0700</bug_when>
    <thetext>Comment on attachment 38690
Updated to use __file__

Two unrelated test failures, must be flakey tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143328</commentid>
    <comment_count>17</comment_count>
      <attachid>38690</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-28 02:22:36 -0700</bug_when>
    <thetext>Comment on attachment 38690
Updated to use __file__

Rejecting patch 38690 from commit-queue.  This patch will require manual commit.

[&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--quiet&apos;, &apos;--exit-after-n-failures=1&apos;] failed with exit code 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143492</commentid>
    <comment_count>18</comment_count>
      <attachid>38690</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-28 18:37:45 -0700</bug_when>
    <thetext>Comment on attachment 38690
Updated to use __file__

Unrelated test timed out. :(  Our tests are really flakey it seems!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143494</commentid>
    <comment_count>19</comment_count>
      <attachid>38690</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-28 18:51:51 -0700</bug_when>
    <thetext>Comment on attachment 38690
Updated to use __file__

Clearing flags on attachment: 38690

Committed r47881: &lt;http://trac.webkit.org/changeset/47881&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>143495</commentid>
    <comment_count>20</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-08-28 18:51:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>34204</attachid>
            <date>2009-08-06 01:11:32 -0700</date>
            <delta_ts>2009-08-21 17:09:04 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-28040-20090806011131.patch</filename>
            <type>text/plain</type>
            <size>1321</size>
            <attacher name="Adam Barth">abarth</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA0NTlkZTQxLi43ZTUxNTlmIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDktMDgt
MDYgIEFkYW0gQmFydGggIDxhYmFydGhAd2Via2l0Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBjb21taXQtcXVldWUgbmVlZHMgYSBtYXN0ZXIg
cHJvY2VzcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjgwNDAKKworICAgICAgICBBIGZpcnN0IGN1dCBhdCBhIG1hc3RlciBwcm9jZXNzLgorCisgICAg
ICAgICogU2NyaXB0cy9jb21taXQtcXVldWU6IEFkZGVkLgorCiAyMDA5LTA4LTA1ICBCcmFkeSBF
aWRzb24gIDxiZWlkc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBB
ZGxlci4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvY29tbWl0LXF1ZXVlIGIvV2Vi
S2l0VG9vbHMvU2NyaXB0cy9jb21taXQtcXVldWUKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXgg
MDAwMDAwMC4uYWIwODczNAotLS0gL2Rldi9udWxsCisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMv
Y29tbWl0LXF1ZXVlCkBAIC0wLDAgKzEsMTggQEAKKyMhL2Jpbi9zaAorCitpZiBbICIkMSIgIT0g
Ii0tZm9yY2UtY2xlYW4iIF0KK3RoZW4KKyAgZWNobyAiWW91IG11c3QgcnVuICQwIHdpdGggLS1m
b3JjZS1jbGVhbi4iCisgIGVjaG8gIldBUk5JTkc6ICQwIHdpbGwgZGVzdHJveSB5b3VyIHdvcmtp
bmcgY29weS4iCisgIGVjaG8gIiAgICAgICAgIFlvdSBoYXZlIGJlZW4gd2FybmVkLiIKKyAgZXhp
dAorZmkKKworZWNobyAiUnVubmluZyBXZWJLaXQgQ29tbWl0IFF1ZXVlLiIgYGRhdGVgIHwgdGVl
IGNvbW1pdC1xdWV1ZS5sb2cKK3doaWxlIDoKK2RvCisgICAgLi9XZWJLaXRUb29scy9TY3JpcHRz
L2J1Z3ppbGxhLXRvb2wgYnVncy10by1jb21taXQgfCB4YXJncyAtbjEgLi9XZWJLaXRUb29scy9T
Y3JpcHRzL2J1Z3ppbGxhLXRvb2wgbGFuZC1wYXRjaGVzIC0tZm9yY2UtY2xlYW4gLS1jb21taXQt
cXVldWUgfCB0ZWUgLWEgY29tbWl0LXF1ZXVlLmxvZworICAgIGVjaG8gIlNsZWVwaW5nLi4uLiIg
YGRhdGVgIHwgdGVlIC1hIGNvbW1pdC1xdWV1ZS5sb2cKKyAgICBzbGVlcCA2MDAKK2RvbmUKK2Vj
aG8gIkZpbmlzaGVkIFdlYktpdCBDb21taXQgUXVldWUuIiBgZGF0ZWAgfCB0ZWUgLWEgY29tbWl0
LXF1ZXVlLmxvZw==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38416</attachid>
            <date>2009-08-21 17:09:25 -0700</date>
            <delta_ts>2009-08-25 16:08:22 -0700</delta_ts>
            <desc>First attempt, needs revision</desc>
            <filename>bug-28040-20090821170924.patch</filename>
            <type>text/plain</type>
            <size>5656</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbCBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbAppbmRleCA4NzQ4NzU2Li4xZjUyZjhkIDEwMDc1NQot
LS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wKKysrIGIvV2ViS2l0VG9vbHMv
U2NyaXB0cy9idWd6aWxsYS10b29sCkBAIC0zNiwxMiArMzYsMTMgQEAgaW1wb3J0IFN0cmluZ0lP
ICMgZm9yIGFkZF9wYXRjaF90b19idWcgZmlsZSB3cmFwcGVycwogaW1wb3J0IHN1YnByb2Nlc3MK
IGltcG9ydCBzeXMKIAorZnJvbSBkYXRldGltZSBpbXBvcnQgZGF0ZXRpbWUKIGZyb20gb3B0cGFy
c2UgaW1wb3J0IE9wdGlvblBhcnNlciwgSW5kZW50ZWRIZWxwRm9ybWF0dGVyLCBTVVBQUkVTU19V
U0FHRSwgbWFrZV9vcHRpb24KIAogIyBJbXBvcnQgV2ViS2l0LXNwZWNpZmljIG1vZHVsZXMuCiBm
cm9tIG1vZHVsZXMuYnVnemlsbGEgaW1wb3J0IEJ1Z3ppbGxhCiBmcm9tIG1vZHVsZXMuY2hhbmdl
bG9ncyBpbXBvcnQgQ2hhbmdlTG9nLCB2aWV3X3NvdXJjZV91cmwKLWZyb20gbW9kdWxlcy5sb2dn
aW5nIGltcG9ydCBlcnJvciwgbG9nCitmcm9tIG1vZHVsZXMubG9nZ2luZyBpbXBvcnQgZXJyb3Is
IGxvZywgdGVlCiBmcm9tIG1vZHVsZXMuc2NtIGltcG9ydCBDb21taXRNZXNzYWdlLCBkZXRlY3Rf
c2NtX3N5c3RlbSwgU2NyaXB0RXJyb3IKIGZyb20gbW9kdWxlcy5idWlsZGJvdCBpbXBvcnQgQnVp
bGRCb3QKIApAQCAtNTcyLDYgKzU3Myw4NCBAQCBjbGFzcyBDaGVja1RyZWVTdGF0dXMoQ29tbWFu
ZCk6CiAgICAgICAgICAgICBwcmludCAiJXMgOiAlcyIgJSAoc3RhdHVzX3N0cmluZy5sanVzdCg0
KSwgYnVpbGRlclsnbmFtZSddKQogCiAKK2NsYXNzIExhbmRQYXRjaGVzRnJvbUNvbW1pdFF1ZXVl
KENvbW1hbmQpOgorICAgIGRlZiBfX2luaXRfXyhzZWxmKToKKyAgICAgICAgQ29tbWFuZC5fX2lu
aXRfXyhzZWxmLCAnUnVuIHRoZSBjb21taXQgcXVldWUuJykKKyAgICAgICAgc2VsZi5fb3JpZ2lu
YWxfc3Rkb3V0ID0gTm9uZQorICAgICAgICBzZWxmLl9vcmlnaW5hbF9zdGRlcnIgPSBOb25lCisK
KyAgICBkZWYgX3RlZV9vdXRwdXRzX3RvX2xvZ3Moc2VsZiwgKmZpbGVzKToKKyAgICAgICAgaWYg
bm90IHNlbGYuX29yaWdpbmFsX3N0ZG91dDoKKyAgICAgICAgICAgIHNlbGYuX29yaWdpbmFsX3N0
ZG91dCA9IHN5cy5zdGRvdXQKKyAgICAgICAgICAgIHNlbGYuX29yaWdpbmFsX3N0ZGVyciA9IHN5
cy5zdGRlcnIKKyAgICAgICAgc3lzLnN0ZG91dCA9IHRlZShzZWxmLl9vcmlnaW5hbF9zdGRvdXQs
ICpmaWxlcykKKyAgICAgICAgc3lzLnN0ZGVyciA9IHRlZShzZWxmLl9vcmlnaW5hbF9zdGRlcnIs
ICpmaWxlcykKKworICAgIGRlZiBfcmVzZXRfb3JpZ2luYWxfb3V0cHV0cyhzZWxmKToKKyAgICAg
ICAgc3lzLnN0ZG91dCA9IHNlbGYuX29yaWdpbmFsX3N0ZG91dAorICAgICAgICBzeXMuc3RkZXJy
ID0gc2VsZi5fb3JpZ2luYWxfc3RkZXJyCisKKyAgICBkZWYgX3NsZWVwKGxvZ19maWxlLCBsb2df
bWVzc2FnZSk6CisgICAgICAgIGxvZygiJXMgIFNsZWVwaW5nLi4uXG4iICUgbG9nX21lc3NhZ2Up
CisgICAgICAgIHRpbWUuc2xlZXAoMzAwKSAjIFdhaXQgNSBtaW51dGVzCisKKyAgICBkZWYgX29w
ZW5fcXVldWVfbG9nKHNlbGYpOgorICAgICAgICBxdWV1ZV9sb2dfcGF0aCA9ICdjb21taXRfcXVl
dWUubG9nJworICAgICAgICBzZWxmLnF1ZXVlX2xvZyA9IG9wZW4ocXVldWVfbG9nX3BhdGgsICdh
KycpCisgICAgICAgIHNlbGYuX3RlZV9vdXRwdXRzX3RvX2xvZ3Moc2VsZi5xdWV1ZV9sb2cpCisK
KyAgICBkZWYgX2Nsb3NlX3F1ZXVlX2xvZyhzZWxmKToKKyAgICAgICAgc2VsZi5fcmVzZXRfb3Jp
Z2luYWxfb3V0cHV0cygpCisgICAgICAgIHNlbGYucXVldWVfbG9nLmNsb3NlKCkKKworICAgIGRl
ZiBfb3Blbl9idWdfbG9nKHNlbGYsIGJ1Z19pZCk6CisgICAgICAgIGNvbW1pdF9xdWV1ZV9sb2dz
X3BhdGggPSAnY29tbWl0X3F1ZXVlX2xvZ3MnCisgICAgICAgIGlmIG5vdCBvcy5wYXRoLmV4aXN0
cyhjb21taXRfcXVldWVfbG9nc19wYXRoKToKKyAgICAgICAgICAgIG9zLm1ha2VkaXJzKGNvbW1p
dF9xdWV1ZV9sb2dzX3BhdGgpCisgICAgICAgIGJ1Z19sb2dfcGF0aCA9IG9zLnBhdGguam9pbihj
b21taXRfcXVldWVfbG9nc19wYXRoLCAiJXMubG9nIiAlIGJ1Z19pZCkKKyAgICAgICAgc2VsZi5i
dWdfbG9nID0gb3BlbihidWdfbG9nX3BhdGgsICdhKycpCisgICAgICAgIHNlbGYuX3RlZV9vdXRw
dXRzX3RvX2xvZ3Moc2VsZi5xdWV1ZV9sb2csIHNlbGYuYnVnX2xvZykKKworICAgIGRlZiBfY2xv
c2VfYnVnX2xvZyhzZWxmKToKKyAgICAgICAgc2VsZi5fdGVlX291dHB1dHNfdG9fbG9ncyhzZWxm
LnF1ZXVlX2xvZykKKyAgICAgICAgc2VsZi5idWdfbG9nLmNsb3NlKCkKKworICAgIGRlZiBfcnVu
X2NvbW1hbmQoc2VsZiwgYXJncyk6CisgICAgICAgIGNoaWxkX3Byb2Nlc3MgPSBzdWJwcm9jZXNz
LlBvcGVuKGFyZ3MsIHN0ZG91dD1zdWJwcm9jZXNzLlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNzLlNU
RE9VVCkKKworICAgICAgICAjIFVzZSBvdXIgb3duIGN1c3RvbSB3YWl0IGxvb3AgYmVjYXNlIFBv
cGVuIGlnbm9yZXMgb3VyIHRlZSdkIHN0ZGVyci9zdGRvdXQKKyAgICAgICAgd2hpbGUgVHJ1ZToK
KyAgICAgICAgICAgIG91dHB1dF9saW5lID0gY2hpbGRfcHJvY2Vzcy5zdGRvdXQucmVhZGxpbmUo
KQorICAgICAgICAgICAgaWYgb3V0cHV0X2xpbmUgPT0gJycgYW5kIGNoaWxkX3Byb2Nlc3MucG9s
bCgpICE9IE5vbmU6CisgICAgICAgICAgICAgICAgcmV0dXJuIGNoaWxkX3Byb2Nlc3MucG9sbCgp
CisgICAgICAgICAgICBzeXMuc3Rkb3V0LndyaXRlKG91dHB1dF9saW5lKQorCisgICAgZGVmIGV4
ZWN1dGUoc2VsZiwgb3B0aW9ucywgYXJncywgdG9vbCk6CisgICAgICAgIHNlbGYuX29wZW5fcXVl
dWVfbG9nKCkKKyAgICAgICAgbG9nKCJSdW5uaW5nIFdlYktpdCBDb21taXQgUXVldWUuICVzIiAl
IGRhdGV0aW1lLm5vdygpKQorCisgICAgICAgIHdoaWxlIChUcnVlKToKKyAgICAgICAgICAgIGlm
IG5vdCB0b29sLmJ1aWxkYm90LmNvcmVfYnVpbGRlcnNfYXJlX2dyZWVuKCk6CisgICAgICAgICAg
ICAgICAgc2VsZi5fc2xlZXAoIkJ1aWxkZXJzIGFyZSByZWQuIikKKyAgICAgICAgICAgICAgICBj
b250aW51ZQorCisgICAgICAgICAgICBidWdfaWRzID0gdG9vbC5idWdzLmZldGNoX2J1Z19pZHNf
ZnJvbV9jb21taXRfcXVldWUoKQorICAgICAgICAgICAgaWYgbm90IGxlbihidWdfaWRzKToKKyAg
ICAgICAgICAgICAgICBzZWxmLl9zbGVlcCgiRW1wdHkgcXVldWUuIikKKyAgICAgICAgICAgICAg
ICBjb250aW51ZQorCisgICAgICAgICAgICBsb2coIiVzIGluIGNvbW1pdCBxdWV1ZS4gWyVzXSIg
JSAocGx1cmFsaXplKCdidWcnLCBsZW4oYnVnX2lkcykpLCAiLCAiLmpvaW4oYnVnX2lkcykpKQor
CisgICAgICAgICAgICAjIFRyeSB0byBsYW5kIHBhdGNoZXMgb24gdGhlIGZpcnN0IGJ1ZyBpbiB0
aGUgcXVldWUgYmVmb3JlIGxvb3BpbmcKKyAgICAgICAgICAgIGJ1Z19pZCA9IGJ1Z19pZHNbMF0K
KyAgICAgICAgICAgIHNlbGYuX29wZW5fYnVnX2xvZyhidWdfaWQpCisgICAgICAgICAgICBzZWxm
Ll9ydW5fY29tbWFuZChbJ2J1Z3ppbGxhLXRvb2wnLCAnbGFuZC1wYXRjaGVzJywgJy0tZm9yY2Ut
Y2xlYW4nLCAnLS1jb21taXQtcXVldWUnLCAnLS1xdWlldCcsIGJ1Z19pZF0pCisgICAgICAgICAg
ICBzZWxmLl9jbG9zZV9idWdfbG9nKCkKKworICAgICAgICBsb2coIkZpbmlzaGVkIFdlYktpdCBD
b21taXQgUXVldWUuICVzIiAlIGRhdGV0aW1lLm5vdygpKQorICAgICAgICBzZWxmLl9jbG9zZV9x
dWV1ZV9sb2coKQorCisKIGNsYXNzIE5vbldyYXBwaW5nRXBpbG9nSW5kZW50ZWRIZWxwRm9ybWF0
dGVyKEluZGVudGVkSGVscEZvcm1hdHRlcik6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgogICAg
ICAgICBJbmRlbnRlZEhlbHBGb3JtYXR0ZXIuX19pbml0X18oc2VsZikKQEAgLTYwOSw2ICs2ODgs
NyBAQCBjbGFzcyBCdWd6aWxsYVRvb2w6CiAgICAgICAgICAgICB7ICduYW1lJyA6ICdwb3N0LWRp
ZmYnLCAnb2JqZWN0JyA6IFBvc3REaWZmQXNQYXRjaFRvQnVnKCkgfSwKICAgICAgICAgICAgIHsg
J25hbWUnIDogJ3Bvc3QtY29tbWl0cycsICdvYmplY3QnIDogUG9zdENvbW1pdHNBc1BhdGNoZXNU
b0J1ZygpIH0sCiAgICAgICAgICAgICB7ICduYW1lJyA6ICd0cmVlLXN0YXR1cycsICdvYmplY3Qn
IDogQ2hlY2tUcmVlU3RhdHVzKCkgfSwKKyAgICAgICAgICAgIHsgJ25hbWUnIDogJ2NvbW1pdC1x
dWV1ZScsICdvYmplY3QnIDogTGFuZFBhdGNoZXNGcm9tQ29tbWl0UXVldWUoKSB9LAogICAgICAg
ICBdCiAKICAgICAgICAgc2VsZi5nbG9iYWxfb3B0aW9uX3BhcnNlciA9IEhlbHBQcmludGluZ09w
dGlvblBhcnNlcih1c2FnZT1zZWxmLnVzYWdlX2xpbmUoKSwgZm9ybWF0dGVyPU5vbldyYXBwaW5n
RXBpbG9nSW5kZW50ZWRIZWxwRm9ybWF0dGVyKCksIGVwaWxvZz1zZWxmLmNvbW1hbmRzX3VzYWdl
KCkpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvYnVpbGRib3QucHkg
Yi9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvYnVpbGRib3QucHkKaW5kZXggY2QyOTA1OS4u
Y2Q0OTFiZCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9tb2R1bGVzL2J1aWxkYm90
LnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9idWlsZGJvdC5weQpAQCAtODYs
NyArODYsNyBAQCBjbGFzcyBCdWlsZEJvdDoKIAogICAgIGRlZiBidWlsZGVyX3N0YXR1c2VzKHNl
bGYpOgogICAgICAgICBidWlsZF9zdGF0dXNfdXJsID0gc2VsZi5idWlsZGJvdF9zZXJ2ZXJfdXJs
ICsgJ29uZV9ib3hfcGVyX2J1aWxkZXInCi0gICAgICAgIGxvZygiRmV0Y2hpbmcgJXMiICUgYnVp
bGRfc3RhdHVzX3VybCkKKyAgICAgICAgbG9nKCJGZXRjaGluZzogJXMiICUgYnVpbGRfc3RhdHVz
X3VybCkKIAogICAgICAgICBwYWdlID0gdXJsbGliMi51cmxvcGVuKGJ1aWxkX3N0YXR1c191cmwp
CiAgICAgICAgIHNvdXAgPSBCZWF1dGlmdWxTb3VwKHBhZ2UpCmRpZmYgLS1naXQgYS9XZWJLaXRU
b29scy9TY3JpcHRzL21vZHVsZXMvbG9nZ2luZy5weSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvbW9k
dWxlcy9sb2dnaW5nLnB5CmluZGV4IDFkMmI1ZDYuLmNiY2NhY2YgMTAwNjQ0Ci0tLSBhL1dlYktp
dFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9sb2dnaW5nLnB5CisrKyBiL1dlYktpdFRvb2xzL1Njcmlw
dHMvbW9kdWxlcy9sb2dnaW5nLnB5CkBAIC0zNywzICszNywxMiBAQCBkZWYgbG9nKHN0cmluZyk6
CiBkZWYgZXJyb3Ioc3RyaW5nKToKICAgICBsb2coIkVSUk9SOiAlcyIgJSBzdHJpbmcpCiAgICAg
ZXhpdCgxKQorCisjIFNpbXBsZSBjbGFzcyB0byBzcGxpdCBvdXRwdXQgYmV0d2VlbiBtdWx0aXBs
ZSBkZXN0aW5hdGlvbnMKK2NsYXNzIHRlZToKKyAgICBkZWYgX19pbml0X18oc2VsZiwgKmZpbGVz
KToKKyAgICAgICAgc2VsZi5maWxlcyA9IGZpbGVzCisKKyAgICBkZWYgd3JpdGUoc2VsZiwgc3Ry
aW5nKToKKyAgICAgICAgZm9yIGZpbGUgaW4gc2VsZi5maWxlczoKKyAgICAgICAgICAgIGZpbGUu
d3JpdGUoc3RyaW5nKQ==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38573</attachid>
            <date>2009-08-25 16:09:04 -0700</date>
            <delta_ts>2009-08-26 13:46:29 -0700</delta_ts>
            <desc>Better, not perfect</desc>
            <filename>bug-28040-20090825160903.patch</filename>
            <type>text/plain</type>
            <size>6285</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbCBiL1dlYktpdFRv
b2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbAppbmRleCA4NzQ4NzU2Li5hYTA2MmE5IDEwMDc1NQot
LS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wKKysrIGIvV2ViS2l0VG9vbHMv
U2NyaXB0cy9idWd6aWxsYS10b29sCkBAIC0zNSwxMyArMzUsMTUgQEAgaW1wb3J0IHJlCiBpbXBv
cnQgU3RyaW5nSU8gIyBmb3IgYWRkX3BhdGNoX3RvX2J1ZyBmaWxlIHdyYXBwZXJzCiBpbXBvcnQg
c3VicHJvY2VzcwogaW1wb3J0IHN5cworaW1wb3J0IHRpbWUKIAorZnJvbSBkYXRldGltZSBpbXBv
cnQgZGF0ZXRpbWUKIGZyb20gb3B0cGFyc2UgaW1wb3J0IE9wdGlvblBhcnNlciwgSW5kZW50ZWRI
ZWxwRm9ybWF0dGVyLCBTVVBQUkVTU19VU0FHRSwgbWFrZV9vcHRpb24KIAogIyBJbXBvcnQgV2Vi
S2l0LXNwZWNpZmljIG1vZHVsZXMuCiBmcm9tIG1vZHVsZXMuYnVnemlsbGEgaW1wb3J0IEJ1Z3pp
bGxhCiBmcm9tIG1vZHVsZXMuY2hhbmdlbG9ncyBpbXBvcnQgQ2hhbmdlTG9nLCB2aWV3X3NvdXJj
ZV91cmwKLWZyb20gbW9kdWxlcy5sb2dnaW5nIGltcG9ydCBlcnJvciwgbG9nCitmcm9tIG1vZHVs
ZXMubG9nZ2luZyBpbXBvcnQgZXJyb3IsIGxvZywgdGVlCiBmcm9tIG1vZHVsZXMuc2NtIGltcG9y
dCBDb21taXRNZXNzYWdlLCBkZXRlY3Rfc2NtX3N5c3RlbSwgU2NyaXB0RXJyb3IKIGZyb20gbW9k
dWxlcy5idWlsZGJvdCBpbXBvcnQgQnVpbGRCb3QKIApAQCAtNTcyLDYgKzU3NCw5MSBAQCBjbGFz
cyBDaGVja1RyZWVTdGF0dXMoQ29tbWFuZCk6CiAgICAgICAgICAgICBwcmludCAiJXMgOiAlcyIg
JSAoc3RhdHVzX3N0cmluZy5sanVzdCg0KSwgYnVpbGRlclsnbmFtZSddKQogCiAKK2NsYXNzIExh
bmRQYXRjaGVzRnJvbUNvbW1pdFF1ZXVlKENvbW1hbmQpOgorICAgIGRlZiBfX2luaXRfXyhzZWxm
KToKKyAgICAgICAgQ29tbWFuZC5fX2luaXRfXyhzZWxmLCAnUnVuIHRoZSBjb21taXQgcXVldWUu
JykKKyAgICAgICAgc2VsZi5fb3JpZ2luYWxfc3Rkb3V0ID0gTm9uZQorICAgICAgICBzZWxmLl9v
cmlnaW5hbF9zdGRlcnIgPSBOb25lCisgICAgICAgIHNlbGYuX2ZpbGVzX2Zvcl9vdXRwdXQgPSBb
XQorCisgICAgcXVldWVfbG9nX3BhdGggPSAnY29tbWl0X3F1ZXVlLmxvZycKKyAgICBidWdfbG9n
c19kaXJlY3RvcnkgPSAnY29tbWl0X3F1ZXVlX2xvZ3MnCisKKyAgICBkZWYgX3RlZV9vdXRwdXRz
X3RvX2ZpbGVzKHNlbGYsIGZpbGVzKToKKyAgICAgICAgaWYgbm90IHNlbGYuX29yaWdpbmFsX3N0
ZG91dDoKKyAgICAgICAgICAgIHNlbGYuX29yaWdpbmFsX3N0ZG91dCA9IHN5cy5zdGRvdXQKKyAg
ICAgICAgICAgIHNlbGYuX29yaWdpbmFsX3N0ZGVyciA9IHN5cy5zdGRlcnIKKyAgICAgICAgaWYg
ZmlsZXMgYW5kIGxlbihmaWxlcyk6CisgICAgICAgICAgICBzeXMuc3Rkb3V0ID0gdGVlKHNlbGYu
X29yaWdpbmFsX3N0ZG91dCwgKmZpbGVzKQorICAgICAgICAgICAgc3lzLnN0ZGVyciA9IHRlZShz
ZWxmLl9vcmlnaW5hbF9zdGRlcnIsICpmaWxlcykKKyAgICAgICAgZWxzZToKKyAgICAgICAgICAg
IHN5cy5zdGRvdXQgPSBzZWxmLl9vcmlnaW5hbF9zdGRvdXQKKyAgICAgICAgICAgIHN5cy5zdGRl
cnIgPSBzZWxmLl9vcmlnaW5hbF9zdGRlcnIKKworICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYg
X3NsZWVwKGxvZ19tZXNzYWdlKToKKyAgICAgICAgbG9nKCIlcyAgU2xlZXBpbmcgNSBtaW51dGVz
Li4uICVzIiAlIChsb2dfbWVzc2FnZSwgZGF0ZXRpbWUubm93KCkpKQorICAgICAgICB0aW1lLnNs
ZWVwKDMwMCkgIyBXYWl0IDUgbWludXRlcworCisgICAgQHN0YXRpY21ldGhvZAorICAgIGRlZiBf
b3Blbl9sb2dfZmlsZShsb2dfcGF0aCk6CisgICAgICAgIChsb2dfZGlyZWN0b3J5LCBsb2dfbmFt
ZSkgPSBvcy5wYXRoLnNwbGl0KGxvZ19wYXRoKQorICAgICAgICBpZiBsb2dfZGlyZWN0b3J5IGFu
ZCBub3Qgb3MucGF0aC5leGlzdHMobG9nX2RpcmVjdG9yeSk6CisgICAgICAgICAgICBvcy5tYWtl
ZGlycyhsb2dfZGlyZWN0b3J5KQorICAgICAgICByZXR1cm4gb3Blbihsb2dfcGF0aCwgJ2ErJykK
KworICAgIGRlZiBfYWRkX2xvZ190b19vdXRwdXRfdGVlKHNlbGYsIHBhdGgpOgorICAgICAgICBs
b2dfZmlsZSA9IHNlbGYuX29wZW5fbG9nX2ZpbGUocGF0aCkKKyAgICAgICAgc2VsZi5fZmlsZXNf
Zm9yX291dHB1dC5hcHBlbmQobG9nX2ZpbGUpCisgICAgICAgIHNlbGYuX3RlZV9vdXRwdXRzX3Rv
X2ZpbGVzKHNlbGYuX2ZpbGVzX2Zvcl9vdXRwdXQpCisgICAgICAgIHJldHVybiBsb2dfZmlsZQor
CisgICAgZGVmIF9yZW1vdmVfbG9nX2Zyb21fb3V0cHV0X3RlZShzZWxmLCBsb2dfZmlsZSk6Cisg
ICAgICAgIHNlbGYuX2ZpbGVzX2Zvcl9vdXRwdXQucmVtb3ZlKGxvZ19maWxlKQorICAgICAgICBz
ZWxmLl90ZWVfb3V0cHV0c190b19maWxlcyhzZWxmLl9maWxlc19mb3Jfb3V0cHV0KQorICAgICAg
ICBsb2dfZmlsZS5jbG9zZSgpCisKKyAgICBkZWYgX3J1bl9jb21tYW5kKHNlbGYsIGFyZ3MpOgor
ICAgICAgICBjaGlsZF9wcm9jZXNzID0gc3VicHJvY2Vzcy5Qb3BlbihhcmdzLCBzdGRvdXQ9c3Vi
cHJvY2Vzcy5QSVBFLCBzdGRlcnI9c3VicHJvY2Vzcy5TVERPVVQpCisKKyAgICAgICAgIyBVc2Ug
b3VyIG93biBjdXN0b20gd2FpdCBsb29wIGJlY2F1c2UgUG9wZW4gaWdub3JlcyBvdXIgdGVlJ2Qg
c3RkZXJyL3N0ZG91dAorICAgICAgICB3aGlsZSBUcnVlOgorICAgICAgICAgICAgb3V0cHV0X2xp
bmUgPSBjaGlsZF9wcm9jZXNzLnN0ZG91dC5yZWFkbGluZSgpCisgICAgICAgICAgICBpZiBvdXRw
dXRfbGluZSA9PSAnJyBhbmQgY2hpbGRfcHJvY2Vzcy5wb2xsKCkgIT0gTm9uZToKKyAgICAgICAg
ICAgICAgICByZXR1cm4gY2hpbGRfcHJvY2Vzcy5wb2xsKCkKKyAgICAgICAgICAgIHN5cy5zdGRv
dXQud3JpdGUob3V0cHV0X2xpbmUpCisKKyAgICBkZWYgZXhlY3V0ZShzZWxmLCBvcHRpb25zLCBh
cmdzLCB0b29sKToKKyAgICAgICAgcXVldWVfbG9nID0gc2VsZi5fYWRkX2xvZ190b19vdXRwdXRf
dGVlKHNlbGYucXVldWVfbG9nX3BhdGgpCisgICAgICAgIGxvZygiUnVubmluZyBXZWJLaXQgQ29t
bWl0IFF1ZXVlLiAlcyIgJSBkYXRldGltZS5ub3coKSkKKworICAgICAgICB3aGlsZSAoVHJ1ZSk6
CisgICAgICAgICAgICAjIEZJWE1FOiBFaXRoZXIgb2YgdGhlc2UgY2FsbHMgY291bGQgdGhyb3cg
YSBVUkxFcnJvciAoZS5nLiBjb25uZWN0aW9uIHRpbWVvdXQpIHdoaWNoIHdvdWxkIHN0b3AgdGhl
IHF1ZXVlLgorICAgICAgICAgICAgIyBXZSBtaWdodCB3YW50IHNvbWUgZXhjZXB0aW9ucyB0byBz
dG9wIHRoZSBxdWV1ZSBhbmQgb3RoZXJzIG5vdCB0bz8KKyAgICAgICAgICAgICMgV2UgY291bGQg
cnVuIHRoZXNlIGNoZWNrcyBpbiBhIHNlcGFyYXRlIHByb2Nlc3MuCisgICAgICAgICAgICAjIEFs
dGVybmF0aXZlbHkgd2UgY291bGQgcmUtYXJjaGl0ZWN0IHRvIHVzZSBhICJsYW5kLWZpcnN0LXBh
dGNoLWluLWNvbW1pdC1xdWV1ZSIgY29tbWFuZCBpbnN0ZWFkIG9mIGxhbmQtcGF0Y2hlcy4KKyAg
ICAgICAgICAgIGJ1Z19pZHMgPSB0b29sLmJ1Z3MuZmV0Y2hfYnVnX2lkc19mcm9tX2NvbW1pdF9x
dWV1ZSgpCisgICAgICAgICAgICBpZiBub3QgbGVuKGJ1Z19pZHMpOgorICAgICAgICAgICAgICAg
IHNlbGYuX3NsZWVwKCJFbXB0eSBxdWV1ZS4iKQorICAgICAgICAgICAgICAgIGNvbnRpbnVlCisK
KyAgICAgICAgICAgIGlmIG5vdCB0b29sLmJ1aWxkYm90LmNvcmVfYnVpbGRlcnNfYXJlX2dyZWVu
KCk6CisgICAgICAgICAgICAgICAgc2VsZi5fc2xlZXAoIkJ1aWxkZXJzIGFyZSByZWQuIikKKyAg
ICAgICAgICAgICAgICBjb250aW51ZQorCisgICAgICAgICAgICBsb2coIiVzIGluIGNvbW1pdCBx
dWV1ZS4gWyVzXSIgJSAocGx1cmFsaXplKCdidWcnLCBsZW4oYnVnX2lkcykpLCAiLCAiLmpvaW4o
YnVnX2lkcykpKQorCisgICAgICAgICAgICAjIFRyeSB0byBsYW5kIHBhdGNoZXMgb24gdGhlIGZp
cnN0IGJ1ZyBpbiB0aGUgcXVldWUgYmVmb3JlIGxvb3BpbmcKKyAgICAgICAgICAgIGJ1Z19pZCA9
IGJ1Z19pZHNbMF0KKyAgICAgICAgICAgIGJ1Z19sb2dfcGF0aCA9IG9zLnBhdGguam9pbihzZWxm
LmJ1Z19sb2dzX2RpcmVjdG9yeSwgIiVzLmxvZyIgJSBidWdfaWQpCisgICAgICAgICAgICBidWdf
bG9nID0gc2VsZi5fYWRkX2xvZ190b19vdXRwdXRfdGVlKGJ1Z19sb2dfcGF0aCkKKyAgICAgICAg
ICAgIHNlbGYuX3J1bl9jb21tYW5kKFsnYnVnemlsbGEtdG9vbCcsICdsYW5kLXBhdGNoZXMnLCAn
LS1mb3JjZS1jbGVhbicsICctLWNvbW1pdC1xdWV1ZScsICctLXF1aWV0JywgYnVnX2lkXSkKKyAg
ICAgICAgICAgIHNlbGYuX3JlbW92ZV9sb2dfZnJvbV9vdXRwdXRfdGVlKGJ1Z19sb2cpCisKKyAg
ICAgICAgbG9nKCJGaW5pc2hlZCBXZWJLaXQgQ29tbWl0IFF1ZXVlLiAlcyIgJSBkYXRldGltZS5u
b3coKSkKKyAgICAgICAgc2VsZi5fcmVtb3ZlX2xvZ19mcm9tX291dHB1dF90ZWUocXVldWVfbG9n
KQorCisKIGNsYXNzIE5vbldyYXBwaW5nRXBpbG9nSW5kZW50ZWRIZWxwRm9ybWF0dGVyKEluZGVu
dGVkSGVscEZvcm1hdHRlcik6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgogICAgICAgICBJbmRl
bnRlZEhlbHBGb3JtYXR0ZXIuX19pbml0X18oc2VsZikKQEAgLTYwOSw2ICs2OTYsNyBAQCBjbGFz
cyBCdWd6aWxsYVRvb2w6CiAgICAgICAgICAgICB7ICduYW1lJyA6ICdwb3N0LWRpZmYnLCAnb2Jq
ZWN0JyA6IFBvc3REaWZmQXNQYXRjaFRvQnVnKCkgfSwKICAgICAgICAgICAgIHsgJ25hbWUnIDog
J3Bvc3QtY29tbWl0cycsICdvYmplY3QnIDogUG9zdENvbW1pdHNBc1BhdGNoZXNUb0J1ZygpIH0s
CiAgICAgICAgICAgICB7ICduYW1lJyA6ICd0cmVlLXN0YXR1cycsICdvYmplY3QnIDogQ2hlY2tU
cmVlU3RhdHVzKCkgfSwKKyAgICAgICAgICAgIHsgJ25hbWUnIDogJ2NvbW1pdC1xdWV1ZScsICdv
YmplY3QnIDogTGFuZFBhdGNoZXNGcm9tQ29tbWl0UXVldWUoKSB9LAogICAgICAgICBdCiAKICAg
ICAgICAgc2VsZi5nbG9iYWxfb3B0aW9uX3BhcnNlciA9IEhlbHBQcmludGluZ09wdGlvblBhcnNl
cih1c2FnZT1zZWxmLnVzYWdlX2xpbmUoKSwgZm9ybWF0dGVyPU5vbldyYXBwaW5nRXBpbG9nSW5k
ZW50ZWRIZWxwRm9ybWF0dGVyKCksIGVwaWxvZz1zZWxmLmNvbW1hbmRzX3VzYWdlKCkpCmRpZmYg
LS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvYnVpbGRib3QucHkgYi9XZWJLaXRU
b29scy9TY3JpcHRzL21vZHVsZXMvYnVpbGRib3QucHkKaW5kZXggY2QyOTA1OS4uZDQwYWM4OCAx
MDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9tb2R1bGVzL2J1aWxkYm90LnB5CisrKyBi
L1dlYktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9idWlsZGJvdC5weQpAQCAtODYsOCArODYsNiBA
QCBjbGFzcyBCdWlsZEJvdDoKIAogICAgIGRlZiBidWlsZGVyX3N0YXR1c2VzKHNlbGYpOgogICAg
ICAgICBidWlsZF9zdGF0dXNfdXJsID0gc2VsZi5idWlsZGJvdF9zZXJ2ZXJfdXJsICsgJ29uZV9i
b3hfcGVyX2J1aWxkZXInCi0gICAgICAgIGxvZygiRmV0Y2hpbmcgJXMiICUgYnVpbGRfc3RhdHVz
X3VybCkKLQogICAgICAgICBwYWdlID0gdXJsbGliMi51cmxvcGVuKGJ1aWxkX3N0YXR1c191cmwp
CiAgICAgICAgIHNvdXAgPSBCZWF1dGlmdWxTb3VwKHBhZ2UpCiAKZGlmZiAtLWdpdCBhL1dlYktp
dFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9sb2dnaW5nLnB5IGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9t
b2R1bGVzL2xvZ2dpbmcucHkKaW5kZXggMWQyYjVkNi4uY2JjY2FjZiAxMDA2NDQKLS0tIGEvV2Vi
S2l0VG9vbHMvU2NyaXB0cy9tb2R1bGVzL2xvZ2dpbmcucHkKKysrIGIvV2ViS2l0VG9vbHMvU2Ny
aXB0cy9tb2R1bGVzL2xvZ2dpbmcucHkKQEAgLTM3LDMgKzM3LDEyIEBAIGRlZiBsb2coc3RyaW5n
KToKIGRlZiBlcnJvcihzdHJpbmcpOgogICAgIGxvZygiRVJST1I6ICVzIiAlIHN0cmluZykKICAg
ICBleGl0KDEpCisKKyMgU2ltcGxlIGNsYXNzIHRvIHNwbGl0IG91dHB1dCBiZXR3ZWVuIG11bHRp
cGxlIGRlc3RpbmF0aW9ucworY2xhc3MgdGVlOgorICAgIGRlZiBfX2luaXRfXyhzZWxmLCAqZmls
ZXMpOgorICAgICAgICBzZWxmLmZpbGVzID0gZmlsZXMKKworICAgIGRlZiB3cml0ZShzZWxmLCBz
dHJpbmcpOgorICAgICAgICBmb3IgZmlsZSBpbiBzZWxmLmZpbGVzOgorICAgICAgICAgICAgZmls
ZS53cml0ZShzdHJpbmcp
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38637</attachid>
            <date>2009-08-26 13:46:34 -0700</date>
            <delta_ts>2009-08-27 14:53:30 -0700</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-28040-20090826134633.patch</filename>
            <type>text/plain</type>
            <size>7529</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCAyZWNjZDhhLi4zNzYyMDE1IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMDgt
MjYgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGNvbW1pdC1xdWV1ZSBuZWVkcyBhIG1hc3RlciBw
cm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
ODA0MAorCisgICAgICAgIEFkZCBhIGJ1Z3ppbGxhLXRvb2wgY29tbWl0LXF1ZXVlIGNvbW1hbmQK
KyAgICAgICAgS2VlcHMgcGVyLWJ1ZyBsb2dzLCBidXQgZG9lc24ndCB5ZXQgdXBsb2FkIHRoZW0g
YW55d2hlcmUuCisKKyAgICAgICAgKiBTY3JpcHRzL2J1Z3ppbGxhLXRvb2w6IEFkZCBMYW5kUGF0
Y2hlc0Zyb21Db21taXRRdWV1ZSB0byBoYW5kbGUgJ2NvbW1pdC1xdWV1ZScKKyAgICAgICAgKiBT
Y3JpcHRzL21vZHVsZXMvYnVpbGRib3QucHk6IHJlbW92ZSBub2lzeSBsb2cgbWVzc2FnZQorICAg
ICAgICAqIFNjcmlwdHMvbW9kdWxlcy9sb2dnaW5nLnB5OiBhZGQgYSAndGVlKCknIGNhbGwgZm9y
IHNwbGl0dGluZyBvdXRwdXRzIGluIHB5dGhvbgorCiAyMDA5LTA4LTI2ICBEaW1pdHJpIEdsYXpr
b3YgIDxkZ2xhemtvdkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4KZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbCBiL1dlYktpdFRvb2xzL1Nj
cmlwdHMvYnVnemlsbGEtdG9vbAppbmRleCA4NzQ4NzU2Li4zM2I5YzFhIDEwMDc1NQotLS0gYS9X
ZWJLaXRUb29scy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0
cy9idWd6aWxsYS10b29sCkBAIC0zNSwxMyArMzUsMTUgQEAgaW1wb3J0IHJlCiBpbXBvcnQgU3Ry
aW5nSU8gIyBmb3IgYWRkX3BhdGNoX3RvX2J1ZyBmaWxlIHdyYXBwZXJzCiBpbXBvcnQgc3VicHJv
Y2VzcwogaW1wb3J0IHN5cworaW1wb3J0IHRpbWUKIAorZnJvbSBkYXRldGltZSBpbXBvcnQgZGF0
ZXRpbWUKIGZyb20gb3B0cGFyc2UgaW1wb3J0IE9wdGlvblBhcnNlciwgSW5kZW50ZWRIZWxwRm9y
bWF0dGVyLCBTVVBQUkVTU19VU0FHRSwgbWFrZV9vcHRpb24KIAogIyBJbXBvcnQgV2ViS2l0LXNw
ZWNpZmljIG1vZHVsZXMuCiBmcm9tIG1vZHVsZXMuYnVnemlsbGEgaW1wb3J0IEJ1Z3ppbGxhCiBm
cm9tIG1vZHVsZXMuY2hhbmdlbG9ncyBpbXBvcnQgQ2hhbmdlTG9nLCB2aWV3X3NvdXJjZV91cmwK
LWZyb20gbW9kdWxlcy5sb2dnaW5nIGltcG9ydCBlcnJvciwgbG9nCitmcm9tIG1vZHVsZXMubG9n
Z2luZyBpbXBvcnQgZXJyb3IsIGxvZywgdGVlCiBmcm9tIG1vZHVsZXMuc2NtIGltcG9ydCBDb21t
aXRNZXNzYWdlLCBkZXRlY3Rfc2NtX3N5c3RlbSwgU2NyaXB0RXJyb3IKIGZyb20gbW9kdWxlcy5i
dWlsZGJvdCBpbXBvcnQgQnVpbGRCb3QKIApAQCAtNTcyLDYgKzU3NCwxMDEgQEAgY2xhc3MgQ2hl
Y2tUcmVlU3RhdHVzKENvbW1hbmQpOgogICAgICAgICAgICAgcHJpbnQgIiVzIDogJXMiICUgKHN0
YXR1c19zdHJpbmcubGp1c3QoNCksIGJ1aWxkZXJbJ25hbWUnXSkKIAogCitjbGFzcyBMYW5kUGF0
Y2hlc0Zyb21Db21taXRRdWV1ZShDb21tYW5kKToKKyAgICBkZWYgX19pbml0X18oc2VsZik6Cisg
ICAgICAgIG9wdGlvbnMgPSBbCisgICAgICAgICAgICBtYWtlX29wdGlvbigiLS1uby1jb25maXJt
IiwgYWN0aW9uPSJzdG9yZV9mYWxzZSIsIGRlc3Q9ImNvbmZpcm0iLCBkZWZhdWx0PVRydWUsIGhl
bHA9IkRvIG5vdCBhc2sgdGhlIHVzZXIgZm9yIGNvbmZpcm1hdGlvbiBiZWZvcmUgcnVubmluZyB0
aGUgcXVldWUuICBEYW5nZXJvdXMhIiksCisgICAgICAgIF0KKyAgICAgICAgQ29tbWFuZC5fX2lu
aXRfXyhzZWxmLCAnUnVuIHRoZSBjb21taXQgcXVldWUuJywgb3B0aW9ucz1vcHRpb25zKQorICAg
ICAgICBzZWxmLl9vcmlnaW5hbF9zdGRvdXQgPSBOb25lCisgICAgICAgIHNlbGYuX29yaWdpbmFs
X3N0ZGVyciA9IE5vbmUKKyAgICAgICAgc2VsZi5fZmlsZXNfZm9yX291dHB1dCA9IFtdCisKKyAg
ICBxdWV1ZV9sb2dfcGF0aCA9ICdjb21taXRfcXVldWUubG9nJworICAgIGJ1Z19sb2dzX2RpcmVj
dG9yeSA9ICdjb21taXRfcXVldWVfbG9ncycKKworICAgIGRlZiBfdGVlX291dHB1dHNfdG9fZmls
ZXMoc2VsZiwgZmlsZXMpOgorICAgICAgICBpZiBub3Qgc2VsZi5fb3JpZ2luYWxfc3Rkb3V0Ogor
ICAgICAgICAgICAgc2VsZi5fb3JpZ2luYWxfc3Rkb3V0ID0gc3lzLnN0ZG91dAorICAgICAgICAg
ICAgc2VsZi5fb3JpZ2luYWxfc3RkZXJyID0gc3lzLnN0ZGVycgorICAgICAgICBpZiBmaWxlcyBh
bmQgbGVuKGZpbGVzKToKKyAgICAgICAgICAgIHN5cy5zdGRvdXQgPSB0ZWUoc2VsZi5fb3JpZ2lu
YWxfc3Rkb3V0LCAqZmlsZXMpCisgICAgICAgICAgICBzeXMuc3RkZXJyID0gdGVlKHNlbGYuX29y
aWdpbmFsX3N0ZGVyciwgKmZpbGVzKQorICAgICAgICBlbHNlOgorICAgICAgICAgICAgc3lzLnN0
ZG91dCA9IHNlbGYuX29yaWdpbmFsX3N0ZG91dAorICAgICAgICAgICAgc3lzLnN0ZGVyciA9IHNl
bGYuX29yaWdpbmFsX3N0ZGVycgorCisgICAgQHN0YXRpY21ldGhvZAorICAgIGRlZiBfc2xlZXAo
bG9nX21lc3NhZ2UpOgorICAgICAgICBsb2coIiVzICBTbGVlcGluZyA1IG1pbnV0ZXMuLi4gJXMi
ICUgKGxvZ19tZXNzYWdlLCBkYXRldGltZS5ub3coKSkpCisgICAgICAgIHRpbWUuc2xlZXAoMzAw
KSAjIFdhaXQgNSBtaW51dGVzCisKKyAgICBAc3RhdGljbWV0aG9kCisgICAgZGVmIF9vcGVuX2xv
Z19maWxlKGxvZ19wYXRoKToKKyAgICAgICAgKGxvZ19kaXJlY3RvcnksIGxvZ19uYW1lKSA9IG9z
LnBhdGguc3BsaXQobG9nX3BhdGgpCisgICAgICAgIGlmIGxvZ19kaXJlY3RvcnkgYW5kIG5vdCBv
cy5wYXRoLmV4aXN0cyhsb2dfZGlyZWN0b3J5KToKKyAgICAgICAgICAgIG9zLm1ha2VkaXJzKGxv
Z19kaXJlY3RvcnkpCisgICAgICAgIHJldHVybiBvcGVuKGxvZ19wYXRoLCAnYSsnKQorCisgICAg
ZGVmIF9hZGRfbG9nX3RvX291dHB1dF90ZWUoc2VsZiwgcGF0aCk6CisgICAgICAgIGxvZ19maWxl
ID0gc2VsZi5fb3Blbl9sb2dfZmlsZShwYXRoKQorICAgICAgICBzZWxmLl9maWxlc19mb3Jfb3V0
cHV0LmFwcGVuZChsb2dfZmlsZSkKKyAgICAgICAgc2VsZi5fdGVlX291dHB1dHNfdG9fZmlsZXMo
c2VsZi5fZmlsZXNfZm9yX291dHB1dCkKKyAgICAgICAgcmV0dXJuIGxvZ19maWxlCisKKyAgICBk
ZWYgX3JlbW92ZV9sb2dfZnJvbV9vdXRwdXRfdGVlKHNlbGYsIGxvZ19maWxlKToKKyAgICAgICAg
c2VsZi5fZmlsZXNfZm9yX291dHB1dC5yZW1vdmUobG9nX2ZpbGUpCisgICAgICAgIHNlbGYuX3Rl
ZV9vdXRwdXRzX3RvX2ZpbGVzKHNlbGYuX2ZpbGVzX2Zvcl9vdXRwdXQpCisgICAgICAgIGxvZ19m
aWxlLmNsb3NlKCkKKworICAgIGRlZiBfcnVuX2NvbW1hbmQoc2VsZiwgYXJncyk6CisgICAgICAg
IGNoaWxkX3Byb2Nlc3MgPSBzdWJwcm9jZXNzLlBvcGVuKGFyZ3MsIHN0ZG91dD1zdWJwcm9jZXNz
LlBJUEUsIHN0ZGVycj1zdWJwcm9jZXNzLlNURE9VVCkKKworICAgICAgICAjIFVzZSBvdXIgb3du
IGN1c3RvbSB3YWl0IGxvb3AgYmVjYXVzZSBQb3BlbiBpZ25vcmVzIG91ciB0ZWUnZCBzdGRlcnIv
c3Rkb3V0CisgICAgICAgIHdoaWxlIFRydWU6CisgICAgICAgICAgICBvdXRwdXRfbGluZSA9IGNo
aWxkX3Byb2Nlc3Muc3Rkb3V0LnJlYWRsaW5lKCkKKyAgICAgICAgICAgIGlmIG91dHB1dF9saW5l
ID09ICcnIGFuZCBjaGlsZF9wcm9jZXNzLnBvbGwoKSAhPSBOb25lOgorICAgICAgICAgICAgICAg
IHJldHVybiBjaGlsZF9wcm9jZXNzLnBvbGwoKQorICAgICAgICAgICAgc3lzLnN0ZG91dC53cml0
ZShvdXRwdXRfbGluZSkKKworICAgIGRlZiBleGVjdXRlKHNlbGYsIG9wdGlvbnMsIGFyZ3MsIHRv
b2wpOgorICAgICAgICBsb2coIkNBVVRJT046IGNvbW1pdC1xdWV1ZSB3aWxsIGRpc2NhcmQgYWxs
IGxvY2FsIGNoYW5nZXMgaW4gJXMiICUgdG9vbC5zY20oKS5jaGVja291dF9yb290KQorICAgICAg
ICBpZiBvcHRpb25zLmNvbmZpcm06CisgICAgICAgICAgICByZXNwb25zZSA9IHJhd19pbnB1dCgi
QXJlIHlvdSBzdXJlPyAgVHlwZSAneWVzJyB0byBjb250aW51ZTogIikKKyAgICAgICAgICAgIGlm
IChyZXNwb25zZSAhPSAneWVzJyk6CisgICAgICAgICAgICAgICAgZXJyb3IoIlVzZXIgZGVjbGlu
ZWQuIikKKworICAgICAgICBxdWV1ZV9sb2cgPSBzZWxmLl9hZGRfbG9nX3RvX291dHB1dF90ZWUo
c2VsZi5xdWV1ZV9sb2dfcGF0aCkKKyAgICAgICAgbG9nKCJSdW5uaW5nIFdlYktpdCBDb21taXQg
UXVldWUuICVzIiAlIGRhdGV0aW1lLm5vdygpKQorCisgICAgICAgIHdoaWxlIChUcnVlKToKKyAg
ICAgICAgICAgICMgRWl0aGVyIG9mIHRoZXNlIGNhbGxzIGNvdWxkIHRocm93IFVSTEVycm9yIHdo
aWNoIHNob3VsZG4ndCBzdG9wIHRoZSBxdWV1ZS4KKyAgICAgICAgICAgICMgV2UgY2F0Y2ggYWxs
IGV4Y2VwdGlvbnMganVzdCBpbiBjYXNlLgorICAgICAgICAgICAgdHJ5OgorICAgICAgICAgICAg
ICAgIGJ1Z19pZHMgPSB0b29sLmJ1Z3MuZmV0Y2hfYnVnX2lkc19mcm9tX2NvbW1pdF9xdWV1ZSgp
CisgICAgICAgICAgICAgICAgaWYgbm90IGxlbihidWdfaWRzKToKKyAgICAgICAgICAgICAgICAg
ICAgc2VsZi5fc2xlZXAoIkVtcHR5IHF1ZXVlLiIpCisgICAgICAgICAgICAgICAgICAgIGNvbnRp
bnVlCisgICAgICAgICAgICAgICAgbG9nKCIlcyBpbiBjb21taXQgcXVldWUuIFslc10iICUgKHBs
dXJhbGl6ZSgnYnVnJywgbGVuKGJ1Z19pZHMpKSwgIiwgIi5qb2luKGJ1Z19pZHMpKSkKKworICAg
ICAgICAgICAgICAgIGlmIG5vdCB0b29sLmJ1aWxkYm90LmNvcmVfYnVpbGRlcnNfYXJlX2dyZWVu
KCk6CisgICAgICAgICAgICAgICAgICAgIHNlbGYuX3NsZWVwKCJCdWlsZGVycyBhcmUgcmVkLiIp
CisgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlCisgICAgICAgICAgICBleGNlcHQgRXhjZXB0
aW9uLCBlOgorICAgICAgICAgICAgICAgIHNlbGYuX3NsZWVwKCJFeGNlcHRpb24gd2hpbGUgY2hl
Y2tpbmcgcXVldWUgYW5kIGJvdHM6ICVzLiIgJSBlKQorICAgICAgICAgICAgICAgIGNvbnRpbnVl
CisKKyAgICAgICAgICAgICMgVHJ5IHRvIGxhbmQgcGF0Y2hlcyBvbiB0aGUgZmlyc3QgYnVnIGlu
IHRoZSBxdWV1ZSBiZWZvcmUgbG9vcGluZworICAgICAgICAgICAgYnVnX2lkID0gYnVnX2lkc1sw
XQorICAgICAgICAgICAgYnVnX2xvZ19wYXRoID0gb3MucGF0aC5qb2luKHNlbGYuYnVnX2xvZ3Nf
ZGlyZWN0b3J5LCAiJXMubG9nIiAlIGJ1Z19pZCkKKyAgICAgICAgICAgIGJ1Z19sb2cgPSBzZWxm
Ll9hZGRfbG9nX3RvX291dHB1dF90ZWUoYnVnX2xvZ19wYXRoKQorICAgICAgICAgICAgc2VsZi5f
cnVuX2NvbW1hbmQoWydidWd6aWxsYS10b29sJywgJ2xhbmQtcGF0Y2hlcycsICctLWZvcmNlLWNs
ZWFuJywgJy0tY29tbWl0LXF1ZXVlJywgJy0tcXVpZXQnLCBidWdfaWRdKQorICAgICAgICAgICAg
c2VsZi5fcmVtb3ZlX2xvZ19mcm9tX291dHB1dF90ZWUoYnVnX2xvZykKKworICAgICAgICBsb2co
IkZpbmlzaGVkIFdlYktpdCBDb21taXQgUXVldWUuICVzIiAlIGRhdGV0aW1lLm5vdygpKQorICAg
ICAgICBzZWxmLl9yZW1vdmVfbG9nX2Zyb21fb3V0cHV0X3RlZShxdWV1ZV9sb2cpCisKKwogY2xh
c3MgTm9uV3JhcHBpbmdFcGlsb2dJbmRlbnRlZEhlbHBGb3JtYXR0ZXIoSW5kZW50ZWRIZWxwRm9y
bWF0dGVyKToKICAgICBkZWYgX19pbml0X18oc2VsZik6CiAgICAgICAgIEluZGVudGVkSGVscEZv
cm1hdHRlci5fX2luaXRfXyhzZWxmKQpAQCAtNjA5LDYgKzcwNiw3IEBAIGNsYXNzIEJ1Z3ppbGxh
VG9vbDoKICAgICAgICAgICAgIHsgJ25hbWUnIDogJ3Bvc3QtZGlmZicsICdvYmplY3QnIDogUG9z
dERpZmZBc1BhdGNoVG9CdWcoKSB9LAogICAgICAgICAgICAgeyAnbmFtZScgOiAncG9zdC1jb21t
aXRzJywgJ29iamVjdCcgOiBQb3N0Q29tbWl0c0FzUGF0Y2hlc1RvQnVnKCkgfSwKICAgICAgICAg
ICAgIHsgJ25hbWUnIDogJ3RyZWUtc3RhdHVzJywgJ29iamVjdCcgOiBDaGVja1RyZWVTdGF0dXMo
KSB9LAorICAgICAgICAgICAgeyAnbmFtZScgOiAnY29tbWl0LXF1ZXVlJywgJ29iamVjdCcgOiBM
YW5kUGF0Y2hlc0Zyb21Db21taXRRdWV1ZSgpIH0sCiAgICAgICAgIF0KIAogICAgICAgICBzZWxm
Lmdsb2JhbF9vcHRpb25fcGFyc2VyID0gSGVscFByaW50aW5nT3B0aW9uUGFyc2VyKHVzYWdlPXNl
bGYudXNhZ2VfbGluZSgpLCBmb3JtYXR0ZXI9Tm9uV3JhcHBpbmdFcGlsb2dJbmRlbnRlZEhlbHBG
b3JtYXR0ZXIoKSwgZXBpbG9nPXNlbGYuY29tbWFuZHNfdXNhZ2UoKSkKZGlmZiAtLWdpdCBhL1dl
YktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9idWlsZGJvdC5weSBiL1dlYktpdFRvb2xzL1Njcmlw
dHMvbW9kdWxlcy9idWlsZGJvdC5weQppbmRleCBjZDI5MDU5Li5kNDBhYzg4IDEwMDY0NAotLS0g
YS9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvYnVpbGRib3QucHkKKysrIGIvV2ViS2l0VG9v
bHMvU2NyaXB0cy9tb2R1bGVzL2J1aWxkYm90LnB5CkBAIC04Niw4ICs4Niw2IEBAIGNsYXNzIEJ1
aWxkQm90OgogCiAgICAgZGVmIGJ1aWxkZXJfc3RhdHVzZXMoc2VsZik6CiAgICAgICAgIGJ1aWxk
X3N0YXR1c191cmwgPSBzZWxmLmJ1aWxkYm90X3NlcnZlcl91cmwgKyAnb25lX2JveF9wZXJfYnVp
bGRlcicKLSAgICAgICAgbG9nKCJGZXRjaGluZyAlcyIgJSBidWlsZF9zdGF0dXNfdXJsKQotCiAg
ICAgICAgIHBhZ2UgPSB1cmxsaWIyLnVybG9wZW4oYnVpbGRfc3RhdHVzX3VybCkKICAgICAgICAg
c291cCA9IEJlYXV0aWZ1bFNvdXAocGFnZSkKIApkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2Ny
aXB0cy9tb2R1bGVzL2xvZ2dpbmcucHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvbG9n
Z2luZy5weQppbmRleCAxZDJiNWQ2Li5jYmNjYWNmIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9T
Y3JpcHRzL21vZHVsZXMvbG9nZ2luZy5weQorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVs
ZXMvbG9nZ2luZy5weQpAQCAtMzcsMyArMzcsMTIgQEAgZGVmIGxvZyhzdHJpbmcpOgogZGVmIGVy
cm9yKHN0cmluZyk6CiAgICAgbG9nKCJFUlJPUjogJXMiICUgc3RyaW5nKQogICAgIGV4aXQoMSkK
KworIyBTaW1wbGUgY2xhc3MgdG8gc3BsaXQgb3V0cHV0IGJldHdlZW4gbXVsdGlwbGUgZGVzdGlu
YXRpb25zCitjbGFzcyB0ZWU6CisgICAgZGVmIF9faW5pdF9fKHNlbGYsICpmaWxlcyk6CisgICAg
ICAgIHNlbGYuZmlsZXMgPSBmaWxlcworCisgICAgZGVmIHdyaXRlKHNlbGYsIHN0cmluZyk6Cisg
ICAgICAgIGZvciBmaWxlIGluIHNlbGYuZmlsZXM6CisgICAgICAgICAgICBmaWxlLndyaXRlKHN0
cmluZyk=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>38690</attachid>
            <date>2009-08-27 14:53:34 -0700</date>
            <delta_ts>2009-08-28 18:51:50 -0700</delta_ts>
            <desc>Updated to use __file__</desc>
            <filename>bug-28040-20090827145333.patch</filename>
            <type>text/plain</type>
            <size>7608</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA0MTI2Zjc4Li40MmM1ODA1IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMDgt
MjYgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGNvbW1pdC1xdWV1ZSBuZWVkcyBhIG1hc3RlciBw
cm9jZXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
ODA0MAorCisgICAgICAgIEFkZCBhIGJ1Z3ppbGxhLXRvb2wgY29tbWl0LXF1ZXVlIGNvbW1hbmQK
KyAgICAgICAgS2VlcHMgcGVyLWJ1ZyBsb2dzLCBidXQgZG9lc24ndCB5ZXQgdXBsb2FkIHRoZW0g
YW55d2hlcmUuCisKKyAgICAgICAgKiBTY3JpcHRzL2J1Z3ppbGxhLXRvb2w6IEFkZCBMYW5kUGF0
Y2hlc0Zyb21Db21taXRRdWV1ZSB0byBoYW5kbGUgJ2NvbW1pdC1xdWV1ZScKKyAgICAgICAgKiBT
Y3JpcHRzL21vZHVsZXMvYnVpbGRib3QucHk6IHJlbW92ZSBub2lzeSBsb2cgbWVzc2FnZQorICAg
ICAgICAqIFNjcmlwdHMvbW9kdWxlcy9sb2dnaW5nLnB5OiBhZGQgYSAndGVlKCknIGNhbGwgZm9y
IHNwbGl0dGluZyBvdXRwdXRzIGluIHB5dGhvbgorCiAyMDA5LTA4LTI2ICBDYW1lcm9uIE1jQ29y
bWFjayAgPGNhbUBtY2MuaWQuYXU+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgS2lsemVy
LgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10b29sIGIvV2ViS2l0
VG9vbHMvU2NyaXB0cy9idWd6aWxsYS10b29sCmluZGV4IDg3NDg3NTYuLjVlMjJhZDMgMTAwNzU1
Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvYnVnemlsbGEtdG9vbAorKysgYi9XZWJLaXRUb29s
cy9TY3JpcHRzL2J1Z3ppbGxhLXRvb2wKQEAgLTM1LDEzICszNSwxNSBAQCBpbXBvcnQgcmUKIGlt
cG9ydCBTdHJpbmdJTyAjIGZvciBhZGRfcGF0Y2hfdG9fYnVnIGZpbGUgd3JhcHBlcnMKIGltcG9y
dCBzdWJwcm9jZXNzCiBpbXBvcnQgc3lzCitpbXBvcnQgdGltZQogCitmcm9tIGRhdGV0aW1lIGlt
cG9ydCBkYXRldGltZQogZnJvbSBvcHRwYXJzZSBpbXBvcnQgT3B0aW9uUGFyc2VyLCBJbmRlbnRl
ZEhlbHBGb3JtYXR0ZXIsIFNVUFBSRVNTX1VTQUdFLCBtYWtlX29wdGlvbgogCiAjIEltcG9ydCBX
ZWJLaXQtc3BlY2lmaWMgbW9kdWxlcy4KIGZyb20gbW9kdWxlcy5idWd6aWxsYSBpbXBvcnQgQnVn
emlsbGEKIGZyb20gbW9kdWxlcy5jaGFuZ2Vsb2dzIGltcG9ydCBDaGFuZ2VMb2csIHZpZXdfc291
cmNlX3VybAotZnJvbSBtb2R1bGVzLmxvZ2dpbmcgaW1wb3J0IGVycm9yLCBsb2cKK2Zyb20gbW9k
dWxlcy5sb2dnaW5nIGltcG9ydCBlcnJvciwgbG9nLCB0ZWUKIGZyb20gbW9kdWxlcy5zY20gaW1w
b3J0IENvbW1pdE1lc3NhZ2UsIGRldGVjdF9zY21fc3lzdGVtLCBTY3JpcHRFcnJvcgogZnJvbSBt
b2R1bGVzLmJ1aWxkYm90IGltcG9ydCBCdWlsZEJvdAogCkBAIC01NzIsNiArNTc0LDEwMiBAQCBj
bGFzcyBDaGVja1RyZWVTdGF0dXMoQ29tbWFuZCk6CiAgICAgICAgICAgICBwcmludCAiJXMgOiAl
cyIgJSAoc3RhdHVzX3N0cmluZy5sanVzdCg0KSwgYnVpbGRlclsnbmFtZSddKQogCiAKK2NsYXNz
IExhbmRQYXRjaGVzRnJvbUNvbW1pdFF1ZXVlKENvbW1hbmQpOgorICAgIGRlZiBfX2luaXRfXyhz
ZWxmKToKKyAgICAgICAgb3B0aW9ucyA9IFsKKyAgICAgICAgICAgIG1ha2Vfb3B0aW9uKCItLW5v
LWNvbmZpcm0iLCBhY3Rpb249InN0b3JlX2ZhbHNlIiwgZGVzdD0iY29uZmlybSIsIGRlZmF1bHQ9
VHJ1ZSwgaGVscD0iRG8gbm90IGFzayB0aGUgdXNlciBmb3IgY29uZmlybWF0aW9uIGJlZm9yZSBy
dW5uaW5nIHRoZSBxdWV1ZS4gIERhbmdlcm91cyEiKSwKKyAgICAgICAgXQorICAgICAgICBDb21t
YW5kLl9faW5pdF9fKHNlbGYsICdSdW4gdGhlIGNvbW1pdCBxdWV1ZS4nLCBvcHRpb25zPW9wdGlv
bnMpCisgICAgICAgIHNlbGYuX29yaWdpbmFsX3N0ZG91dCA9IE5vbmUKKyAgICAgICAgc2VsZi5f
b3JpZ2luYWxfc3RkZXJyID0gTm9uZQorICAgICAgICBzZWxmLl9maWxlc19mb3Jfb3V0cHV0ID0g
W10KKworICAgIHF1ZXVlX2xvZ19wYXRoID0gJ2NvbW1pdF9xdWV1ZS5sb2cnCisgICAgYnVnX2xv
Z3NfZGlyZWN0b3J5ID0gJ2NvbW1pdF9xdWV1ZV9sb2dzJworCisgICAgZGVmIF90ZWVfb3V0cHV0
c190b19maWxlcyhzZWxmLCBmaWxlcyk6CisgICAgICAgIGlmIG5vdCBzZWxmLl9vcmlnaW5hbF9z
dGRvdXQ6CisgICAgICAgICAgICBzZWxmLl9vcmlnaW5hbF9zdGRvdXQgPSBzeXMuc3Rkb3V0Cisg
ICAgICAgICAgICBzZWxmLl9vcmlnaW5hbF9zdGRlcnIgPSBzeXMuc3RkZXJyCisgICAgICAgIGlm
IGZpbGVzIGFuZCBsZW4oZmlsZXMpOgorICAgICAgICAgICAgc3lzLnN0ZG91dCA9IHRlZShzZWxm
Ll9vcmlnaW5hbF9zdGRvdXQsICpmaWxlcykKKyAgICAgICAgICAgIHN5cy5zdGRlcnIgPSB0ZWUo
c2VsZi5fb3JpZ2luYWxfc3RkZXJyLCAqZmlsZXMpCisgICAgICAgIGVsc2U6CisgICAgICAgICAg
ICBzeXMuc3Rkb3V0ID0gc2VsZi5fb3JpZ2luYWxfc3Rkb3V0CisgICAgICAgICAgICBzeXMuc3Rk
ZXJyID0gc2VsZi5fb3JpZ2luYWxfc3RkZXJyCisKKyAgICBAc3RhdGljbWV0aG9kCisgICAgZGVm
IF9zbGVlcChsb2dfbWVzc2FnZSk6CisgICAgICAgIGxvZygiJXMgIFNsZWVwaW5nIDUgbWludXRl
cy4uLiAlcyIgJSAobG9nX21lc3NhZ2UsIGRhdGV0aW1lLm5vdygpKSkKKyAgICAgICAgdGltZS5z
bGVlcCgzMDApICMgV2FpdCA1IG1pbnV0ZXMKKworICAgIEBzdGF0aWNtZXRob2QKKyAgICBkZWYg
X29wZW5fbG9nX2ZpbGUobG9nX3BhdGgpOgorICAgICAgICAobG9nX2RpcmVjdG9yeSwgbG9nX25h
bWUpID0gb3MucGF0aC5zcGxpdChsb2dfcGF0aCkKKyAgICAgICAgaWYgbG9nX2RpcmVjdG9yeSBh
bmQgbm90IG9zLnBhdGguZXhpc3RzKGxvZ19kaXJlY3RvcnkpOgorICAgICAgICAgICAgb3MubWFr
ZWRpcnMobG9nX2RpcmVjdG9yeSkKKyAgICAgICAgcmV0dXJuIG9wZW4obG9nX3BhdGgsICdhKycp
CisKKyAgICBkZWYgX2FkZF9sb2dfdG9fb3V0cHV0X3RlZShzZWxmLCBwYXRoKToKKyAgICAgICAg
bG9nX2ZpbGUgPSBzZWxmLl9vcGVuX2xvZ19maWxlKHBhdGgpCisgICAgICAgIHNlbGYuX2ZpbGVz
X2Zvcl9vdXRwdXQuYXBwZW5kKGxvZ19maWxlKQorICAgICAgICBzZWxmLl90ZWVfb3V0cHV0c190
b19maWxlcyhzZWxmLl9maWxlc19mb3Jfb3V0cHV0KQorICAgICAgICByZXR1cm4gbG9nX2ZpbGUK
KworICAgIGRlZiBfcmVtb3ZlX2xvZ19mcm9tX291dHB1dF90ZWUoc2VsZiwgbG9nX2ZpbGUpOgor
ICAgICAgICBzZWxmLl9maWxlc19mb3Jfb3V0cHV0LnJlbW92ZShsb2dfZmlsZSkKKyAgICAgICAg
c2VsZi5fdGVlX291dHB1dHNfdG9fZmlsZXMoc2VsZi5fZmlsZXNfZm9yX291dHB1dCkKKyAgICAg
ICAgbG9nX2ZpbGUuY2xvc2UoKQorCisgICAgZGVmIF9ydW5fY29tbWFuZChzZWxmLCBhcmdzKToK
KyAgICAgICAgY2hpbGRfcHJvY2VzcyA9IHN1YnByb2Nlc3MuUG9wZW4oYXJncywgc3Rkb3V0PXN1
YnByb2Nlc3MuUElQRSwgc3RkZXJyPXN1YnByb2Nlc3MuU1RET1VUKQorCisgICAgICAgICMgVXNl
IG91ciBvd24gY3VzdG9tIHdhaXQgbG9vcCBiZWNhdXNlIFBvcGVuIGlnbm9yZXMgb3VyIHRlZSdk
IHN0ZGVyci9zdGRvdXQKKyAgICAgICAgd2hpbGUgVHJ1ZToKKyAgICAgICAgICAgIG91dHB1dF9s
aW5lID0gY2hpbGRfcHJvY2Vzcy5zdGRvdXQucmVhZGxpbmUoKQorICAgICAgICAgICAgaWYgb3V0
cHV0X2xpbmUgPT0gJycgYW5kIGNoaWxkX3Byb2Nlc3MucG9sbCgpICE9IE5vbmU6CisgICAgICAg
ICAgICAgICAgcmV0dXJuIGNoaWxkX3Byb2Nlc3MucG9sbCgpCisgICAgICAgICAgICBzeXMuc3Rk
b3V0LndyaXRlKG91dHB1dF9saW5lKQorCisgICAgZGVmIGV4ZWN1dGUoc2VsZiwgb3B0aW9ucywg
YXJncywgdG9vbCk6CisgICAgICAgIGxvZygiQ0FVVElPTjogY29tbWl0LXF1ZXVlIHdpbGwgZGlz
Y2FyZCBhbGwgbG9jYWwgY2hhbmdlcyBpbiAlcyIgJSB0b29sLnNjbSgpLmNoZWNrb3V0X3Jvb3Qp
CisgICAgICAgIGlmIG9wdGlvbnMuY29uZmlybToKKyAgICAgICAgICAgIHJlc3BvbnNlID0gcmF3
X2lucHV0KCJBcmUgeW91IHN1cmU/ICBUeXBlICd5ZXMnIHRvIGNvbnRpbnVlOiAiKQorICAgICAg
ICAgICAgaWYgKHJlc3BvbnNlICE9ICd5ZXMnKToKKyAgICAgICAgICAgICAgICBlcnJvcigiVXNl
ciBkZWNsaW5lZC4iKQorCisgICAgICAgIHF1ZXVlX2xvZyA9IHNlbGYuX2FkZF9sb2dfdG9fb3V0
cHV0X3RlZShzZWxmLnF1ZXVlX2xvZ19wYXRoKQorICAgICAgICBsb2coIlJ1bm5pbmcgV2ViS2l0
IENvbW1pdCBRdWV1ZS4gJXMiICUgZGF0ZXRpbWUubm93KCkpCisKKyAgICAgICAgd2hpbGUgKFRy
dWUpOgorICAgICAgICAgICAgIyBFaXRoZXIgb2YgdGhlc2UgY2FsbHMgY291bGQgdGhyb3cgVVJM
RXJyb3Igd2hpY2ggc2hvdWxkbid0IHN0b3AgdGhlIHF1ZXVlLgorICAgICAgICAgICAgIyBXZSBj
YXRjaCBhbGwgZXhjZXB0aW9ucyBqdXN0IGluIGNhc2UuCisgICAgICAgICAgICB0cnk6CisgICAg
ICAgICAgICAgICAgYnVnX2lkcyA9IHRvb2wuYnVncy5mZXRjaF9idWdfaWRzX2Zyb21fY29tbWl0
X3F1ZXVlKCkKKyAgICAgICAgICAgICAgICBpZiBub3QgbGVuKGJ1Z19pZHMpOgorICAgICAgICAg
ICAgICAgICAgICBzZWxmLl9zbGVlcCgiRW1wdHkgcXVldWUuIikKKyAgICAgICAgICAgICAgICAg
ICAgY29udGludWUKKyAgICAgICAgICAgICAgICBsb2coIiVzIGluIGNvbW1pdCBxdWV1ZS4gWyVz
XSIgJSAocGx1cmFsaXplKCdidWcnLCBsZW4oYnVnX2lkcykpLCAiLCAiLmpvaW4oYnVnX2lkcykp
KQorCisgICAgICAgICAgICAgICAgaWYgbm90IHRvb2wuYnVpbGRib3QuY29yZV9idWlsZGVyc19h
cmVfZ3JlZW4oKToKKyAgICAgICAgICAgICAgICAgICAgc2VsZi5fc2xlZXAoIkJ1aWxkZXJzIGFy
ZSByZWQuIikKKyAgICAgICAgICAgICAgICAgICAgY29udGludWUKKyAgICAgICAgICAgIGV4Y2Vw
dCBFeGNlcHRpb24sIGU6CisgICAgICAgICAgICAgICAgc2VsZi5fc2xlZXAoIkV4Y2VwdGlvbiB3
aGlsZSBjaGVja2luZyBxdWV1ZSBhbmQgYm90czogJXMuIiAlIGUpCisgICAgICAgICAgICAgICAg
Y29udGludWUKKworICAgICAgICAgICAgIyBUcnkgdG8gbGFuZCBwYXRjaGVzIG9uIHRoZSBmaXJz
dCBidWcgaW4gdGhlIHF1ZXVlIGJlZm9yZSBsb29waW5nCisgICAgICAgICAgICBidWdfaWQgPSBi
dWdfaWRzWzBdCisgICAgICAgICAgICBidWdfbG9nX3BhdGggPSBvcy5wYXRoLmpvaW4oc2VsZi5i
dWdfbG9nc19kaXJlY3RvcnksICIlcy5sb2ciICUgYnVnX2lkKQorICAgICAgICAgICAgYnVnX2xv
ZyA9IHNlbGYuX2FkZF9sb2dfdG9fb3V0cHV0X3RlZShidWdfbG9nX3BhdGgpCisgICAgICAgICAg
ICBidWd6aWxsYV90b29sX3BhdGggPSBfX2ZpbGVfXyAjIHJlLWV4ZWN1dGUgdGhpcyBzY3JpcHQK
KyAgICAgICAgICAgIHNlbGYuX3J1bl9jb21tYW5kKFtidWd6aWxsYV90b29sX3BhdGgsICdsYW5k
LXBhdGNoZXMnLCAnLS1mb3JjZS1jbGVhbicsICctLWNvbW1pdC1xdWV1ZScsICctLXF1aWV0Jywg
YnVnX2lkXSkKKyAgICAgICAgICAgIHNlbGYuX3JlbW92ZV9sb2dfZnJvbV9vdXRwdXRfdGVlKGJ1
Z19sb2cpCisKKyAgICAgICAgbG9nKCJGaW5pc2hlZCBXZWJLaXQgQ29tbWl0IFF1ZXVlLiAlcyIg
JSBkYXRldGltZS5ub3coKSkKKyAgICAgICAgc2VsZi5fcmVtb3ZlX2xvZ19mcm9tX291dHB1dF90
ZWUocXVldWVfbG9nKQorCisKIGNsYXNzIE5vbldyYXBwaW5nRXBpbG9nSW5kZW50ZWRIZWxwRm9y
bWF0dGVyKEluZGVudGVkSGVscEZvcm1hdHRlcik6CiAgICAgZGVmIF9faW5pdF9fKHNlbGYpOgog
ICAgICAgICBJbmRlbnRlZEhlbHBGb3JtYXR0ZXIuX19pbml0X18oc2VsZikKQEAgLTYwOSw2ICs3
MDcsNyBAQCBjbGFzcyBCdWd6aWxsYVRvb2w6CiAgICAgICAgICAgICB7ICduYW1lJyA6ICdwb3N0
LWRpZmYnLCAnb2JqZWN0JyA6IFBvc3REaWZmQXNQYXRjaFRvQnVnKCkgfSwKICAgICAgICAgICAg
IHsgJ25hbWUnIDogJ3Bvc3QtY29tbWl0cycsICdvYmplY3QnIDogUG9zdENvbW1pdHNBc1BhdGNo
ZXNUb0J1ZygpIH0sCiAgICAgICAgICAgICB7ICduYW1lJyA6ICd0cmVlLXN0YXR1cycsICdvYmpl
Y3QnIDogQ2hlY2tUcmVlU3RhdHVzKCkgfSwKKyAgICAgICAgICAgIHsgJ25hbWUnIDogJ2NvbW1p
dC1xdWV1ZScsICdvYmplY3QnIDogTGFuZFBhdGNoZXNGcm9tQ29tbWl0UXVldWUoKSB9LAogICAg
ICAgICBdCiAKICAgICAgICAgc2VsZi5nbG9iYWxfb3B0aW9uX3BhcnNlciA9IEhlbHBQcmludGlu
Z09wdGlvblBhcnNlcih1c2FnZT1zZWxmLnVzYWdlX2xpbmUoKSwgZm9ybWF0dGVyPU5vbldyYXBw
aW5nRXBpbG9nSW5kZW50ZWRIZWxwRm9ybWF0dGVyKCksIGVwaWxvZz1zZWxmLmNvbW1hbmRzX3Vz
YWdlKCkpCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvYnVpbGRib3Qu
cHkgYi9XZWJLaXRUb29scy9TY3JpcHRzL21vZHVsZXMvYnVpbGRib3QucHkKaW5kZXggY2QyOTA1
OS4uZDQwYWM4OCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9tb2R1bGVzL2J1aWxk
Ym90LnB5CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9idWlsZGJvdC5weQpAQCAt
ODYsOCArODYsNiBAQCBjbGFzcyBCdWlsZEJvdDoKIAogICAgIGRlZiBidWlsZGVyX3N0YXR1c2Vz
KHNlbGYpOgogICAgICAgICBidWlsZF9zdGF0dXNfdXJsID0gc2VsZi5idWlsZGJvdF9zZXJ2ZXJf
dXJsICsgJ29uZV9ib3hfcGVyX2J1aWxkZXInCi0gICAgICAgIGxvZygiRmV0Y2hpbmcgJXMiICUg
YnVpbGRfc3RhdHVzX3VybCkKLQogICAgICAgICBwYWdlID0gdXJsbGliMi51cmxvcGVuKGJ1aWxk
X3N0YXR1c191cmwpCiAgICAgICAgIHNvdXAgPSBCZWF1dGlmdWxTb3VwKHBhZ2UpCiAKZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvbW9kdWxlcy9sb2dnaW5nLnB5IGIvV2ViS2l0VG9v
bHMvU2NyaXB0cy9tb2R1bGVzL2xvZ2dpbmcucHkKaW5kZXggMWQyYjVkNi4uY2JjY2FjZiAxMDA2
NDQKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9tb2R1bGVzL2xvZ2dpbmcucHkKKysrIGIvV2Vi
S2l0VG9vbHMvU2NyaXB0cy9tb2R1bGVzL2xvZ2dpbmcucHkKQEAgLTM3LDMgKzM3LDEyIEBAIGRl
ZiBsb2coc3RyaW5nKToKIGRlZiBlcnJvcihzdHJpbmcpOgogICAgIGxvZygiRVJST1I6ICVzIiAl
IHN0cmluZykKICAgICBleGl0KDEpCisKKyMgU2ltcGxlIGNsYXNzIHRvIHNwbGl0IG91dHB1dCBi
ZXR3ZWVuIG11bHRpcGxlIGRlc3RpbmF0aW9ucworY2xhc3MgdGVlOgorICAgIGRlZiBfX2luaXRf
XyhzZWxmLCAqZmlsZXMpOgorICAgICAgICBzZWxmLmZpbGVzID0gZmlsZXMKKworICAgIGRlZiB3
cml0ZShzZWxmLCBzdHJpbmcpOgorICAgICAgICBmb3IgZmlsZSBpbiBzZWxmLmZpbGVzOgorICAg
ICAgICAgICAgZmlsZS53cml0ZShzdHJpbmcp
</data>

          </attachment>
      

    </bug>

</bugzilla>