<?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>51642</bug_id>
          
          <creation_ts>2010-12-27 06:39:48 -0800</creation_ts>
          <short_desc>Add WinCE support to build-webkit</short_desc>
          <delta_ts>2011-01-03 13:04:42 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Other</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>50523</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Patrick R. Gansterer">paroga</reporter>
          <assigned_to name="Patrick R. Gansterer">paroga</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>327027</commentid>
    <comment_count>0</comment_count>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2010-12-27 06:39:48 -0800</bug_when>
    <thetext>see patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>327029</commentid>
    <comment_count>1</comment_count>
      <attachid>77500</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2010-12-27 06:42:19 -0800</bug_when>
    <thetext>Created attachment 77500
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>327358</commentid>
    <comment_count>2</comment_count>
      <attachid>77500</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-28 14:02:07 -0800</bug_when>
    <thetext>Comment on attachment 77500
Patch

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

&gt; Tools/Scripts/build-webkit:522
&gt; +    exit exitStatus($result) if exitStatus($result);

Why does WinCE short-circut the rest of the build-webkit infrastructure?  That seems like a bad idea long-term.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>327359</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-28 14:02:18 -0800</bug_when>
    <thetext>build-webkit is kinda a disaster these days.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>327364</commentid>
    <comment_count>4</comment_count>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2010-12-28 14:07:35 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 77500 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=77500&amp;action=review
&gt; 
&gt; &gt; Tools/Scripts/build-webkit:522
&gt; &gt; +    exit exitStatus($result) if exitStatus($result);
&gt; 
&gt; Why does WinCE short-circut the rest of the build-webkit infrastructure?  That seems like a bad idea long-term.
I do the same as EFL port, which uses CMake too.

(In reply to comment #3)
&gt; build-webkit is kinda a disaster these days.
I don&apos;t want to use it, but i need it for the buildbot. An alternative is to extend the buildbot config, but I&apos;m not sure if that&apos;s a better idea?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>327369</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-28 14:14:19 -0800</bug_when>
    <thetext>The correct solution is to use build-webkit.  But we (as a project) need to continue re-factoring and cleaning it up.  Eventually maybe we&apos;ll re-write it in a cleaner language. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>327372</commentid>
    <comment_count>6</comment_count>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2010-12-28 14:17:28 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; The correct solution is to use build-webkit.  But we (as a project) need to continue re-factoring and cleaning it up.  Eventually maybe we&apos;ll re-write it in a cleaner language. :)
+1, but any &quot;short term&quot; solution for this? my buildbot machine is waiting and only needs the &quot;build scripts&quot; to start working ;-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328035</commentid>
    <comment_count>7</comment_count>
      <attachid>77500</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2010-12-30 14:00:23 -0800</bug_when>
    <thetext>Comment on attachment 77500
Patch

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

r- to clean up variable usage in buildCMakeProject().

