<?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>29656</bug_id>
          
          <creation_ts>2009-09-22 15:35:38 -0700</creation_ts>
          <short_desc>Make WebKitTools/Scripits/run-sunspider script work on Windows platform</short_desc>
          <delta_ts>2009-09-30 10:15:44 -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>Windows XP</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>
          <dependson>29802</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>eric</cc>
    
    <cc>mjs</cc>
    
    <cc>vestbo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>149232</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2009-09-22 15:35:38 -0700</bug_when>
    <thetext>If you build QtWebKit on Windows platform, you have to use 
cmd.exe as shell. It doesn&apos;t interpret the first line of 
scripts, eg #!/usr/bin/perl, but you have to run perl scripts
directly with &quot;perl ./foo.pl&quot; command instead of &quot;./foo.pl&quot;

It is the correct thing if you invoke external script from
a perl script with exec or system command.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149235</commentid>
    <comment_count>1</comment_count>
      <attachid>39954</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2009-09-22 15:40:02 -0700</bug_when>
    <thetext>Created attachment 39954
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149255</commentid>
    <comment_count>2</comment_count>
      <attachid>39954</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-09-22 16:22:56 -0700</bug_when>
    <thetext>Comment on attachment 39954
proposed patch

It seems wrong that only this script would need special casing.  Either we already handle MSWIN Perl in all the other perl scripts, or we dont&apos; support it at all and we shouldn&apos;t here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149362</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-09-23 05:06:57 -0700</bug_when>
    <thetext>run-webkit-tests invokes build-dumprendertree in the same manner that run-sunspider currently invokes build-jsc.  We used to have a Qt Windows buildbot that ran regression tests, which suggests that what run-webkit-tests is doing does work.  Of course, we don&apos;t have that build bot at the moment so I can&apos;t say that conclusively.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149383</commentid>
    <comment_count>4</comment_count>
      <attachid>39954</attachid>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2009-09-23 06:53:23 -0700</bug_when>
    <thetext>Comment on attachment 39954
proposed patch