&gt;&gt;&gt; Tools/Scripts/build-webkit:522
&gt;&gt;&gt; +    exit exitStatus($result) if exitStatus($result);
&gt;&gt; 
&gt;&gt; Why does WinCE short-circut the rest of the build-webkit infrastructure?  That seems like a bad idea long-term.
&gt; 
&gt; I do the same as EFL port, which uses CMake too.
&gt; 
&gt; (In reply to comment #3)

This is fine IMO.

&gt; Tools/Scripts/webkitdirs.pm:1454
&gt; +            $makeArgs .= &quot;--config Debug&quot;;

I think this should have a space at the beginning of the string (before &quot;--config&quot;).

&gt; Tools/Scripts/webkitdirs.pm:1456
&gt; +            $makeArgs .= &quot;--config Release&quot;;

This should also have a space at the beginning of the string.

Or are these cmake arguments that must come before the &quot;--&quot; argument?  If so, they should really be in their own variable, not prepended to $makeArgs.

&gt; Tools/Scripts/webkitdirs.pm:1459
&gt; +        $makeArgs .= &quot;-- -j&quot; . numberOfCPUs() if ($makeArgs !~ m/-j\s*\d+/);

Why is the empty &quot;--&quot; used here?  That makes this code path different than the previous code path.

I see, you changed $make to &quot;$cmakebin --build .&quot; below, which means you need to pass arguments to make after &quot;--&quot;, right?  I think it would be clearer to add the &quot;--&quot; to the $make command so that $makeArgs doesn&apos;t need to add it.

&gt; Tools/Scripts/webkitdirs.pm:1469
&gt; +        my $make = $cmakebin . &quot; --build .&quot;;

Add &quot; --&quot; to the end of the $make string here so it doesn&apos;t have to be added to $makeArgs in special places.

&gt; Tools/Scripts/webkitdirs.pm:1476
&gt; +                $makeArgs = &quot;-- &quot; . $1;

This change is not needed if &quot; --&quot; is prepended to $make above.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328036</commentid>
    <comment_count>8</comment_count>
      <attachid>77500</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2010-12-30 14:06:53 -0800</bug_when>
    <thetext>Comment on attachment 77500
Patch

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

I&apos;ll create a new patch.

&gt;&gt; Tools/Scripts/webkitdirs.pm:1456
&gt;&gt; +            $makeArgs .= &quot;--config Release&quot;;
&gt; 
&gt; This should also have a space at the beginning of the string.
&gt; 
&gt; Or are these cmake arguments that must come before the &quot;--&quot; argument?  If so, they should really be in their own variable, not prepended to $makeArgs.

CMake passes _everything_ after &quot;--&quot; to the make tool, so the --config needs to be before it. A new variable makes sense!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328039</commentid>
    <comment_count>9</comment_count>
      <attachid>77698</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2010-12-30 14:25:39 -0800</bug_when>
    <thetext>Created attachment 77698
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328692</commentid>
    <comment_count>10</comment_count>
      <attachid>77698</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2011-01-03 11:53:25 -0800</bug_when>
    <thetext>Comment on attachment 77698
Patch

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

r=me, but you need to fix up the space before the &quot;-j&quot;, and please consider renaming the $make variable.

&gt; Tools/Scripts/webkitdirs.pm:1465
&gt; +        $makeArgs .= &quot;-j&quot; . numberOfCPUs() if ($makeArgs !~ m/-j\s*\d+/);

Still need a space before the &quot;-j&quot; here:  &quot; -j&quot;.

&gt; Tools/Scripts/webkitdirs.pm:1475
&gt; -        my $make = &quot;make&quot;;
&gt; +        my $make = $cmakebin . &quot; --build .&quot;;

Nit:  Using $make here is now confusing.  I would rename $make to something like $cmakeBuildCommand.

&gt; Tools/Scripts/webkitdirs.pm:1511
&gt; +        $result = system &quot;$make $cmakeBuildArgs&quot;;

Renaming $make to $cmakeBuildCommand would make this read better:

        $result = system &quot;$cmakeBuildCommand $cmakeBuildArgs&quot;;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328705</commentid>
    <comment_count>11</comment_count>
      <attachid>77834</attachid>
    <who name="Patrick R. Gansterer">paroga</who>
    <bug_when>2011-01-03 12:06:25 -0800</bug_when>
    <thetext>Created attachment 77834
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328706</commentid>
    <comment_count>12</comment_count>
      <attachid>77834</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2011-01-03 12:09:07 -0800</bug_when>
    <thetext>Comment on attachment 77834
Patch

r=me  Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328724</commentid>
    <comment_count>13</comment_count>
      <attachid>77834</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-03 13:04:35 -0800</bug_when>
    <thetext>Comment on attachment 77834
Patch

Clearing flags on attachment: 77834

Committed r74928: &lt;http://trac.webkit.org/changeset/74928&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>328725</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2011-01-03 13:04:42 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>77500</attachid>
            <date>2010-12-27 06:42:19 -0800</date>
            <delta_ts>2010-12-30 14:25:39 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-51642.patch</filename>
            <type>text/plain</type>
            <size>6066</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCAxOGIy
N2M4Li45NDA0ZWM2IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMTItMjcgIFBhdHJpY2sgR2Fuc3RlcmVyICA8
cGFyb2dhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIFdpbkNFIHN1cHBvcnQgdG8gYnVpbGQtd2Via2l0CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MTY0MgorCisgICAgICAgICog
U2NyaXB0cy9idWlsZC13ZWJraXQ6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJzLnBtOgor
CiAyMDEwLTEyLTI1ICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL2J1aWxk
LXdlYmtpdCBiL1Rvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CmluZGV4IGNiYzhlYmEuLjg3MWEz
MjMgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CisrKyBiL1Rvb2xzL1Nj
cmlwdHMvYnVpbGQtd2Via2l0CkBAIC0yOTksMTEgKzI5OSwxNCBAQCBVc2FnZTogJHByb2dyYW1O
YW1lIFtvcHRpb25zXSBbb3B0aW9ucyB0byBwYXNzIHRvIGJ1aWxkIHN5c3RlbV0KICAgLS1oZWxw
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3NhZ2UKICAgLS1j
bGVhbiAgICAgICAgICAgICAgICAgICAgICAgICAgIENsZWFudXAgdGhlIGJ1aWxkIGRpcmVjdG9y
eQogICAtLWRlYnVnICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29tcGlsZSBpbiBkZWJ1ZyBt
b2RlCi0gIC0td2luY2Fpcm8gICAgICAgICAgICAgICAgICAgICAgICBCdWlsZCB1c2luZyBDYWly
byAocmF0aGVyIHRoYW4gQ29yZUdyYXBoaWNzKSBvbiBXaW5kb3dzCisKICAgLS1jaHJvbWl1bSAg
ICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHRoZSBDaHJvbWl1bSBwb3J0IG9uIE1hYy9XaW4v
TGludXgKKyAgLS1lZmwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHRoZSBFRkwg
cG9ydAogICAtLWd0ayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGQgdGhlIEdUSysg
cG9ydAogICAtLXF0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGQgdGhlIFF0IHBv
cnQKLSAgLS1lZmwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHRoZSBFRkwgcG9y
dAorICAtLXdpbmNhaXJvICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGQgdXNpbmcgQ2Fpcm8g
KHJhdGhlciB0aGFuIENvcmVHcmFwaGljcykgb24gV2luZG93cworICAtLXdpbmNlICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQnVpbGQgdGhlIFdpbkNFIHBvcnQKKwogICAtLWluc3BlY3Rvci1m
cm9udGVuZCAgICAgICAgICAgICAgQ29weSBjaGFuZ2VzIHRvIHRoZSBpbnNwZWN0b3IgZnJvbnQt
ZW5kIGZpbGVzIHRvIHRoZSBidWlsZCBkaXJlY3RvcnkKIAogICAtLWluc3RhbGwtaGVhZGVycz08
cGF0aD4gICAgICAgICAgU2V0IGluc3RhbGxhdGlvbiBwYXRoIGZvciB0aGUgaGVhZGVycyAoUXQg
b25seSkKQEAgLTUwNCw2ICs1MDcsMjEgQEAgaWYgKGlzRWZsKCkpIHsKICAgICBleGl0IGV4aXRT
dGF0dXMoJHJlc3VsdCkgaWYgZXhpdFN0YXR1cygkcmVzdWx0KTsKIH0KIAoraWYgKGlzV2luQ0Uo
KSkgeworICAgIEBvcHRpb25zID0gKCk7CisgICAgQHByb2plY3RzID0gKCk7CisgICAgZm9yZWFj
aCAoQGZlYXR1cmVzKSB7CisgICAgICAgIG15ICRmZWF0dXJlTmFtZSA9ICRfLT57ZGVmaW5lfTsK
KyAgICAgICAgaWYgKCRmZWF0dXJlTmFtZSkgeworICAgICAgICAgICAgbXkgJGZlYXR1cmVFbmFi
bGVkID0gJHskXy0+e3ZhbHVlfX0gPyAiT04iIDogIk9GRiI7CisgICAgICAgICAgICBwdXNoIEBv
cHRpb25zLCAiLUQkZmVhdHVyZU5hbWU9JGZlYXR1cmVFbmFibGVkIjsKKyAgICAgICAgfQorICAg
IH0KKyAgICBwdXNoIEBvcHRpb25zLCAiLS1tYWtlYXJncz0iIC4gJG1ha2VBcmdzIGlmIGRlZmlu
ZWQoJG1ha2VBcmdzKTsKKyAgICBteSAkcmVzdWx0ID0gYnVpbGRDTWFrZVdpbkNFUHJvamVjdCgi
U1RBTkRBUkRTREtfNTAwIChBUk1WNEkpIiwgJGNsZWFuLCBAb3B0aW9ucyk7CisgICAgZXhpdCBl
eGl0U3RhdHVzKCRyZXN1bHQpIGlmIGV4aXRTdGF0dXMoJHJlc3VsdCk7Cit9CisKICMgQnVpbGQs
IGFuZCBhYm9ydCBpZiB0aGUgYnVpbGQgZmFpbHMuCiBmb3IgbXkgJGRpciAoQHByb2plY3RzKSB7
CiAgICAgY2hkaXIgJGRpciBvciBkaWU7CmRpZmYgLS1naXQgYS9Ub29scy9TY3JpcHRzL3dlYmtp
dGRpcnMucG0gYi9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0KaW5kZXggYWM0MGVjNi4uMzEy
YTc1MSAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCisrKyBiL1Rvb2xz
L1NjcmlwdHMvd2Via2l0ZGlycy5wbQpAQCAtNjMsNiArNjMsNyBAQCBteSAkaXNRdDsKIG15ICRp
c1N5bWJpYW47CiBteSAlcXRGZWF0dXJlRGVmYXVsdHM7CiBteSAkaXNHdGs7CitteSAkaXNXaW5D
RTsKIG15ICRpc1d4OwogbXkgJGlzRWZsOwogbXkgQHd4QXJnczsKQEAgLTI3Miw2ICsyNzMsNyBA
QCBzdWIgYXJndW1lbnRzRm9yQ29uZmlndXJhdGlvbigpCiAgICAgcHVzaChAYXJncywgJy0tc3lt
YmlhbicpIGlmIGlzU3ltYmlhbigpOwogICAgIHB1c2goQGFyZ3MsICctLWd0aycpIGlmIGlzR3Rr
KCk7CiAgICAgcHVzaChAYXJncywgJy0tZWZsJykgaWYgaXNFZmwoKTsKKyAgICBwdXNoKEBhcmdz
LCAnLS13aW5jZScpIGlmIGlzV2luQ0UoKTsKICAgICBwdXNoKEBhcmdzLCAnLS13eCcpIGlmIGlz
V3goKTsKICAgICBwdXNoKEBhcmdzLCAnLS1jaHJvbWl1bScpIGlmIGlzQ2hyb21pdW0oKTsKICAg
ICBwdXNoKEBhcmdzLCAnLS1pbnNwZWN0b3ItZnJvbnRlbmQnKSBpZiBpc0luc3BlY3RvckZyb250
ZW5kKCk7CkBAIC02MDIsNiArNjA0LDkgQEAgc3ViIGJ1aWx0RHlsaWJQYXRoRm9yTmFtZQogICAg
IGlmIChpc0VmbCgpKSB7CiAgICAgICAgIHJldHVybiAiJGNvbmZpZ3VyYXRpb25Qcm9kdWN0RGly
LyRsaWJyYXJ5TmFtZS8uLi8ubGlicy9saWJld2Via2l0LnNvIjsKICAgICB9CisgICAgaWYgKGlz
V2luQ0UoKSkgeworICAgICAgICByZXR1cm4gIiRjb25maWd1cmF0aW9uUHJvZHVjdERpci8kbGli
cmFyeU5hbWUiOworICAgIH0KICAgICBpZiAoaXNBcHBsZU1hY1dlYktpdCgpKSB7CiAgICAgICAg
IHJldHVybiAiJGNvbmZpZ3VyYXRpb25Qcm9kdWN0RGlyLyRsaWJyYXJ5TmFtZS5mcmFtZXdvcmsv
VmVyc2lvbnMvQS8kbGlicmFyeU5hbWUiOwogICAgIH0KQEAgLTc1NSw2ICs3NjAsMTggQEAgc3Vi
IGRldGVybWluZUlzR3RrKCkKICAgICAkaXNHdGsgPSBjaGVja0ZvckFyZ3VtZW50QW5kUmVtb3Zl
RnJvbUFSR1YoIi0tZ3RrIik7CiB9CiAKK3N1YiBpc1dpbkNFKCkKK3sKKyAgICBkZXRlcm1pbmVJ
c1dpbkNFKCk7CisgICAgcmV0dXJuICRpc1dpbkNFOworfQorCitzdWIgZGV0ZXJtaW5lSXNXaW5D
RSgpCit7CisgICAgcmV0dXJuIGlmIGRlZmluZWQoJGlzV2luQ0UpOworICAgICRpc1dpbkNFID0g
Y2hlY2tGb3JBcmd1bWVudEFuZFJlbW92ZUZyb21BUkdWKCItLXdpbmNlIik7Cit9CisKIHN1YiBp
c1d4KCkKIHsKICAgICBkZXRlcm1pbmVJc1d4KCk7CkBAIC04NjksNyArODg2LDcgQEAgc3ViIGlz
TGludXgoKQogCiBzdWIgaXNBcHBsZVdlYktpdCgpCiB7Ci0gICAgcmV0dXJuICEoaXNRdCgpIG9y
IGlzR3RrKCkgb3IgaXNXeCgpIG9yIGlzQ2hyb21pdW0oKSBvciBpc0VmbCgpKTsKKyAgICByZXR1
cm4gIShpc1F0KCkgb3IgaXNHdGsoKSBvciBpc1d4KCkgb3IgaXNDaHJvbWl1bSgpIG9yIGlzRWZs
KCkgb3IgaXNXaW5DRSgpKTsKIH0KIAogc3ViIGlzQXBwbGVNYWNXZWJLaXQoKQpAQCAtOTU2LDcg
Kzk3Myw3IEBAIHN1YiByZWxhdGl2ZVNjcmlwdHNEaXIoKQogc3ViIGxhdW5jaGVyUGF0aCgpCiB7
CiAgICAgbXkgJHJlbGF0aXZlU2NyaXB0c1BhdGggPSByZWxhdGl2ZVNjcmlwdHNEaXIoKTsKLSAg
ICBpZiAoaXNHdGsoKSB8fCBpc1F0KCkgfHwgaXNXeCgpIHx8IGlzRWZsKCkpIHsKKyAgICBpZiAo
aXNHdGsoKSB8fCBpc1F0KCkgfHwgaXNXeCgpIHx8IGlzRWZsKCkgfHwgaXNXaW5DRSgpKSB7CiAg
ICAgICAgIHJldHVybiAiJHJlbGF0aXZlU2NyaXB0c1BhdGgvcnVuLWxhdW5jaGVyIjsKICAgICB9
IGVsc2lmIChpc0FwcGxlV2ViS2l0KCkpIHsKICAgICAgICAgcmV0dXJuICIkcmVsYXRpdmVTY3Jp
cHRzUGF0aC9ydW4tc2FmYXJpIjsKQEAgLTk3NSw2ICs5OTIsOCBAQCBzdWIgbGF1bmNoZXJOYW1l
KCkKICAgICAgICAgcmV0dXJuICJTYWZhcmkiOwogICAgIH0gZWxzaWYgKGlzRWZsKCkpIHsKICAg
ICAgICAgcmV0dXJuICJFV2ViTGF1bmNoZXIiOworICAgIH0gZWxzaWYgKGlzV2luQ0UoKSkgewor
ICAgICAgICByZXR1cm4gIldpbkNFTGF1bmNoZXIiOwogICAgIH0KIH0KIApAQCAtMTQyOSw4ICsx
NDQ4LDE2IEBAIHN1YiBidWlsZENNYWtlUHJvamVjdCgkQCkKICAgICBteSAkcmVzdWx0OwogICAg
IG15ICRtYWtlQXJncyA9ICIiOwogICAgIG15IEBidWlsZEFyZ3M7Ci0gICAgCi0gICAgJG1ha2VB
cmdzIC49ICIgLWoiIC4gbnVtYmVyT2ZDUFVzKCkgaWYgKCRtYWtlQXJncyAhfiBtLy1qXHMqXGQr
Lyk7CisKKyAgICBpZiAoJHBvcnQgPX4gbS93aW5jZS9pKSB7CisgICAgICAgIGlmICgkY29uZmln
ID1+IG0vZGVidWcvaSkgeworICAgICAgICAgICAgJG1ha2VBcmdzIC49ICItLWNvbmZpZyBEZWJ1
ZyI7CisgICAgICAgIH0gZWxzaWYgKCRjb25maWcgPX4gbS9yZWxlYXNlL2kpIHsKKyAgICAgICAg
ICAgICRtYWtlQXJncyAuPSAiLS1jb25maWcgUmVsZWFzZSI7CisgICAgICAgIH0KKyAgICB9IGVs
c2UgeworICAgICAgICAkbWFrZUFyZ3MgLj0gIi0tIC1qIiAuIG51bWJlck9mQ1BVcygpIGlmICgk
bWFrZUFyZ3MgIX4gbS8talxzKlxkKy8pOworICAgIH0KIAogICAgIGlmICgkY2xlYW4pIHsKICAg
ICAgICAgcHJpbnQgIkNsZWFuaW5nIHRoZSBidWlsZCBkaXJlY3RvcnkgJyRkaXInXG4iOwpAQCAt
MTQzOSwxNCArMTQ2NiwxNCBAQCBzdWIgYnVpbGRDTWFrZVByb2plY3QoJEApCiAgICAgICAgICRy
ZXN1bHQgPSAwOwogICAgIH0gZWxzZSB7CiAgICAgICAgIG15ICRjbWFrZWJpbiA9ICJjbWFrZSI7
Ci0gICAgICAgIG15ICRtYWtlID0gIm1ha2UiOworICAgICAgICBteSAkbWFrZSA9ICRjbWFrZWJp
biAuICIgLS1idWlsZCAuIjsKIAogICAgICAgICBwdXNoIEBidWlsZEFyZ3MsICItRFBPUlQ9JHBv
cnQiOwogCiAgICAgICAgIGZvciBteSAkaSAoMCAuLiAkI2J1aWxkUGFyYW1zKSB7CiAgICAgICAg
ICAgICBteSAkb3B0ID0gJGJ1aWxkUGFyYW1zWyRpXTsKICAgICAgICAgICAgIGlmICgkb3B0ID1+
IC9eLS1tYWtlYXJncz0oLiopL2kgKSB7Ci0gICAgICAgICAgICAgICAgJG1ha2VBcmdzID0gJDE7
CisgICAgICAgICAgICAgICAgJG1ha2VBcmdzID0gIi0tICIgLiAkMTsKICAgICAgICAgICAgIH0g
ZWxzaWYgKCRvcHQgPX4gL14tLXByZWZpeD0oLiopL2kgKSB7CiAgICAgICAgICAgICAgICAgcHVz
aCBAYnVpbGRBcmdzLCAiLURDTUFLRV9JTlNUQUxMX1BSRUZJWD0kMSI7CiAgICAgICAgICAgICB9
IGVsc2UgewpAQCAtMTQ5MCw2ICsxNTE3LDEyIEBAIHN1YiBidWlsZENNYWtlRWZsUHJvamVjdCgk
QCkKICAgICByZXR1cm4gYnVpbGRDTWFrZVByb2plY3QoIkVmbCIsICRjbGVhbiwgQGJ1aWxkQXJn
cyk7CiB9CiAKK3N1YiBidWlsZENNYWtlV2luQ0VQcm9qZWN0KCRAKQoreworICAgIG15ICgkc2Rr
LCAkY2xlYW4sIEBidWlsZEFyZ3MpID0gQF87CisgICAgcmV0dXJuIGJ1aWxkQ01ha2VQcm9qZWN0
KCJXaW5DRSAtRENNQUtFX1dJTkNFX1NESz1cIiIgLiAkc2RrIC4gIlwiIiwgJGNsZWFuLCBAYnVp
bGRBcmdzKTsKK30KKwogc3ViIGJ1aWxkUU1ha2VQcm9qZWN0KCRAKQogewogICAgIG15ICgkY2xl
YW4sIEBidWlsZFBhcmFtcykgPSBAXzsK
</data>
<flag name="review"
          id="68635"
          type_id="1"
          status="-"
          setter="ddkilzer"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>77698</attachid>
            <date>2010-12-30 14:25:39 -0800</date>
            <delta_ts>2011-01-03 12:06:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-51642b.patch</filename>
            <type>text/plain</type>
            <size>6370</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4NmEz
NTU5Li5jNTQ4NGM3IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMTItMzAgIFBhdHJpY2sgR2Fuc3RlcmVyICA8
cGFyb2dhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIFdpbkNFIHN1cHBvcnQgdG8gYnVpbGQtd2Via2l0CisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01MTY0MgorCisgICAgICAgICog
U2NyaXB0cy9idWlsZC13ZWJraXQ6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRkaXJzLnBtOgor
CiAyMDEwLTEyLTI5ICBQYXRyaWNrIEdhbnN0ZXJlciAgPHBhcm9nYUB3ZWJraXQub3JnPgogCiAg
ICAgICAgIFVucmV2aWV3ZWQgV2luQ0UgYnVpbGRmaXguCmRpZmYgLS1naXQgYS9Ub29scy9TY3Jp
cHRzL2J1aWxkLXdlYmtpdCBiL1Rvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CmluZGV4IGYyYWQy
NzIuLjIxNmMxOTAgMTAwNzU1Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CisrKyBi
L1Rvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CkBAIC0zMDAsMTEgKzMwMCwxNCBAQCBVc2FnZTog
JHByb2dyYW1OYW1lIFtvcHRpb25zXSBbb3B0aW9ucyB0byBwYXNzIHRvIGJ1aWxkIHN5c3RlbV0K
ICAgLS1oZWxwICAgICAgICAgICAgICAgICAgICAgICAgICAgIFNob3cgdGhpcyBoZWxwIG1lc3Nh
Z2UKICAgLS1jbGVhbiAgICAgICAgICAgICAgICAgICAgICAgICAgIENsZWFudXAgdGhlIGJ1aWxk
IGRpcmVjdG9yeQogICAtLWRlYnVnICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29tcGlsZSBp
biBkZWJ1ZyBtb2RlCi0gIC0td2luY2Fpcm8gICAgICAgICAgICAgICAgICAgICAgICBCdWlsZCB1
c2luZyBDYWlybyAocmF0aGVyIHRoYW4gQ29yZUdyYXBoaWNzKSBvbiBXaW5kb3dzCisKICAgLS1j
aHJvbWl1bSAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHRoZSBDaHJvbWl1bSBwb3J0IG9u
IE1hYy9XaW4vTGludXgKKyAgLS1lZmwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxk
IHRoZSBFRkwgcG9ydAogICAtLWd0ayAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGQg
dGhlIEdUSysgcG9ydAogICAtLXF0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGQg
dGhlIFF0IHBvcnQKLSAgLS1lZmwgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHRo
ZSBFRkwgcG9ydAorICAtLXdpbmNhaXJvICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGQgdXNp
bmcgQ2Fpcm8gKHJhdGhlciB0aGFuIENvcmVHcmFwaGljcykgb24gV2luZG93cworICAtLXdpbmNl
ICAgICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGQgdGhlIFdpbkNFIHBvcnQKKwogICAtLWlu
c3BlY3Rvci1mcm9udGVuZCAgICAgICAgICAgICAgQ29weSBjaGFuZ2VzIHRvIHRoZSBpbnNwZWN0
b3IgZnJvbnQtZW5kIGZpbGVzIHRvIHRoZSBidWlsZCBkaXJlY3RvcnkKIAogICAtLWluc3RhbGwt
aGVhZGVycz08cGF0aD4gICAgICAgICAgU2V0IGluc3RhbGxhdGlvbiBwYXRoIGZvciB0aGUgaGVh
ZGVycyAoUXQgb25seSkKQEAgLTUwNiw2ICs1MDksMjEgQEAgaWYgKGlzRWZsKCkpIHsKICAgICBl
eGl0IGV4aXRTdGF0dXMoJHJlc3VsdCkgaWYgZXhpdFN0YXR1cygkcmVzdWx0KTsKIH0KIAoraWYg
KGlzV2luQ0UoKSkgeworICAgIEBvcHRpb25zID0gKCk7CisgICAgQHByb2plY3RzID0gKCk7Cisg
ICAgZm9yZWFjaCAoQGZlYXR1cmVzKSB7CisgICAgICAgIG15ICRmZWF0dXJlTmFtZSA9ICRfLT57
ZGVmaW5lfTsKKyAgICAgICAgaWYgKCRmZWF0dXJlTmFtZSkgeworICAgICAgICAgICAgbXkgJGZl
YXR1cmVFbmFibGVkID0gJHskXy0+e3ZhbHVlfX0gPyAiT04iIDogIk9GRiI7CisgICAgICAgICAg
ICBwdXNoIEBvcHRpb25zLCAiLUQkZmVhdHVyZU5hbWU9JGZlYXR1cmVFbmFibGVkIjsKKyAgICAg
ICAgfQorICAgIH0KKyAgICBwdXNoIEBvcHRpb25zLCAiLS1tYWtlYXJncz0iIC4gJG1ha2VBcmdz
IGlmIGRlZmluZWQoJG1ha2VBcmdzKTsKKyAgICBteSAkcmVzdWx0ID0gYnVpbGRDTWFrZVdpbkNF
UHJvamVjdCgiU1RBTkRBUkRTREtfNTAwIChBUk1WNEkpIiwgJGNsZWFuLCBAb3B0aW9ucyk7Cisg
ICAgZXhpdCBleGl0U3RhdHVzKCRyZXN1bHQpIGlmIGV4aXRTdGF0dXMoJHJlc3VsdCk7Cit9CisK
ICMgQnVpbGQsIGFuZCBhYm9ydCBpZiB0aGUgYnVpbGQgZmFpbHMuCiBmb3IgbXkgJGRpciAoQHBy
b2plY3RzKSB7CiAgICAgY2hkaXIgJGRpciBvciBkaWU7CmRpZmYgLS1naXQgYS9Ub29scy9TY3Jp
cHRzL3dlYmtpdGRpcnMucG0gYi9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0KaW5kZXggNjhi
MTdlNS4uODdmMmYwOCAxMDA2NDQKLS0tIGEvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCisr
KyBiL1Rvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQpAQCAtNjMsNiArNjMsNyBAQCBteSAkaXNR
dDsKIG15ICRpc1N5bWJpYW47CiBteSAlcXRGZWF0dXJlRGVmYXVsdHM7CiBteSAkaXNHdGs7Citt
eSAkaXNXaW5DRTsKIG15ICRpc1d4OwogbXkgJGlzRWZsOwogbXkgQHd4QXJnczsKQEAgLTI3Miw2
ICsyNzMsNyBAQCBzdWIgYXJndW1lbnRzRm9yQ29uZmlndXJhdGlvbigpCiAgICAgcHVzaChAYXJn
cywgJy0tc3ltYmlhbicpIGlmIGlzU3ltYmlhbigpOwogICAgIHB1c2goQGFyZ3MsICctLWd0aycp
IGlmIGlzR3RrKCk7CiAgICAgcHVzaChAYXJncywgJy0tZWZsJykgaWYgaXNFZmwoKTsKKyAgICBw
dXNoKEBhcmdzLCAnLS13aW5jZScpIGlmIGlzV2luQ0UoKTsKICAgICBwdXNoKEBhcmdzLCAnLS13
eCcpIGlmIGlzV3goKTsKICAgICBwdXNoKEBhcmdzLCAnLS1jaHJvbWl1bScpIGlmIGlzQ2hyb21p
dW0oKTsKICAgICBwdXNoKEBhcmdzLCAnLS1pbnNwZWN0b3ItZnJvbnRlbmQnKSBpZiBpc0luc3Bl
Y3RvckZyb250ZW5kKCk7CkBAIC02MDIsNiArNjA0LDkgQEAgc3ViIGJ1aWx0RHlsaWJQYXRoRm9y
TmFtZQogICAgIGlmIChpc0VmbCgpKSB7CiAgICAgICAgIHJldHVybiAiJGNvbmZpZ3VyYXRpb25Q
cm9kdWN0RGlyLyRsaWJyYXJ5TmFtZS8uLi8ubGlicy9saWJld2Via2l0LnNvIjsKICAgICB9Cisg
ICAgaWYgKGlzV2luQ0UoKSkgeworICAgICAgICByZXR1cm4gIiRjb25maWd1cmF0aW9uUHJvZHVj
dERpci8kbGlicmFyeU5hbWUiOworICAgIH0KICAgICBpZiAoaXNBcHBsZU1hY1dlYktpdCgpKSB7
CiAgICAgICAgIHJldHVybiAiJGNvbmZpZ3VyYXRpb25Qcm9kdWN0RGlyLyRsaWJyYXJ5TmFtZS5m
cmFtZXdvcmsvVmVyc2lvbnMvQS8kbGlicmFyeU5hbWUiOwogICAgIH0KQEAgLTc1NSw2ICs3NjAs
MTggQEAgc3ViIGRldGVybWluZUlzR3RrKCkKICAgICAkaXNHdGsgPSBjaGVja0ZvckFyZ3VtZW50
QW5kUmVtb3ZlRnJvbUFSR1YoIi0tZ3RrIik7CiB9CiAKK3N1YiBpc1dpbkNFKCkKK3sKKyAgICBk
ZXRlcm1pbmVJc1dpbkNFKCk7CisgICAgcmV0dXJuICRpc1dpbkNFOworfQorCitzdWIgZGV0ZXJt
aW5lSXNXaW5DRSgpCit7CisgICAgcmV0dXJuIGlmIGRlZmluZWQoJGlzV2luQ0UpOworICAgICRp
c1dpbkNFID0gY2hlY2tGb3JBcmd1bWVudEFuZFJlbW92ZUZyb21BUkdWKCItLXdpbmNlIik7Cit9
CisKIHN1YiBpc1d4KCkKIHsKICAgICBkZXRlcm1pbmVJc1d4KCk7CkBAIC04NjksNyArODg2LDcg
QEAgc3ViIGlzTGludXgoKQogCiBzdWIgaXNBcHBsZVdlYktpdCgpCiB7Ci0gICAgcmV0dXJuICEo
aXNRdCgpIG9yIGlzR3RrKCkgb3IgaXNXeCgpIG9yIGlzQ2hyb21pdW0oKSBvciBpc0VmbCgpKTsK
KyAgICByZXR1cm4gIShpc1F0KCkgb3IgaXNHdGsoKSBvciBpc1d4KCkgb3IgaXNDaHJvbWl1bSgp
IG9yIGlzRWZsKCkgb3IgaXNXaW5DRSgpKTsKIH0KIAogc3ViIGlzQXBwbGVNYWNXZWJLaXQoKQpA
QCAtOTU2LDcgKzk3Myw3IEBAIHN1YiByZWxhdGl2ZVNjcmlwdHNEaXIoKQogc3ViIGxhdW5jaGVy
UGF0aCgpCiB7CiAgICAgbXkgJHJlbGF0aXZlU2NyaXB0c1BhdGggPSByZWxhdGl2ZVNjcmlwdHNE
aXIoKTsKLSAgICBpZiAoaXNHdGsoKSB8fCBpc1F0KCkgfHwgaXNXeCgpIHx8IGlzRWZsKCkpIHsK
KyAgICBpZiAoaXNHdGsoKSB8fCBpc1F0KCkgfHwgaXNXeCgpIHx8IGlzRWZsKCkgfHwgaXNXaW5D
RSgpKSB7CiAgICAgICAgIHJldHVybiAiJHJlbGF0aXZlU2NyaXB0c1BhdGgvcnVuLWxhdW5jaGVy
IjsKICAgICB9IGVsc2lmIChpc0FwcGxlV2ViS2l0KCkpIHsKICAgICAgICAgcmV0dXJuICIkcmVs
YXRpdmVTY3JpcHRzUGF0aC9ydW4tc2FmYXJpIjsKQEAgLTk3NSw2ICs5OTIsOCBAQCBzdWIgbGF1
bmNoZXJOYW1lKCkKICAgICAgICAgcmV0dXJuICJTYWZhcmkiOwogICAgIH0gZWxzaWYgKGlzRWZs
KCkpIHsKICAgICAgICAgcmV0dXJuICJFV2ViTGF1bmNoZXIiOworICAgIH0gZWxzaWYgKGlzV2lu
Q0UoKSkgeworICAgICAgICByZXR1cm4gIldpbkNFTGF1bmNoZXIiOwogICAgIH0KIH0KIApAQCAt
MTQzMiwxMCArMTQ1MSwxOSBAQCBzdWIgYnVpbGRDTWFrZVByb2plY3QoJEApCiAgICAgbXkgJGRp
ciA9IEZpbGU6OlNwZWMtPmNhbm9ucGF0aChiYXNlUHJvZHVjdERpcigpKTsKICAgICBteSAkY29u
ZmlnID0gY29uZmlndXJhdGlvbigpOwogICAgIG15ICRyZXN1bHQ7CisgICAgbXkgJGNtYWtlQnVp
bGRBcmdzID0gIiI7CiAgICAgbXkgJG1ha2VBcmdzID0gIiI7CiAgICAgbXkgQGJ1aWxkQXJnczsK
LSAgICAKLSAgICAkbWFrZUFyZ3MgLj0gIiAtaiIgLiBudW1iZXJPZkNQVXMoKSBpZiAoJG1ha2VB
cmdzICF+IG0vLWpccypcZCsvKTsKKworICAgIGlmICgkcG9ydCA9fiBtL3dpbmNlL2kpIHsKKyAg
ICAgICAgaWYgKCRjb25maWcgPX4gbS9kZWJ1Zy9pKSB7CisgICAgICAgICAgICAkY21ha2VCdWls
ZEFyZ3MgLj0gIiAtLWNvbmZpZyBEZWJ1ZyI7CisgICAgICAgIH0gZWxzaWYgKCRjb25maWcgPX4g
bS9yZWxlYXNlL2kpIHsKKyAgICAgICAgICAgICRjbWFrZUJ1aWxkQXJncyAuPSAiIC0tY29uZmln
IFJlbGVhc2UiOworICAgICAgICB9CisgICAgfSBlbHNlIHsKKyAgICAgICAgJG1ha2VBcmdzIC49
ICItaiIgLiBudW1iZXJPZkNQVXMoKSBpZiAoJG1ha2VBcmdzICF+IG0vLWpccypcZCsvKTsKKyAg
ICB9CiAKICAgICBpZiAoJGNsZWFuKSB7CiAgICAgICAgIHByaW50ICJDbGVhbmluZyB0aGUgYnVp
bGQgZGlyZWN0b3J5ICckZGlyJ1xuIjsKQEAgLTE0NDQsNyArMTQ3Miw3IEBAIHN1YiBidWlsZENN
YWtlUHJvamVjdCgkQCkKICAgICAgICAgJHJlc3VsdCA9IDA7CiAgICAgfSBlbHNlIHsKICAgICAg
ICAgbXkgJGNtYWtlYmluID0gImNtYWtlIjsKLSAgICAgICAgbXkgJG1ha2UgPSAibWFrZSI7Cisg
ICAgICAgIG15ICRtYWtlID0gJGNtYWtlYmluIC4gIiAtLWJ1aWxkIC4iOwogCiAgICAgICAgIHB1
c2ggQGJ1aWxkQXJncywgIi1EUE9SVD0kcG9ydCI7CiAKQEAgLTE0NzcsOCArMTUwNSwxMCBAQCBz
dWIgYnVpbGRDTWFrZVByb2plY3QoJEApCiAgICAgICAgICAgICBkaWUgIkZhaWxlZCB3aGlsZSBy
dW5uaW5nICRjbWFrZWJpbiB0byBnZW5lcmF0ZSBtYWtlZmlsZXMhXG4iOwogICAgICAgICB9CiAK
LSAgICAgICAgcHJpbnQgIkNhbGxpbmcgJyRtYWtlICRtYWtlQXJncycgaW4gIiAuICRkaXIgLiAi
XG5cbiI7Ci0gICAgICAgICRyZXN1bHQgPSBzeXN0ZW0gIiRtYWtlICRtYWtlQXJncyI7CisgICAg
ICAgICRjbWFrZUJ1aWxkQXJncyAuPSAiIC0tICIgLiAkbWFrZUFyZ3M7CisKKyAgICAgICAgcHJp
bnQgIkNhbGxpbmcgJyRtYWtlICRjbWFrZUJ1aWxkQXJncycgaW4gIiAuICRkaXIgLiAiXG5cbiI7
CisgICAgICAgICRyZXN1bHQgPSBzeXN0ZW0gIiRtYWtlICRjbWFrZUJ1aWxkQXJncyI7CiAgICAg
ICAgIGlmICgkcmVzdWx0IG5lIDApIHsKICAgICAgICAgICAgIGRpZSAiRmFpbGVkIHRvIGJ1aWxk
ICRwb3J0IHBvcnRcbiI7CiAgICAgICAgIH0KQEAgLTE0OTUsNiArMTUyNSwxMiBAQCBzdWIgYnVp
bGRDTWFrZUVmbFByb2plY3QoJEApCiAgICAgcmV0dXJuIGJ1aWxkQ01ha2VQcm9qZWN0KCJFZmwi
LCAkY2xlYW4sIEBidWlsZEFyZ3MpOwogfQogCitzdWIgYnVpbGRDTWFrZVdpbkNFUHJvamVjdCgk
QCkKK3sKKyAgICBteSAoJHNkaywgJGNsZWFuLCBAYnVpbGRBcmdzKSA9IEBfOworICAgIHJldHVy
biBidWlsZENNYWtlUHJvamVjdCgiV2luQ0UgLURDTUFLRV9XSU5DRV9TREs9XCIiIC4gJHNkayAu
ICJcIiIsICRjbGVhbiwgQGJ1aWxkQXJncyk7Cit9CisKIHN1YiBidWlsZFFNYWtlUHJvamVjdCgk
QCkKIHsKICAgICBteSAoJGNsZWFuLCBAYnVpbGRQYXJhbXMpID0gQF87Cg==
</data>
<flag name="review"
          id="68879"
          type_id="1"
          status="+"
          setter="ddkilzer"
    />
    <flag name="commit-queue"
          id="68880"
          type_id="3"
          status="-"
          setter="ddkilzer"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>77834</attachid>
            <date>2011-01-03 12:06:25 -0800</date>
            <delta_ts>2011-01-03 13:04:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-51642.patch</filename>
            <type>text/plain</type>
            <size>6408</size>
            <attacher name="Patrick R. Gansterer">paroga</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4NmEz
NTU5Li5jNTQ4NGM3IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMTItMzAgIFBhdHJpY2sgR2Fuc3RlcmVyICA8
cGFyb2dhQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRGF2aWQgS2lsemVyLgor
CisgICAgICAgIEFkZCBXaW5DRSBzdXBwb3J0IHRvIGJ1aWxkLXdlYmtpdAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTE2NDIKKworICAgICAgICAqIFNj
cmlwdHMvYnVpbGQtd2Via2l0OgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0ZGlycy5wbToKKwog
MjAxMC0xMi0yOSAgUGF0cmljayBHYW5zdGVyZXIgIDxwYXJvZ2FAd2Via2l0Lm9yZz4KIAogICAg
ICAgICBVbnJldmlld2VkIFdpbkNFIGJ1aWxkZml4LgpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy9idWlsZC13ZWJraXQgYi9Ub29scy9TY3JpcHRzL2J1aWxkLXdlYmtpdAppbmRleCBmMmFkMjcy
Li4yMTZjMTkwIDEwMDc1NQotLS0gYS9Ub29scy9TY3JpcHRzL2J1aWxkLXdlYmtpdAorKysgYi9U
b29scy9TY3JpcHRzL2J1aWxkLXdlYmtpdApAQCAtMzAwLDExICszMDAsMTQgQEAgVXNhZ2U6ICRw
cm9ncmFtTmFtZSBbb3B0aW9uc10gW29wdGlvbnMgdG8gcGFzcyB0byBidWlsZCBzeXN0ZW1dCiAg
IC0taGVscCAgICAgICAgICAgICAgICAgICAgICAgICAgICBTaG93IHRoaXMgaGVscCBtZXNzYWdl
CiAgIC0tY2xlYW4gICAgICAgICAgICAgICAgICAgICAgICAgICBDbGVhbnVwIHRoZSBidWlsZCBk
aXJlY3RvcnkKICAgLS1kZWJ1ZyAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbXBpbGUgaW4g
ZGVidWcgbW9kZQotICAtLXdpbmNhaXJvICAgICAgICAgICAgICAgICAgICAgICAgQnVpbGQgdXNp
bmcgQ2Fpcm8gKHJhdGhlciB0aGFuIENvcmVHcmFwaGljcykgb24gV2luZG93cworCiAgIC0tY2hy
b21pdW0gICAgICAgICAgICAgICAgICAgICAgICBCdWlsZCB0aGUgQ2hyb21pdW0gcG9ydCBvbiBN
YWMvV2luL0xpbnV4CisgIC0tZWZsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdWlsZCB0
aGUgRUZMIHBvcnQKICAgLS1ndGsgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHRo
ZSBHVEsrIHBvcnQKICAgLS1xdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHRo
ZSBRdCBwb3J0Ci0gIC0tZWZsICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdWlsZCB0aGUg
RUZMIHBvcnQKKyAgLS13aW5jYWlybyAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHVzaW5n
IENhaXJvIChyYXRoZXIgdGhhbiBDb3JlR3JhcGhpY3MpIG9uIFdpbmRvd3MKKyAgLS13aW5jZSAg
ICAgICAgICAgICAgICAgICAgICAgICAgIEJ1aWxkIHRoZSBXaW5DRSBwb3J0CisKICAgLS1pbnNw
ZWN0b3ItZnJvbnRlbmQgICAgICAgICAgICAgIENvcHkgY2hhbmdlcyB0byB0aGUgaW5zcGVjdG9y
IGZyb250LWVuZCBmaWxlcyB0byB0aGUgYnVpbGQgZGlyZWN0b3J5CiAKICAgLS1pbnN0YWxsLWhl
YWRlcnM9PHBhdGg+ICAgICAgICAgIFNldCBpbnN0YWxsYXRpb24gcGF0aCBmb3IgdGhlIGhlYWRl
cnMgKFF0IG9ubHkpCkBAIC01MDYsNiArNTA5LDIxIEBAIGlmIChpc0VmbCgpKSB7CiAgICAgZXhp
dCBleGl0U3RhdHVzKCRyZXN1bHQpIGlmIGV4aXRTdGF0dXMoJHJlc3VsdCk7CiB9CiAKK2lmIChp
c1dpbkNFKCkpIHsKKyAgICBAb3B0aW9ucyA9ICgpOworICAgIEBwcm9qZWN0cyA9ICgpOworICAg
IGZvcmVhY2ggKEBmZWF0dXJlcykgeworICAgICAgICBteSAkZmVhdHVyZU5hbWUgPSAkXy0+e2Rl
ZmluZX07CisgICAgICAgIGlmICgkZmVhdHVyZU5hbWUpIHsKKyAgICAgICAgICAgIG15ICRmZWF0
dXJlRW5hYmxlZCA9ICR7JF8tPnt2YWx1ZX19ID8gIk9OIiA6ICJPRkYiOworICAgICAgICAgICAg
cHVzaCBAb3B0aW9ucywgIi1EJGZlYXR1cmVOYW1lPSRmZWF0dXJlRW5hYmxlZCI7CisgICAgICAg
IH0KKyAgICB9CisgICAgcHVzaCBAb3B0aW9ucywgIi0tbWFrZWFyZ3M9IiAuICRtYWtlQXJncyBp
ZiBkZWZpbmVkKCRtYWtlQXJncyk7CisgICAgbXkgJHJlc3VsdCA9IGJ1aWxkQ01ha2VXaW5DRVBy
b2plY3QoIlNUQU5EQVJEU0RLXzUwMCAoQVJNVjRJKSIsICRjbGVhbiwgQG9wdGlvbnMpOworICAg
IGV4aXQgZXhpdFN0YXR1cygkcmVzdWx0KSBpZiBleGl0U3RhdHVzKCRyZXN1bHQpOworfQorCiAj
IEJ1aWxkLCBhbmQgYWJvcnQgaWYgdGhlIGJ1aWxkIGZhaWxzLgogZm9yIG15ICRkaXIgKEBwcm9q
ZWN0cykgewogICAgIGNoZGlyICRkaXIgb3IgZGllOwpkaWZmIC0tZ2l0IGEvVG9vbHMvU2NyaXB0
cy93ZWJraXRkaXJzLnBtIGIvVG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCmluZGV4IDY4YjE3
ZTUuLjg3ZjJmMDggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQorKysg
Yi9Ub29scy9TY3JpcHRzL3dlYmtpdGRpcnMucG0KQEAgLTYzLDYgKzYzLDcgQEAgbXkgJGlzUXQ7
CiBteSAkaXNTeW1iaWFuOwogbXkgJXF0RmVhdHVyZURlZmF1bHRzOwogbXkgJGlzR3RrOworbXkg
JGlzV2luQ0U7CiBteSAkaXNXeDsKIG15ICRpc0VmbDsKIG15IEB3eEFyZ3M7CkBAIC0yNzIsNiAr
MjczLDcgQEAgc3ViIGFyZ3VtZW50c0ZvckNvbmZpZ3VyYXRpb24oKQogICAgIHB1c2goQGFyZ3Ms
ICctLXN5bWJpYW4nKSBpZiBpc1N5bWJpYW4oKTsKICAgICBwdXNoKEBhcmdzLCAnLS1ndGsnKSBp
ZiBpc0d0aygpOwogICAgIHB1c2goQGFyZ3MsICctLWVmbCcpIGlmIGlzRWZsKCk7CisgICAgcHVz
aChAYXJncywgJy0td2luY2UnKSBpZiBpc1dpbkNFKCk7CiAgICAgcHVzaChAYXJncywgJy0td3gn
KSBpZiBpc1d4KCk7CiAgICAgcHVzaChAYXJncywgJy0tY2hyb21pdW0nKSBpZiBpc0Nocm9taXVt
KCk7CiAgICAgcHVzaChAYXJncywgJy0taW5zcGVjdG9yLWZyb250ZW5kJykgaWYgaXNJbnNwZWN0
b3JGcm9udGVuZCgpOwpAQCAtNjAyLDYgKzYwNCw5IEBAIHN1YiBidWlsdER5bGliUGF0aEZvck5h
bWUKICAgICBpZiAoaXNFZmwoKSkgewogICAgICAgICByZXR1cm4gIiRjb25maWd1cmF0aW9uUHJv
ZHVjdERpci8kbGlicmFyeU5hbWUvLi4vLmxpYnMvbGliZXdlYmtpdC5zbyI7CiAgICAgfQorICAg
IGlmIChpc1dpbkNFKCkpIHsKKyAgICAgICAgcmV0dXJuICIkY29uZmlndXJhdGlvblByb2R1Y3RE
aXIvJGxpYnJhcnlOYW1lIjsKKyAgICB9CiAgICAgaWYgKGlzQXBwbGVNYWNXZWJLaXQoKSkgewog
ICAgICAgICByZXR1cm4gIiRjb25maWd1cmF0aW9uUHJvZHVjdERpci8kbGlicmFyeU5hbWUuZnJh
bWV3b3JrL1ZlcnNpb25zL0EvJGxpYnJhcnlOYW1lIjsKICAgICB9CkBAIC03NTUsNiArNzYwLDE4
IEBAIHN1YiBkZXRlcm1pbmVJc0d0aygpCiAgICAgJGlzR3RrID0gY2hlY2tGb3JBcmd1bWVudEFu
ZFJlbW92ZUZyb21BUkdWKCItLWd0ayIpOwogfQogCitzdWIgaXNXaW5DRSgpCit7CisgICAgZGV0
ZXJtaW5lSXNXaW5DRSgpOworICAgIHJldHVybiAkaXNXaW5DRTsKK30KKworc3ViIGRldGVybWlu
ZUlzV2luQ0UoKQoreworICAgIHJldHVybiBpZiBkZWZpbmVkKCRpc1dpbkNFKTsKKyAgICAkaXNX
aW5DRSA9IGNoZWNrRm9yQXJndW1lbnRBbmRSZW1vdmVGcm9tQVJHVigiLS13aW5jZSIpOworfQor
CiBzdWIgaXNXeCgpCiB7CiAgICAgZGV0ZXJtaW5lSXNXeCgpOwpAQCAtODY5LDcgKzg4Niw3IEBA
IHN1YiBpc0xpbnV4KCkKIAogc3ViIGlzQXBwbGVXZWJLaXQoKQogewotICAgIHJldHVybiAhKGlz
UXQoKSBvciBpc0d0aygpIG9yIGlzV3goKSBvciBpc0Nocm9taXVtKCkgb3IgaXNFZmwoKSk7Cisg
ICAgcmV0dXJuICEoaXNRdCgpIG9yIGlzR3RrKCkgb3IgaXNXeCgpIG9yIGlzQ2hyb21pdW0oKSBv
ciBpc0VmbCgpIG9yIGlzV2luQ0UoKSk7CiB9CiAKIHN1YiBpc0FwcGxlTWFjV2ViS2l0KCkKQEAg
LTk1Niw3ICs5NzMsNyBAQCBzdWIgcmVsYXRpdmVTY3JpcHRzRGlyKCkKIHN1YiBsYXVuY2hlclBh
dGgoKQogewogICAgIG15ICRyZWxhdGl2ZVNjcmlwdHNQYXRoID0gcmVsYXRpdmVTY3JpcHRzRGly
KCk7Ci0gICAgaWYgKGlzR3RrKCkgfHwgaXNRdCgpIHx8IGlzV3goKSB8fCBpc0VmbCgpKSB7Cisg
ICAgaWYgKGlzR3RrKCkgfHwgaXNRdCgpIHx8IGlzV3goKSB8fCBpc0VmbCgpIHx8IGlzV2luQ0Uo
KSkgewogICAgICAgICByZXR1cm4gIiRyZWxhdGl2ZVNjcmlwdHNQYXRoL3J1bi1sYXVuY2hlciI7
CiAgICAgfSBlbHNpZiAoaXNBcHBsZVdlYktpdCgpKSB7CiAgICAgICAgIHJldHVybiAiJHJlbGF0
aXZlU2NyaXB0c1BhdGgvcnVuLXNhZmFyaSI7CkBAIC05NzUsNiArOTkyLDggQEAgc3ViIGxhdW5j
aGVyTmFtZSgpCiAgICAgICAgIHJldHVybiAiU2FmYXJpIjsKICAgICB9IGVsc2lmIChpc0VmbCgp
KSB7CiAgICAgICAgIHJldHVybiAiRVdlYkxhdW5jaGVyIjsKKyAgICB9IGVsc2lmIChpc1dpbkNF
KCkpIHsKKyAgICAgICAgcmV0dXJuICJXaW5DRUxhdW5jaGVyIjsKICAgICB9CiB9CiAKQEAgLTE0
MzIsMTAgKzE0NTEsMTkgQEAgc3ViIGJ1aWxkQ01ha2VQcm9qZWN0KCRAKQogICAgIG15ICRkaXIg
PSBGaWxlOjpTcGVjLT5jYW5vbnBhdGgoYmFzZVByb2R1Y3REaXIoKSk7CiAgICAgbXkgJGNvbmZp
ZyA9IGNvbmZpZ3VyYXRpb24oKTsKICAgICBteSAkcmVzdWx0OworICAgIG15ICRjbWFrZUJ1aWxk
QXJncyA9ICIiOwogICAgIG15ICRtYWtlQXJncyA9ICIiOwogICAgIG15IEBidWlsZEFyZ3M7Ci0g
ICAgCi0gICAgJG1ha2VBcmdzIC49ICIgLWoiIC4gbnVtYmVyT2ZDUFVzKCkgaWYgKCRtYWtlQXJn
cyAhfiBtLy1qXHMqXGQrLyk7CisKKyAgICBpZiAoJHBvcnQgPX4gbS93aW5jZS9pKSB7CisgICAg
ICAgIGlmICgkY29uZmlnID1+IG0vZGVidWcvaSkgeworICAgICAgICAgICAgJGNtYWtlQnVpbGRB
cmdzIC49ICIgLS1jb25maWcgRGVidWciOworICAgICAgICB9IGVsc2lmICgkY29uZmlnID1+IG0v
cmVsZWFzZS9pKSB7CisgICAgICAgICAgICAkY21ha2VCdWlsZEFyZ3MgLj0gIiAtLWNvbmZpZyBS
ZWxlYXNlIjsKKyAgICAgICAgfQorICAgIH0gZWxzZSB7CisgICAgICAgICRtYWtlQXJncyAuPSAi
IC1qIiAuIG51bWJlck9mQ1BVcygpIGlmICgkbWFrZUFyZ3MgIX4gbS8talxzKlxkKy8pOworICAg
IH0KIAogICAgIGlmICgkY2xlYW4pIHsKICAgICAgICAgcHJpbnQgIkNsZWFuaW5nIHRoZSBidWls
ZCBkaXJlY3RvcnkgJyRkaXInXG4iOwpAQCAtMTQ0NCw3ICsxNDcyLDcgQEAgc3ViIGJ1aWxkQ01h
a2VQcm9qZWN0KCRAKQogICAgICAgICAkcmVzdWx0ID0gMDsKICAgICB9IGVsc2UgewogICAgICAg
ICBteSAkY21ha2ViaW4gPSAiY21ha2UiOwotICAgICAgICBteSAkbWFrZSA9ICJtYWtlIjsKKyAg
ICAgICAgbXkgJGNtYWtlQnVpbGRDb21tYW5kID0gJGNtYWtlYmluIC4gIiAtLWJ1aWxkIC4iOwog
CiAgICAgICAgIHB1c2ggQGJ1aWxkQXJncywgIi1EUE9SVD0kcG9ydCI7CiAKQEAgLTE0NzcsOCAr
MTUwNSwxMCBAQCBzdWIgYnVpbGRDTWFrZVByb2plY3QoJEApCiAgICAgICAgICAgICBkaWUgIkZh
aWxlZCB3aGlsZSBydW5uaW5nICRjbWFrZWJpbiB0byBnZW5lcmF0ZSBtYWtlZmlsZXMhXG4iOwog
ICAgICAgICB9CiAKLSAgICAgICAgcHJpbnQgIkNhbGxpbmcgJyRtYWtlICRtYWtlQXJncycgaW4g
IiAuICRkaXIgLiAiXG5cbiI7Ci0gICAgICAgICRyZXN1bHQgPSBzeXN0ZW0gIiRtYWtlICRtYWtl
QXJncyI7CisgICAgICAgICRjbWFrZUJ1aWxkQXJncyAuPSAiIC0tICIgLiAkbWFrZUFyZ3M7CisK
KyAgICAgICAgcHJpbnQgIkNhbGxpbmcgJyRjbWFrZUJ1aWxkQ29tbWFuZCAkY21ha2VCdWlsZEFy
Z3MnIGluICIgLiAkZGlyIC4gIlxuXG4iOworICAgICAgICAkcmVzdWx0ID0gc3lzdGVtICIkY21h
a2VCdWlsZENvbW1hbmQgJGNtYWtlQnVpbGRBcmdzIjsKICAgICAgICAgaWYgKCRyZXN1bHQgbmUg
MCkgewogICAgICAgICAgICAgZGllICJGYWlsZWQgdG8gYnVpbGQgJHBvcnQgcG9ydFxuIjsKICAg
ICAgICAgfQpAQCAtMTQ5NSw2ICsxNTI1LDEyIEBAIHN1YiBidWlsZENNYWtlRWZsUHJvamVjdCgk
QCkKICAgICByZXR1cm4gYnVpbGRDTWFrZVByb2plY3QoIkVmbCIsICRjbGVhbiwgQGJ1aWxkQXJn
cyk7CiB9CiAKK3N1YiBidWlsZENNYWtlV2luQ0VQcm9qZWN0KCRAKQoreworICAgIG15ICgkc2Rr
LCAkY2xlYW4sIEBidWlsZEFyZ3MpID0gQF87CisgICAgcmV0dXJuIGJ1aWxkQ01ha2VQcm9qZWN0
KCJXaW5DRSAtRENNQUtFX1dJTkNFX1NESz1cIiIgLiAkc2RrIC4gIlwiIiwgJGNsZWFuLCBAYnVp
bGRBcmdzKTsKK30KKwogc3ViIGJ1aWxkUU1ha2VQcm9qZWN0KCRAKQogewogICAgIG15ICgkY2xl
YW4sIEBidWlsZFBhcmFtcykgPSBAXzsK
</data>

          </attachment>
      

    </bug>

</bugzilla>