run-webkit-tests uses open3 instead of system, can you try that and see if it helps?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149385</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2009-09-23 06:56:37 -0700</bug_when>
    <thetext>(In reply to comment #4)
I tried it with open3, but it didn&apos;t help.

The problem is same, because system, exec and open3 don&apos;t interpret the first line of scripts, and don&apos;t know which script interpreter should be called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>149389</commentid>
    <comment_count>6</comment_count>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2009-09-23 07:06:16 -0700</bug_when>
    <thetext>It seems run-javascriptcore-tests uses perl directly, maybe that&apos;s why the old regression tests used to work bdash?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>150929</commentid>
    <comment_count>7</comment_count>
      <attachid>40304</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2009-09-29 08:29:30 -0700</bug_when>
    <thetext>Created attachment 40304
proposed patch

I refactored my patch, and modified sunspider-compare-results script too.
I added a bug to depends list because of modifying isWindows() function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>150939</commentid>
    <comment_count>8</comment_count>
      <attachid>40304</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-29 09:24:14 -0700</bug_when>
    <thetext>Comment on attachment 40304
proposed patch

Since both of these scripts are Perl scripts, they had to be invoked with a Perl interpreter originally.  We should use the same Perl interpreter when running subsequent scripts.

I would add a method like this to webkitdirs.pm (see &quot;man perlvar&quot; for details):

use Config;

[...]

sub currentPerlPath()
{
    my $thisPerl = $^X;
    if ($^O ne &apos;VMS&apos;) {
        $thisPerl .= $Config{_exe} unless $thisPerl =~ m/$Config{_exe}$/i;
    }
    return $thisPerl;
}

Then the following changes can be made:

&gt; diff --git a/WebKitTools/Scripts/run-sunspider b/WebKitTools/Scripts/run-sunspider
&gt; +my @perl;
&gt; +push @perl, &quot;perl&quot; if isWindows();

These are no longer needed.

&gt; -        my $buildResult = system &quot;WebKitTools/Scripts/build-jsc&quot;, @ARGV;
&gt; +        my $buildResult = system @perl, &quot;WebKitTools/Scripts/build-jsc&quot;, @ARGV;

Replace @perl with currentPerlPath() here.

&gt; -exec &quot;./sunspider&quot;, @args;
&gt; +exec @perl, &quot;./sunspider&quot;, @args;

Ditto.

&gt; diff --git a/WebKitTools/Scripts/sunspider-compare-results b/WebKitTools/Scripts/sunspider-compare-results
&gt; +my @perl;
&gt; +push @perl, &quot;perl&quot; if isWindows();

These are no longer needed.

&gt; -        my $buildResult = system &quot;WebKitTools/Scripts/build-jsc&quot;, &quot;--&quot; . $configuration;
&gt; +        my $buildResult = system @perl, &quot;WebKitTools/Scripts/build-jsc&quot;, &quot;--&quot; . $configuration;

Replace @perl with currentPerlPath().

&gt; -exec &quot;./sunspider-compare-results&quot;, @args, @ARGV;
&gt; +exec @perl, &quot;./sunspider-compare-results&quot;, @args, @ARGV;

Ditto.

r- to make the above changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151230</commentid>
    <comment_count>9</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2009-09-30 05:49:15 -0700</bug_when>
    <thetext>(In reply to comment #8)
You are right, that we should use same Perl interpreter when invoke another Perl scripts. It is nicer solution than using just &quot;perl&quot;.

I don&apos;t know perlvar before, I read it, and find it is very helpful, thx. ;)

&gt; sub currentPerlPath()
&gt; {
&gt;     my $thisPerl = $^X;
&gt;     if ($^O ne &apos;VMS&apos;) {
&gt;         $thisPerl .= $Config{_exe} unless $thisPerl =~ m/$Config{_exe}$/i;
&gt;     }
&gt;     return $thisPerl;
&gt; }

I don&apos;t see why we should use this method to determine the actual Perl interpreter. Why don&apos;t use simple $^X? I think all windows platform don&apos;t need .exe suffixes. And my ActiveState Perl 5.10.0 said that its interpreter is c:\perl\bin\perl.exe. It works with ...perl and ...perl.exe too.

Do you know a perl used by WebKit developers which needs this very complex method? I think we can use simple &quot;return $^X&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151231</commentid>
    <comment_count>10</comment_count>
      <attachid>40365</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2009-09-30 05:50:42 -0700</bug_when>
    <thetext>Created attachment 40365
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151251</commentid>
    <comment_count>11</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-30 08:22:31 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; &gt; sub currentPerlPath()
&gt; &gt; {
&gt; &gt;     my $thisPerl = $^X;
&gt; &gt;     if ($^O ne &apos;VMS&apos;) {
&gt; &gt;         $thisPerl .= $Config{_exe} unless $thisPerl =~ m/$Config{_exe}$/i;
&gt; &gt;     }
&gt; &gt;     return $thisPerl;
&gt; &gt; }
&gt; 
&gt; I don&apos;t see why we should use this method to determine the actual Perl
&gt; interpreter. Why don&apos;t use simple $^X? I think all windows platform don&apos;t need
&gt; .exe suffixes. And my ActiveState Perl 5.10.0 said that its interpreter is
&gt; c:\perl\bin\perl.exe. It works with ...perl and ...perl.exe too.
&gt; 
&gt; Do you know a perl used by WebKit developers which needs this very complex
&gt; method? I think we can use simple &quot;return $^X&quot;.

The problem is that the manpage doesn&apos;t say which platforms need the workaround (and I have no more knowledge that the manpage on this one).  You say you don&apos;t need it with ActiveState Perl, but have you tested all combinations of ActiveState Perl, Cygwin&apos;s Perl, &quot;native&quot; (DOS/Windows-only) Perl and invoking the script from both a DOS shell and a Cygwin shell?

I think it&apos;s best to follow the manpage on this one.  It certainly won&apos;t hurt to use the code, and it&apos;s guaranteed to work.  (It would probably make sense to add a comment to the subroutine that mentions the perlvar manpage, though.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151253</commentid>
    <comment_count>12</comment_count>
      <attachid>40365</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-30 08:24:58 -0700</bug_when>
    <thetext>Comment on attachment 40365
updated patch

&gt; diff --git a/WebKitTools/Scripts/webkitdirs.pm b/WebKitTools/Scripts/webkitdirs.pm
&gt;  # used for scripts which are stored in a non-standard location
&gt; +sub currentPerlPath()
&gt; +{
&gt; +    return $^X;
&gt; +}

I really think you should use the method from Comment #8 due to the reasons I outlined in Comment #11:  it&apos;s guaranteed to work, and we don&apos;t know exactly which platforms it&apos;s needed on.

r-</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151256</commentid>
    <comment_count>13</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-30 08:26:20 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 40365 [details])
&gt; &gt; diff --git a/WebKitTools/Scripts/webkitdirs.pm b/WebKitTools/Scripts/webkitdirs.pm
&gt; &gt;  # used for scripts which are stored in a non-standard location
&gt; &gt; +sub currentPerlPath()
&gt; &gt; +{
&gt; &gt; +    return $^X;
&gt; &gt; +}
&gt; 
&gt; I really think you should use the method from Comment #8 due to the reasons I
&gt; outlined in Comment #11:  it&apos;s guaranteed to work, and we don&apos;t know exactly
&gt; which platforms it&apos;s needed on.

If you change the method back, I will r+ the patch.  Everything else looks good!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151265</commentid>
    <comment_count>14</comment_count>
      <attachid>40375</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2009-09-30 08:39:43 -0700</bug_when>
    <thetext>Created attachment 40375
updated patch

OK, I changed back the method.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151282</commentid>
    <comment_count>15</comment_count>
      <attachid>40375</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-30 10:12:03 -0700</bug_when>
    <thetext>Comment on attachment 40375
updated patch

r=me.  I&apos;ll land this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151287</commentid>
    <comment_count>16</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-30 10:15:44 -0700</bug_when>
    <thetext>Committed r48931: &lt;http://trac.webkit.org/changeset/48931&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39954</attachid>
            <date>2009-09-22 15:40:02 -0700</date>
            <delta_ts>2009-09-29 08:29:30 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>win.patch</filename>
            <type>text/plain</type>
            <size>1684</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBkOTcwNTgzLi45NmVjMThiIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTIgQEAKKzIwMDktMDkt
MjIgIENzYWJhIE9zenRyb2dvbmFjICA8b3N6aUBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBNYWtlIHJ1bi1zdW5z
cGlkZXIgc2NyaXB0IHdvcmsgb24gV2luZG93cyBwbGF0Zm9ybS4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NjU2CisKKyAgICAgICAgKiBTY3JpcHRz
L3J1bi1zdW5zcGlkZXI6IFVzaW5nIHBsYXRmb3JtIGRlcGVuZGVudCBzeXN0ZW0gY2FsbHMuCisK
IDIwMDktMDktMjIgIEVyaWMgU2VpZGVsICA8ZXJpY0B3ZWJraXQub3JnPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9y
dW4tc3Vuc3BpZGVyIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9ydW4tc3Vuc3BpZGVyCmluZGV4IGY2
YmM3NzkuLjY3ODI3MGQgMTAwNzU1Ci0tLSBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXN1bnNw
aWRlcgorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi1zdW5zcGlkZXIKQEAgLTgxLDEzICs4
MSwyMCBAQCBpZiAoJHNob3dIZWxwKSB7CiAgICBleGl0IDE7CiB9CiAKK215ICRpc01TV2luZG93
c1BlcmwgPSAoJF5PIGVxICJNU1dpbjMyIik7CisKIHN1YiBidWlsZEpTQwogewogICAgIGlmICgh
ZGVmaW5lZCgkcm9vdCkpewogICAgICAgICBwdXNoKEBBUkdWLCAgIi0tIiAuICRjb25maWd1cmF0
aW9uKTsKICAgICAgICAgCiAgICAgICAgIGNoZGlyV2ViS2l0KCk7Ci0gICAgICAgIG15ICRidWls
ZFJlc3VsdCA9IHN5c3RlbSAiV2ViS2l0VG9vbHMvU2NyaXB0cy9idWlsZC1qc2MiLCBAQVJHVjsK
KyAgICAgICAgbXkgJGJ1aWxkUmVzdWx0OworICAgICAgICBpZiAoJGlzTVNXaW5kb3dzUGVybCkg
eworICAgICAgICAgICAgJGJ1aWxkUmVzdWx0ID0gc3lzdGVtICJwZXJsIiwgIldlYktpdFRvb2xz
L1NjcmlwdHMvYnVpbGQtanNjIiwgQEFSR1Y7CisgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAg
ICAkYnVpbGRSZXN1bHQgPSBzeXN0ZW0gIldlYktpdFRvb2xzL1NjcmlwdHMvYnVpbGQtanNjIiwg
QEFSR1Y7CisgICAgICAgIH0KICAgICAgICAgaWYgKCRidWlsZFJlc3VsdCkgewogICAgICAgICAg
ICAgcHJpbnQgU1RERVJSICJDb21waWxpbmcganNjIGZhaWxlZCFcbiI7CiAgICAgICAgICAgICBl
eGl0IGV4aXRTdGF0dXMoJGJ1aWxkUmVzdWx0KTsKQEAgLTEzMyw0ICsxNDAsOCBAQCBwdXNoIEBh
cmdzLCAiLS12OCIgaWYgJHY4OwogcHVzaCBAYXJncywgIi0tcGFyc2Utb25seSIgaWYgJHBhcnNl
b25seTsKIHB1c2ggQGFyZ3MsICItLXRlc3RzIiwgJHRlc3RzUGF0dGVybiBpZiAkdGVzdHNQYXR0
ZXJuOwogCi1leGVjICIuL3N1bnNwaWRlciIsIEBhcmdzOworaWYgKCRpc01TV2luZG93c1Blcmwp
IHsKKyAgICBleGVjICJwZXJsIiwgIi4vc3Vuc3BpZGVyIiwgQGFyZ3M7Cit9IGVsc2UgeworICAg
IGV4ZWMgIi4vc3Vuc3BpZGVyIiwgQGFyZ3M7Cit9Cg==
</data>
<flag name="review"
          id="21107"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40304</attachid>
            <date>2009-09-29 08:29:30 -0700</date>
            <delta_ts>2009-09-30 05:50:42 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>perl.patch</filename>
            <type>text/plain</type>
            <size>2657</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA1NGNjYzVkLi4xZGE1YTgzIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDktMDkt
MjkgIENzYWJhIE9zenRyb2dvbmFjICA8b3N6aUBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgW1F0XSBNYWtlIHN1bnNwaWRl
ciBzY3JpcHRzIHdvcmsgb24gV2luZG93cyBwbGF0Zm9ybS4KKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5NjU2CisKKyAgICAgICAgKiBTY3JpcHRzL3J1
bi1zdW5zcGlkZXI6CisgICAgICAgICogU2NyaXB0cy9zdW5zcGlkZXItY29tcGFyZS1yZXN1bHRz
OgorICAgICAgICBVc2luZyBwZXJsIHByZWZpeCBmb3IgaW52b2tpbmcgcGVybCBzY3JpcHQgb24g
V2luZG93cy4KKwogMjAwOS0wOS0yOSAgSmFrdWIgV2llY3pvcmVrICA8ZmF3MjE3QGdtYWlsLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTaW1vbiBIYXVzbWFubi4KZGlmZiAtLWdpdCBhL1dl
YktpdFRvb2xzL1NjcmlwdHMvcnVuLXN1bnNwaWRlciBiL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVu
LXN1bnNwaWRlcgppbmRleCBmNmJjNzc5Li4xMDQyOTVhIDEwMDc1NQotLS0gYS9XZWJLaXRUb29s
cy9TY3JpcHRzL3J1bi1zdW5zcGlkZXIKKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9ydW4tc3Vu
c3BpZGVyCkBAIC00Nyw2ICs0Nyw4IEBAIG15ICRwYXJzZW9ubHkgPSAwOwogbXkgJHNldEJhc2Vs
aW5lID0gMDsKIG15ICRzaG93SGVscCA9IDA7CiBteSAkdGVzdHNQYXR0ZXJuOworbXkgQHBlcmw7
CitwdXNoIEBwZXJsLCAicGVybCIgaWYgaXNXaW5kb3dzKCk7CiAKIG15ICRwcm9ncmFtTmFtZSA9
IGJhc2VuYW1lKCQwKTsKIG15ICR1c2FnZSA9IDw8RU9GOwpAQCAtODcsNyArODksNyBAQCBzdWIg
YnVpbGRKU0MKICAgICAgICAgcHVzaChAQVJHViwgICItLSIgLiAkY29uZmlndXJhdGlvbik7CiAg
ICAgICAgIAogICAgICAgICBjaGRpcldlYktpdCgpOwotICAgICAgICBteSAkYnVpbGRSZXN1bHQg
PSBzeXN0ZW0gIldlYktpdFRvb2xzL1NjcmlwdHMvYnVpbGQtanNjIiwgQEFSR1Y7CisgICAgICAg
IG15ICRidWlsZFJlc3VsdCA9IHN5c3RlbSBAcGVybCwgIldlYktpdFRvb2xzL1NjcmlwdHMvYnVp
bGQtanNjIiwgQEFSR1Y7CiAgICAgICAgIGlmICgkYnVpbGRSZXN1bHQpIHsKICAgICAgICAgICAg
IHByaW50IFNUREVSUiAiQ29tcGlsaW5nIGpzYyBmYWlsZWQhXG4iOwogICAgICAgICAgICAgZXhp
dCBleGl0U3RhdHVzKCRidWlsZFJlc3VsdCk7CkBAIC0xMzMsNCArMTM1LDQgQEAgcHVzaCBAYXJn
cywgIi0tdjgiIGlmICR2ODsKIHB1c2ggQGFyZ3MsICItLXBhcnNlLW9ubHkiIGlmICRwYXJzZW9u
bHk7CiBwdXNoIEBhcmdzLCAiLS10ZXN0cyIsICR0ZXN0c1BhdHRlcm4gaWYgJHRlc3RzUGF0dGVy
bjsKIAotZXhlYyAiLi9zdW5zcGlkZXIiLCBAYXJnczsKK2V4ZWMgQHBlcmwsICIuL3N1bnNwaWRl
ciIsIEBhcmdzOwpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9zdW5zcGlkZXItY29t
cGFyZS1yZXN1bHRzIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9zdW5zcGlkZXItY29tcGFyZS1yZXN1
bHRzCmluZGV4IGQyMTk4OTYuLjE4NmZkNGEgMTAwNzU1Ci0tLSBhL1dlYktpdFRvb2xzL1Njcmlw
dHMvc3Vuc3BpZGVyLWNvbXBhcmUtcmVzdWx0cworKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL3N1
bnNwaWRlci1jb21wYXJlLXJlc3VsdHMKQEAgLTQxLDYgKzQxLDkgQEAgbXkgJHJvb3Q7CiBteSAk
c2hvd0hlbHAgPSAwOwogbXkgJHViZW5jaCA9IDA7CiBteSAkdjggPSAwOworbXkgQHBlcmw7Citw
dXNoIEBwZXJsLCAicGVybCIgaWYgaXNXaW5kb3dzKCk7CisKIAogbXkgJHByb2dyYW1OYW1lID0g
YmFzZW5hbWUoJDApOwogbXkgJHVzYWdlID0gPDxFT0Y7CkBAIC02Nyw3ICs3MCw3IEBAIHN1YiBi
dWlsZEpTQwogewogICAgIGlmICghZGVmaW5lZCgkcm9vdCkpewogICAgICAgICBjaGRpcldlYktp
dCgpOwotICAgICAgICBteSAkYnVpbGRSZXN1bHQgPSBzeXN0ZW0gIldlYktpdFRvb2xzL1Njcmlw
dHMvYnVpbGQtanNjIiwgIi0tIiAuICRjb25maWd1cmF0aW9uOworICAgICAgICBteSAkYnVpbGRS
ZXN1bHQgPSBzeXN0ZW0gQHBlcmwsICJXZWJLaXRUb29scy9TY3JpcHRzL2J1aWxkLWpzYyIsICIt
LSIgLiAkY29uZmlndXJhdGlvbjsKICAgICAgICAgaWYgKCRidWlsZFJlc3VsdCkgewogICAgICAg
ICAgICAgcHJpbnQgU1RERVJSICJDb21waWxpbmcganNjIGZhaWxlZCFcbiI7CiAgICAgICAgICAg
ICBleGl0IFdFWElUU1RBVFVTKCRidWlsZFJlc3VsdCk7CkBAIC0xMjQsNCArMTI3LDQgQEAgbXkg
QGFyZ3MgPSAoIi0tc2hlbGwiLCAkanNjUGF0aCk7CiBwdXNoIEBhcmdzLCAiLS11YmVuY2giIGlm
ICR1YmVuY2g7CiBwdXNoIEBhcmdzLCAiLS12OCIgaWYgJHY4OwogCi1leGVjICIuL3N1bnNwaWRl
ci1jb21wYXJlLXJlc3VsdHMiLCBAYXJncywgQEFSR1Y7CitleGVjIEBwZXJsLCAiLi9zdW5zcGlk
ZXItY29tcGFyZS1yZXN1bHRzIiwgQGFyZ3MsIEBBUkdWOwo=
</data>
<flag name="review"
          id="21516"
          type_id="1"
          status="-"
          setter="ddkilzer"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40365</attachid>
            <date>2009-09-30 05:50:42 -0700</date>
            <delta_ts>2009-09-30 08:39:43 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>perl2.patch</filename>
            <type>text/plain</type>
            <size>2815</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBmOTkyOGQ3Li5hMjhiNzFmIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDktMDkt
MzAgIENzYWJhIE9zenRyb2dvbmFjICA8b3N6aUBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBzdW5zcGlkZXIgc2Ny
aXB0cyB3b3JrIG9uIFdpbmRvd3MgcGxhdGZvcm0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTY1NgorCisgICAgICAgICogU2NyaXB0cy9ydW4tc3Vu
c3BpZGVyOiBQZXJsIHNjcmlwdHMgaW52b2tlZCB3aXRoIHNhbWUgUGVybCBpbnRlcnByZXRlci4K
KyAgICAgICAgKiBTY3JpcHRzL3N1bnNwaWRlci1jb21wYXJlLXJlc3VsdHM6IFBlcmwgc2NyaXB0
cyBpbnZva2VkIHdpdGggc2FtZSBQZXJsIGludGVycHJldGVyLgorICAgICAgICAqIFNjcmlwdHMv
d2Via2l0ZGlycy5wbTogY3VycmVudFBlcmxQYXRoKCkgYWRkZWQuCisKIDIwMDktMDktMjkgIEJy
YWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFJ1YmJlcnN0YW1wZWQg
YnkgRGFuIEJlcm5zdGVpbi4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXN1
bnNwaWRlciBiL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXN1bnNwaWRlcgppbmRleCBmNmJjNzc5
Li4zNjdmZDA2IDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi1zdW5zcGlkZXIK
KysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9ydW4tc3Vuc3BpZGVyCkBAIC04Nyw3ICs4Nyw3IEBA
IHN1YiBidWlsZEpTQwogICAgICAgICBwdXNoKEBBUkdWLCAgIi0tIiAuICRjb25maWd1cmF0aW9u
KTsKICAgICAgICAgCiAgICAgICAgIGNoZGlyV2ViS2l0KCk7Ci0gICAgICAgIG15ICRidWlsZFJl
c3VsdCA9IHN5c3RlbSAiV2ViS2l0VG9vbHMvU2NyaXB0cy9idWlsZC1qc2MiLCBAQVJHVjsKKyAg
ICAgICAgbXkgJGJ1aWxkUmVzdWx0ID0gc3lzdGVtIGN1cnJlbnRQZXJsUGF0aCgpLCAiV2ViS2l0
VG9vbHMvU2NyaXB0cy9idWlsZC1qc2MiLCBAQVJHVjsKICAgICAgICAgaWYgKCRidWlsZFJlc3Vs
dCkgewogICAgICAgICAgICAgcHJpbnQgU1RERVJSICJDb21waWxpbmcganNjIGZhaWxlZCFcbiI7
CiAgICAgICAgICAgICBleGl0IGV4aXRTdGF0dXMoJGJ1aWxkUmVzdWx0KTsKQEAgLTEzMyw0ICsx
MzMsNCBAQCBwdXNoIEBhcmdzLCAiLS12OCIgaWYgJHY4OwogcHVzaCBAYXJncywgIi0tcGFyc2Ut
b25seSIgaWYgJHBhcnNlb25seTsKIHB1c2ggQGFyZ3MsICItLXRlc3RzIiwgJHRlc3RzUGF0dGVy
biBpZiAkdGVzdHNQYXR0ZXJuOwogCi1leGVjICIuL3N1bnNwaWRlciIsIEBhcmdzOworZXhlYyBj
dXJyZW50UGVybFBhdGgoKSwgIi4vc3Vuc3BpZGVyIiwgQGFyZ3M7CmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9TY3JpcHRzL3N1bnNwaWRlci1jb21wYXJlLXJlc3VsdHMgYi9XZWJLaXRUb29scy9T
Y3JpcHRzL3N1bnNwaWRlci1jb21wYXJlLXJlc3VsdHMKaW5kZXggZDIxOTg5Ni4uY2U4N2EyMyAx
MDA3NTUKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9zdW5zcGlkZXItY29tcGFyZS1yZXN1bHRz
CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvc3Vuc3BpZGVyLWNvbXBhcmUtcmVzdWx0cwpAQCAt
NjcsNyArNjcsNyBAQCBzdWIgYnVpbGRKU0MKIHsKICAgICBpZiAoIWRlZmluZWQoJHJvb3QpKXsK
ICAgICAgICAgY2hkaXJXZWJLaXQoKTsKLSAgICAgICAgbXkgJGJ1aWxkUmVzdWx0ID0gc3lzdGVt
ICJXZWJLaXRUb29scy9TY3JpcHRzL2J1aWxkLWpzYyIsICItLSIgLiAkY29uZmlndXJhdGlvbjsK
KyAgICAgICAgbXkgJGJ1aWxkUmVzdWx0ID0gc3lzdGVtIGN1cnJlbnRQZXJsUGF0aCgpLCAiV2Vi
S2l0VG9vbHMvU2NyaXB0cy9idWlsZC1qc2MiLCAiLS0iIC4gJGNvbmZpZ3VyYXRpb247CiAgICAg
ICAgIGlmICgkYnVpbGRSZXN1bHQpIHsKICAgICAgICAgICAgIHByaW50IFNUREVSUiAiQ29tcGls
aW5nIGpzYyBmYWlsZWQhXG4iOwogICAgICAgICAgICAgZXhpdCBXRVhJVFNUQVRVUygkYnVpbGRS
ZXN1bHQpOwpAQCAtMTI0LDQgKzEyNCw0IEBAIG15IEBhcmdzID0gKCItLXNoZWxsIiwgJGpzY1Bh
dGgpOwogcHVzaCBAYXJncywgIi0tdWJlbmNoIiBpZiAkdWJlbmNoOwogcHVzaCBAYXJncywgIi0t
djgiIGlmICR2ODsKIAotZXhlYyAiLi9zdW5zcGlkZXItY29tcGFyZS1yZXN1bHRzIiwgQGFyZ3Ms
IEBBUkdWOworZXhlYyBjdXJyZW50UGVybFBhdGgoKSwgIi4vc3Vuc3BpZGVyLWNvbXBhcmUtcmVz
dWx0cyIsIEBhcmdzLCBAQVJHVjsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0ZGlycy5wbSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQppbmRleCAzYzdi
NTM3Li44YmY2MDAzIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMu
cG0KKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCkBAIC04Niw2ICs4Niwx
MSBAQCBzdWIgZGV0ZXJtaW5lU291cmNlRGlyCiB9CiAKICMgdXNlZCBmb3Igc2NyaXB0cyB3aGlj
aCBhcmUgc3RvcmVkIGluIGEgbm9uLXN0YW5kYXJkIGxvY2F0aW9uCitzdWIgY3VycmVudFBlcmxQ
YXRoKCkKK3sKKyAgICByZXR1cm4gJF5YOworfQorCiBzdWIgc2V0U291cmNlRGlyKCQpCiB7CiAg
ICAgKCRzb3VyY2VEaXIpID0gQF87Cg==
</data>
<flag name="review"
          id="21580"
          type_id="1"
          status="-"
          setter="ddkilzer"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40375</attachid>
            <date>2009-09-30 08:39:43 -0700</date>
            <delta_ts>2009-09-30 10:12:03 -0700</delta_ts>
            <desc>updated patch</desc>
            <filename>perl1.patch</filename>
            <type>text/plain</type>
            <size>3067</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCBmOTkyOGQ3Li5hMjhiNzFmIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMDktMDkt
MzAgIENzYWJhIE9zenRyb2dvbmFjICA8b3N6aUBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTWFrZSBzdW5zcGlkZXIgc2Ny
aXB0cyB3b3JrIG9uIFdpbmRvd3MgcGxhdGZvcm0uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTY1NgorCisgICAgICAgICogU2NyaXB0cy9ydW4tc3Vu
c3BpZGVyOiBQZXJsIHNjcmlwdHMgaW52b2tlZCB3aXRoIHNhbWUgUGVybCBpbnRlcnByZXRlci4K
KyAgICAgICAgKiBTY3JpcHRzL3N1bnNwaWRlci1jb21wYXJlLXJlc3VsdHM6IFBlcmwgc2NyaXB0
cyBpbnZva2VkIHdpdGggc2FtZSBQZXJsIGludGVycHJldGVyLgorICAgICAgICAqIFNjcmlwdHMv
d2Via2l0ZGlycy5wbTogY3VycmVudFBlcmxQYXRoKCkgYWRkZWQuCisKIDIwMDktMDktMjkgIEJy
YWR5IEVpZHNvbiAgPGJlaWRzb25AYXBwbGUuY29tPgogCiAgICAgICAgIFJ1YmJlcnN0YW1wZWQg
YnkgRGFuIEJlcm5zdGVpbi4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXN1
bnNwaWRlciBiL1dlYktpdFRvb2xzL1NjcmlwdHMvcnVuLXN1bnNwaWRlcgppbmRleCBmNmJjNzc5
Li4zNjdmZDA2IDEwMDc1NQotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3J1bi1zdW5zcGlkZXIK
KysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy9ydW4tc3Vuc3BpZGVyCkBAIC04Nyw3ICs4Nyw3IEBA
IHN1YiBidWlsZEpTQwogICAgICAgICBwdXNoKEBBUkdWLCAgIi0tIiAuICRjb25maWd1cmF0aW9u
KTsKICAgICAgICAgCiAgICAgICAgIGNoZGlyV2ViS2l0KCk7Ci0gICAgICAgIG15ICRidWlsZFJl
c3VsdCA9IHN5c3RlbSAiV2ViS2l0VG9vbHMvU2NyaXB0cy9idWlsZC1qc2MiLCBAQVJHVjsKKyAg
ICAgICAgbXkgJGJ1aWxkUmVzdWx0ID0gc3lzdGVtIGN1cnJlbnRQZXJsUGF0aCgpLCAiV2ViS2l0
VG9vbHMvU2NyaXB0cy9idWlsZC1qc2MiLCBAQVJHVjsKICAgICAgICAgaWYgKCRidWlsZFJlc3Vs
dCkgewogICAgICAgICAgICAgcHJpbnQgU1RERVJSICJDb21waWxpbmcganNjIGZhaWxlZCFcbiI7
CiAgICAgICAgICAgICBleGl0IGV4aXRTdGF0dXMoJGJ1aWxkUmVzdWx0KTsKQEAgLTEzMyw0ICsx
MzMsNCBAQCBwdXNoIEBhcmdzLCAiLS12OCIgaWYgJHY4OwogcHVzaCBAYXJncywgIi0tcGFyc2Ut
b25seSIgaWYgJHBhcnNlb25seTsKIHB1c2ggQGFyZ3MsICItLXRlc3RzIiwgJHRlc3RzUGF0dGVy
biBpZiAkdGVzdHNQYXR0ZXJuOwogCi1leGVjICIuL3N1bnNwaWRlciIsIEBhcmdzOworZXhlYyBj
dXJyZW50UGVybFBhdGgoKSwgIi4vc3Vuc3BpZGVyIiwgQGFyZ3M7CmRpZmYgLS1naXQgYS9XZWJL
aXRUb29scy9TY3JpcHRzL3N1bnNwaWRlci1jb21wYXJlLXJlc3VsdHMgYi9XZWJLaXRUb29scy9T
Y3JpcHRzL3N1bnNwaWRlci1jb21wYXJlLXJlc3VsdHMKaW5kZXggZDIxOTg5Ni4uY2U4N2EyMyAx
MDA3NTUKLS0tIGEvV2ViS2l0VG9vbHMvU2NyaXB0cy9zdW5zcGlkZXItY29tcGFyZS1yZXN1bHRz
CisrKyBiL1dlYktpdFRvb2xzL1NjcmlwdHMvc3Vuc3BpZGVyLWNvbXBhcmUtcmVzdWx0cwpAQCAt
NjcsNyArNjcsNyBAQCBzdWIgYnVpbGRKU0MKIHsKICAgICBpZiAoIWRlZmluZWQoJHJvb3QpKXsK
ICAgICAgICAgY2hkaXJXZWJLaXQoKTsKLSAgICAgICAgbXkgJGJ1aWxkUmVzdWx0ID0gc3lzdGVt
ICJXZWJLaXRUb29scy9TY3JpcHRzL2J1aWxkLWpzYyIsICItLSIgLiAkY29uZmlndXJhdGlvbjsK
KyAgICAgICAgbXkgJGJ1aWxkUmVzdWx0ID0gc3lzdGVtIGN1cnJlbnRQZXJsUGF0aCgpLCAiV2Vi
S2l0VG9vbHMvU2NyaXB0cy9idWlsZC1qc2MiLCAiLS0iIC4gJGNvbmZpZ3VyYXRpb247CiAgICAg
ICAgIGlmICgkYnVpbGRSZXN1bHQpIHsKICAgICAgICAgICAgIHByaW50IFNUREVSUiAiQ29tcGls
aW5nIGpzYyBmYWlsZWQhXG4iOwogICAgICAgICAgICAgZXhpdCBXRVhJVFNUQVRVUygkYnVpbGRS
ZXN1bHQpOwpAQCAtMTI0LDQgKzEyNCw0IEBAIG15IEBhcmdzID0gKCItLXNoZWxsIiwgJGpzY1Bh
dGgpOwogcHVzaCBAYXJncywgIi0tdWJlbmNoIiBpZiAkdWJlbmNoOwogcHVzaCBAYXJncywgIi0t
djgiIGlmICR2ODsKIAotZXhlYyAiLi9zdW5zcGlkZXItY29tcGFyZS1yZXN1bHRzIiwgQGFyZ3Ms
IEBBUkdWOworZXhlYyBjdXJyZW50UGVybFBhdGgoKSwgIi4vc3Vuc3BpZGVyLWNvbXBhcmUtcmVz
dWx0cyIsIEBhcmdzLCBAQVJHVjsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Vi
a2l0ZGlycy5wbSBiL1dlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQppbmRleCAzYzdi
NTM3Li41Y2E0NWMyIDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdGRpcnMu
cG0KKysrIGIvV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCkBAIC0yOSw2ICsyOSw3
IEBACiAKIHVzZSBzdHJpY3Q7CiB1c2Ugd2FybmluZ3M7Cit1c2UgQ29uZmlnOwogdXNlIEZpbmRC
aW47CiB1c2UgRmlsZTo6QmFzZW5hbWU7CiB1c2UgRmlsZTo6U3BlYzsKQEAgLTg2LDYgKzg3LDE1
IEBAIHN1YiBkZXRlcm1pbmVTb3VyY2VEaXIKIH0KIAogIyB1c2VkIGZvciBzY3JpcHRzIHdoaWNo
IGFyZSBzdG9yZWQgaW4gYSBub24tc3RhbmRhcmQgbG9jYXRpb24KK3N1YiBjdXJyZW50UGVybFBh
dGgoKQoreworICAgIG15ICR0aGlzUGVybCA9ICReWDsKKyAgICBpZiAoJF5PIG5lICdWTVMnKSB7
CisgICAgICAgICR0aGlzUGVybCAuPSAkQ29uZmlne19leGV9IHVubGVzcyAkdGhpc1BlcmwgPX4g
bS8kQ29uZmlne19leGV9JC9pOworICAgIH0KKyAgICByZXR1cm4gJHRoaXNQZXJsOworfQorCiBz
dWIgc2V0U291cmNlRGlyKCQpCiB7CiAgICAgKCRzb3VyY2VEaXIpID0gQF87Cg==
</data>
<flag name="review"
          id="21590"
          type_id="1"
          status="+"
          setter="ddkilzer"
    />
    <flag name="commit-queue"
          id="21596"
          type_id="3"
          status="-"
          setter="ddkilzer"
    />
          </attachment>
      

    </bug>

</bugzilla>