richter     01/05/11 00:14:45

  Modified:    .        Tag: Embperl2c Changes.pod DOM.xs Embperl.pm
                        Embperl.pod Embperl.xs EmbperlD.pod INSTALL.pod
                        Intro.pod IntroD.pod MANIFEST Makefile.PL
                        embpexec.pl.templ ep.h epdom.c epmacro.h epmain.c
                        epnames.h eputil.c test.pl
               Embperl  Tag: Embperl2c Syntax.pm
               test/cmp Tag: Embperl2c hidden.htm http.htm includeerr1.htm
                        includeerr2.htm
               test/cmp2 Tag: Embperl2c epobless2.htm epobless3.htm
               test/conf Tag: Embperl2c httpd.conf.src
               test/html Tag: Embperl2c http.htm
  Added:       test/cmp Tag: Embperl2c opmasktrap.htm.561
  Log:
  Embperl 2 - cleanup
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.129.4.21 +22 -3     embperl/Changes.pod
  
  Index: Changes.pod
  ===================================================================
  RCS file: /home/cvs/embperl/Changes.pod,v
  retrieving revision 1.129.4.20
  retrieving revision 1.129.4.21
  diff -u -r1.129.4.20 -r1.129.4.21
  --- Changes.pod       2001/05/08 12:55:34     1.129.4.20
  +++ Changes.pod       2001/05/11 07:13:33     1.129.4.21
  @@ -101,18 +101,37 @@
   
   =head1 1.3.2
   
  -   - Fixed bug in SetSessionCookie which had called undefined method 
  -     getinitalid.  Spotted by Sun Choi.
  -   - Additions to IntroEmbperlObject.pod by Neil Gunton.
      - Emulate the syntax => Text parameter of Embperl 2.0, which allows 
        to include pure text files any without interpretation. Requested
        by Kee Hinckley.
  +   - Fixed problem with corrupted @ISA, that had occured when a page was
  +     first requested without EmbperlObject and then with EmbperlObject.
      - Catch exceptions inside of Embperl.pm and correctly cleanup the
        request. This avoids problems in further request in case anything
        was really going wrong.
      - If the base template in an EmbperlObject request is requested
        directly the Execute ('*') does nothing, to avoid
        endless recursion.
  +   - Fixed bug in SetSessionCookie which had called undefined method 
  +     getinitalid.  Spotted by Sun Choi.
  +   - Removed wrong expire setting from SetSessionCookie, spotted 
  +     by Michael Stevens.
  +   - Additions to IntroEmbperlObject.pod by Neil Gunton.
  +   - ';' is now accepcted as separator for query strings addtionaly
  +     to the '&' character. Patch from Brent A. Ellingson.
  +   - ';' is now escaped to %3B when outputed inside a URL.
  +   - Embperl is now added to the Serversoftware identification when 
  +     preloaded under mod_perl.
  +   - adapted make test to Perl 5.6.1 and 5.7.1 so now it passes sucessfully.
  +   - fixed problem with cleanup in threaded Perl 5.6.1 and higher
  +   - added pod documentation to embperl.pl. Patch from Angus Lees.
  +   - %http_headers_out can take now array refs as elements to set multiple
  +     headers of the same value. Patch from Maxwell Krohn.
  +   - Non module-documenations (like Intro.pod Faq.pod etc) now gets copied under
  +     the correct directory and man pages are generated with the correct name
  +     (e.g. perldoc HTML::Embperl::Intro works now after installation). Based
  +     on an idea from Angus Lees.
  +   - Makefile.PL enhancements for Apache/ActiveState binary distribution
   
   =head1 1.3.1 (RELEASE)   13 Feb. 2001
   
  
  
  
  1.1.2.11  +1 -3      embperl/DOM.xs
  
  Index: DOM.xs
  ===================================================================
  RCS file: /home/cvs/embperl/DOM.xs,v
  retrieving revision 1.1.2.10
  retrieving revision 1.1.2.11
  diff -u -r1.1.2.10 -r1.1.2.11
  --- DOM.xs    2001/04/10 08:03:43     1.1.2.10
  +++ DOM.xs    2001/05/11 07:13:35     1.1.2.11
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: DOM.xs,v 1.1.2.10 2001/04/10 08:03:43 richter Exp $
  +#   $Id: DOM.xs,v 1.1.2.11 2001/05/11 07:13:35 richter Exp $
   #
   ###################################################################################
   
  @@ -124,7 +124,6 @@
   
   SV *
   embperl_Node_iReplaceChildWithUrlDATA (xOldChild,sText)
  -    int xDomTree
       int xOldChild
       SV * sText
   PREINIT:
  @@ -224,7 +223,6 @@
   
   void
   embperl_DomTree_iDiscardAfterCheckpoint (xNode)
  -    int xDomTree
       int xNode
   CODE:
       DomTree_discardAfterCheckpoint (pCurrReq -> xCurrDomTree, xNode) ;
  
  
  
  1.118.4.38 +4 -21     embperl/Embperl.pm
  
  Index: Embperl.pm
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl.pm,v
  retrieving revision 1.118.4.37
  retrieving revision 1.118.4.38
  diff -u -r1.118.4.37 -r1.118.4.38
  --- Embperl.pm        2001/05/08 12:55:37     1.118.4.37
  +++ Embperl.pm        2001/05/11 07:13:36     1.118.4.38
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: Embperl.pm,v 1.118.4.37 2001/05/08 12:55:37 richter Exp $
  +#   $Id: Embperl.pm,v 1.118.4.38 2001/05/11 07:13:36 richter Exp $
   #
   ###################################################################################
   
  @@ -86,8 +86,6 @@
       %http_headers_out
   
       $pathsplit
  -    $multiplicity
  -
       ) ;
   
   
  @@ -129,7 +127,6 @@
   %filepack = () ;    # translate filename to packagename
   $packno   = 1 ;     # for assigning unique packagenames
   
  -$multiplicity = Multiplicity () ;
   
   @cleanups = () ;    # packages which need a cleanup
   $LogOutputFileno = 0 ;
  @@ -1327,7 +1324,6 @@
           my $packfile ;
           my %addcleanup ;
           my $varfile ;
  -        my %revinc = map { ($_ => 1) } values (%INC) if ($multiplicity) ;
           my ($k, $v) ;
       
           $seen{''}      = 1 ;
  @@ -1341,11 +1337,6 @@
           
               #print LOG "GVFile $package\::__ANON__\n" ;
            $packfile = GVFile (*{"$package\::__ANON__"}) ;
  -         if ($multiplicity && !$revinc{$packfile})
  -                {
  -                print LOG "$packfile -> -- eval --\n" ;
  -                $packfile = "-- eval --" ;
  -                }
               $packfile = '-> No Perl in Source <-' if ($packfile eq ('_<' . 
__FILE__) || $packfile eq __FILE__) ;
            $addcleanup = \%{"$package\:\:CLEANUP"} ;
            $addcleanup -> {'CLEANUP'} = 0 ;
  @@ -1372,15 +1363,11 @@
                   my $cleanfile = \%{"$package\:\:CLEANUPFILE"} ;
                foreach $key (@vars)
                    {
  -                 $val =  ${*{"$package\::"}}{$key} ;
  +                 next if ($key =~ /^::/) ;
  +                    $val =  ${*{"$package\::"}}{$key} ;
                    local(*ENTRY) = $val;
                    #print LOG "$key = " . GVFile (*ENTRY) . "\n" ;
                    $varfile = GVFile (*ENTRY) ;
  -                 if ($multiplicity && !$revinc{$varfile})
  -                        {
  -                        print LOG "$varfile -> -- eval --\n" ;
  -                        $varfile = "-- eval --" ;
  -                        }
                   
                       $glob = $package.'::'.$key ;
                    if (defined (*ENTRY{SCALAR}) && defined (${$glob}) && ref 
(${$glob}) eq 'DBIx::Recordset')
  @@ -1459,6 +1446,7 @@
                   my $cleanfile = \%{"$package\:\:CLEANUPFILE"} ;
                   while (($key,$val) = each(%{*{"$package\::"}}))
                       {
  +                    next if ($key =~ /^::/) ;
                    local(*ENTRY) = $val;
                    $glob = $package.'::'.$key ;
                    if (defined (*ENTRY{SCALAR}) && defined (${$glob}) && ref 
(${$glob}) eq 'DBIx::Recordset')
  @@ -1469,11 +1457,6 @@
                    else
                           {
                        $varfile = GVFile (*ENTRY) ;
  -                     if ($multiplicity && !$revinc{$varfile})
  -                            {
  -                            print LOG "$varfile -> -- eval --\n" ;
  -                            $varfile = "-- eval --" ;
  -                            }
   
                           if (($packfile eq $varfile || $addcleanup -> {$key} ||
                               $cleanfile->{$varfile}) &&  
  
  
  
  1.56.4.5  +20 -0     embperl/Embperl.pod
  
  Index: Embperl.pod
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl.pod,v
  retrieving revision 1.56.4.4
  retrieving revision 1.56.4.5
  diff -u -r1.56.4.4 -r1.56.4.5
  --- Embperl.pod       2001/03/27 11:51:57     1.56.4.4
  +++ Embperl.pod       2001/05/11 07:13:37     1.56.4.5
  @@ -412,7 +412,12 @@
   
       [! Execute ({'isa' => '../eposubs.htm'}) !]
   
  +=item B<syntax>  (1.3.2 and above)
   
  +In 1.3.x the only value that is accepted is 'Text', this emulates the
  +Embperl 2.0 behaviour of simply passing the whole text thru, without
  +doing any processing.
  +
   =back
   
   
  @@ -1855,6 +1860,21 @@
   Embperl will automaticly set the status to 301 (Redirect). Example:
   
     [- $http_headers_out{'Location'} = "http://www.ecos.de/embperl/"; -]
  +
  +Starting with version 1.3.2 all headers with the exception "Location" and 
  +"Content-Type" can take multiple values.
  +For instance, if you wanted to set two cookies, you can proceed as follows:
  +
  +  [- $http_headers_out{'Set-Cookie'} = 
  +      ['name=cook1;value=2;','name=cook2;value=b'] ; -]
  +
  +If you supply multiple values for "Location" or "Content-Type" via an array
  +reference, then Embperl will simply use the first in the list.  Empty arrays
  +will be ignored.  For instance, the following will neither change the status
  +to 301 nor create a Location: line in the HTTP headers:
  +
  +  [- $http_headers_out{'Location'} = [] ; -]
  +
   
   see also META HTTP-EQUIV=
   
  
  
  
  1.29.4.15 +19 -5     embperl/Embperl.xs
  
  Index: Embperl.xs
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl.xs,v
  retrieving revision 1.29.4.14
  retrieving revision 1.29.4.15
  diff -u -r1.29.4.14 -r1.29.4.15
  --- Embperl.xs        2001/05/02 11:54:42     1.29.4.14
  +++ Embperl.xs        2001/05/11 07:13:38     1.29.4.15
  @@ -1,6 +1,6 @@
   
/*###################################################################################
   #
  -#   Embperl - Copyright (c) 1997-2001 Gerald Richter / ECOS
  +#   Embperl - Copyright (c) 1997-1999 Gerald Richter / ECOS
   #
   #   You may distribute under the terms of either the GNU General Public
   #   License or the Artistic License, as specified in the Perl README file.
  @@ -10,8 +10,6 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: Embperl.xs,v 1.29.4.14 2001/05/02 11:54:42 richter Exp $
  -#
   
###################################################################################*/
   
   
  @@ -87,14 +85,23 @@
   embperl_GVFile(gv)
       SV * gv
   CODE:
  +    char buf[20] ;
       RETVAL = "" ;
   #ifdef GvFILE
       if (gv && SvTYPE(gv) == SVt_PVGV && GvGP (gv))
        {
  +     /*
        char * name = GvFILE (gv) ;
        if (name)
            RETVAL = name ;
  -     }
  +        */
  +        /* workaround for not working GvFILE in Perl 5.6.1+ with threads */
  +     if(GvIMPORTED(gv))
  +            RETVAL = "i" ;
  +        else
  +            RETVAL = "" ;
  +       
  +        }
   #else
       if (gv && SvTYPE(gv) == SVt_PVGV && GvGP (gv))
        {
  @@ -331,12 +338,16 @@
   
        sv_unmagic(ERRSV, 'U');
   
  +
  +#ifdef EP2
  +
   void 
   embperl_ClearSymtab(sPackage)
       char * sPackage
   CODE:
       ClearSymtab (pCurrReq, sPackage) ;
   
  +#endif
   
   ################################################################################
   
  @@ -749,8 +760,11 @@
   
   #endif
   
  -# Reste Module, so we get the correct boot function
  +# Reset Module, so we get the correct boot function
   
   MODULE = HTML::Embperl      PACKAGE = HTML::Embperl     PREFIX = embperl_
  +
  +
  +
   
   
  
  
  
  1.29.4.5  +22 -0     embperl/EmbperlD.pod
  
  Index: EmbperlD.pod
  ===================================================================
  RCS file: /home/cvs/embperl/EmbperlD.pod,v
  retrieving revision 1.29.4.4
  retrieving revision 1.29.4.5
  diff -u -r1.29.4.4 -r1.29.4.5
  --- EmbperlD.pod      2001/03/27 11:51:58     1.29.4.4
  +++ EmbperlD.pod      2001/05/11 07:13:39     1.29.4.5
  @@ -364,7 +364,13 @@
   
       [! Execute ({'isa' => '../eposubs.htm'}) !]
   
  +=item B<syntax>  (ab 1.3.2)
   
  +In der Version 1.3.x wird lediglich der Wert 'Text' akzetiert, dieser
  +f�hrt dazu, dass das Verhalten von Embperl 2.0 emuliert wird und 
  +der Text lediglich durchgereicht wird und keine Verarbeitung
  +stattfindet.
  +
   =back
   
   
  @@ -1761,6 +1767,22 @@
   Ist ein "Location" Header angegeben, setzt I<Embperl> den Status automatisch auf 
301. Beispiel:
   
     [- $http_headers_out{'Location'} = "http://www.ecos.de/embperl/"; -]
  +
  +
  +Ab 1.3.2 k�nnen alle HTTP Header (au�er "Location" und "Content-Type") auch 
  +mehrere Werte erhalten. Um z.B. mehrere Cookie zu setzen, kann man folgendes 
schreiben:
  +
  +
  +  [- $http_headers_out{'Set-Cookie'} = 
  +      ['name=cook1;value=2;','name=cook2;value=b'] ; -]
  +
  +F�r "Location" und "Content-Type" wird nur der erste Wert ber�cksichtigt. Leere
  +Arrays werden ignoriert. Z.B. f�hrt Folgendes B<nicht> zu einem Redirect:
  +
  +  [- $http_headers_out{'Location'} = [] ; -]
  +
  +
  +
   
   siehe auch L<META HTTP-EQUIV= ...>
   
  
  
  
  1.12.4.4  +18 -2     embperl/INSTALL.pod
  
  Index: INSTALL.pod
  ===================================================================
  RCS file: /home/cvs/embperl/INSTALL.pod,v
  retrieving revision 1.12.4.3
  retrieving revision 1.12.4.4
  diff -u -r1.12.4.3 -r1.12.4.4
  --- INSTALL.pod       2001/03/27 11:51:59     1.12.4.3
  +++ INSTALL.pod       2001/05/11 07:13:40     1.12.4.4
  @@ -52,7 +52,7 @@
   
   =over 4
   
  -=item * File::Spec 0.82 or higher
  +=item * File::Spec 0.8 or higher
   
   =back
   
  @@ -172,7 +172,7 @@
   
   =over 4
   
  -=item * File::Spec 0.82 or higher
  +=item * File::Spec 0.8 or higher
   
   =back
   
  @@ -181,8 +181,22 @@
   
   
   
  +=head2 How to continue
  +
  +You can view the documentation at any time from the Embperl source directory,
  +by using the following commands metioned below. After the installation you can
  +also view documention by specifying the full module name: e.g.
  +
  +perldoc HTML::Embperl, perldoc HTML::Embperl::Intro etc.
  +
  +To get familiar how Embperl works, read the L<"Intro"|"Intro.pod"> and
  +L<"IntroEmbperlObject"|"IntroEmbperlObject.pod"> documents. 
  +To learn how to use and configure Embperl, read the L<"Embperl 
documentation"|"Embperl.pod">.
  +
  +
   =head2 Further Documentation (english)
   
  +
   See L<"perldoc Features"|"Features.pod"> for list of Embperls features 
   
   See L<"perldoc Intro"|"Intro.pod"> for an step by step 
  @@ -212,3 +226,5 @@
   See B<perldoc EmbperlD> for complete documentation.
   
   or you can view it online on http://www.ecos.de/embperl/
  +
  +
  
  
  
  1.4.6.1   +10 -6     embperl/Intro.pod
  
  Index: Intro.pod
  ===================================================================
  RCS file: /home/cvs/embperl/Intro.pod,v
  retrieving revision 1.4
  retrieving revision 1.4.6.1
  diff -u -r1.4 -r1.4.6.1
  --- Intro.pod 1999/08/08 23:56:26     1.4
  +++ Intro.pod 2001/05/11 07:13:42     1.4.6.1
  @@ -109,8 +109,10 @@
       [$ <cmd> <arg> $]
   
   
  -=head3 if, elsif, else, endif
  +=over 8
   
  +=item if, elsif, else, endif
  +
   The if command is just the same as in Perl.  It is used to
   conditionally output/process parts of the document.
   Example:
  @@ -127,7 +129,7 @@
   of $ENV{REQUEST_METHOD}.
   
   
  -=head3 while, endwhile
  +=item while, endwhile
   
   The while command can be used to create a loop in the HTML
   document.  For example:
  @@ -139,7 +141,7 @@
   The above example will display all environment variables, each
   terminated with a line break.
   
  -=head3 do, until
  +=item do, until
   
   The do until also create a loop, but with a condition at the end.
   For example:
  @@ -149,7 +151,7 @@
       [+ $arr[ $i++ ] +]
    [$ until $i > $#arr $]
   
  -=head3 foreach, endforeach
  +=item foreach, endforeach
   
   Create a loop iterating over every element of an array/list.
   Example:
  @@ -159,7 +161,7 @@
    [$ endforeach $]
   
   
  -=head3 var <var1> <var2> ...
  +=item var <var1> <var2> ...
   
   By default, you do not need to declare any variables you use within
   an Embperl page. Embperl takes care of deleting them at the end of
  @@ -172,11 +174,13 @@
   
    use strict ;use vars qw {$a @b %c} ;
   
  -=head3 hidden
  +=item hidden
   
   
   hidden is used for creating hidden form fields and is described in
   the form field section below.
  +
  +=back
   
   =head1 Dynamic Tables
   
  
  
  
  1.3.6.1   +10 -7     embperl/IntroD.pod
  
  Index: IntroD.pod
  ===================================================================
  RCS file: /home/cvs/embperl/IntroD.pod,v
  retrieving revision 1.3
  retrieving revision 1.3.6.1
  diff -u -r1.3 -r1.3.6.1
  --- IntroD.pod        2000/03/01 04:29:55     1.3
  +++ IntroD.pod        2001/05/11 07:13:43     1.3.6.1
  @@ -104,8 +104,10 @@
       [$ <cmd> <arg> $]
   
   
  -=head3 if, elsif, else, endif
  +=over 8
   
  +=item if, elsif, else, endif
  +
   Der if Befehl hat die selben Auswirkungen wie in Perl. Er kann genutzt
   werden um Teile des Dokuments nur unter bestimmten Bedingungen 
auszugeben/auszuf�hren.
   Beispiel:
  @@ -122,7 +124,7 @@
   von $ENV{REQUEST_METHOD} aus.
   
   
  -=head3 while, endwhile
  +=item while, endwhile
   
   Der while Befehl wird dazu benutzt, um eine Schleife innerhalb des
   HTML Dokuments zu erzeugen. Beispiel:
  @@ -134,7 +136,7 @@
   Das Beispiel zeigt alle Environementvariablen, jede abgeschlossen
   mit einem Zeilenumbruch (<BR>).
   
  -=head3 do, until
  +=item do, until
   
   C<do> C<until> erzeugt ebenso eine Schleife, jedoch mit der Bedingung am Ende.
   Beispiel:
  @@ -144,7 +146,7 @@
       [+ $arr[ $i++ ] +]
    [$ until $i > $#arr $]
   
  -=head3 foreach, endforeach
  +=item foreach, endforeach
   
   Erzeugt eine Schleife, die �ber jedes Element einer Liste/Arrays iteriert.
   Beispiel:
  @@ -154,7 +156,7 @@
    [$ endforeach $]
   
   
  -=head3 var <var1> <var2> ...
  +=item var <var1> <var2> ...
   
   Standartm��ig ist es nicht n�tig irgenwelche Variablen innerhalb einer
   Embperlseite zu deklarieren. Embperl k�mmert sich darum nach jedem Request
  @@ -167,11 +169,13 @@
   
    use strict ; use vars qw {$a @b %c} ;
   
  -=head3 hidden
  +=item hidden
   
   hidden erm�glicht es versteckte Formularfelder zu erzeugen und wird weiter unten
   im Abschnitt �ber Formularfelder beschrieben.
   
  +=back
  +
   =head1 Dynamische Tabellen
   
   Ein sehr leistungsf�higes Feature von Embperl ist das Erzeugen von
  @@ -770,7 +774,6 @@
    - entfernt HTML tags aus dem Perlcode (z.B. <br> welches durch einen
      HTML Editor eingef�gt wurde)
   
  -=back
   
   
   =head2 Ausgabe: Escaping
  
  
  
  1.50.4.24 +1 -0      embperl/MANIFEST
  
  Index: MANIFEST
  ===================================================================
  RCS file: /home/cvs/embperl/MANIFEST,v
  retrieving revision 1.50.4.23
  retrieving revision 1.50.4.24
  diff -u -r1.50.4.23 -r1.50.4.24
  --- MANIFEST  2001/05/08 12:55:41     1.50.4.23
  +++ MANIFEST  2001/05/11 07:13:43     1.50.4.24
  @@ -315,6 +315,7 @@
   test/cmp/reqrec.htm
   test/cmp/opmask.htm
   test/cmp/opmasktrap.htm
  +test/cmp/opmasktrap.htm.561
   test/cmp/rawinput.htm
   test/cmp/chdir.htm
   test/cmp/nochdir.htm
  
  
  
  1.31.4.12 +50 -13    embperl/Makefile.PL
  
  Index: Makefile.PL
  ===================================================================
  RCS file: /home/cvs/embperl/Makefile.PL,v
  retrieving revision 1.31.4.11
  retrieving revision 1.31.4.12
  diff -u -r1.31.4.11 -r1.31.4.12
  --- Makefile.PL       2001/04/25 14:37:09     1.31.4.11
  +++ Makefile.PL       2001/05/11 07:13:44     1.31.4.12
  @@ -27,7 +27,7 @@
       ( 
         'mod_perl.c' => { name     => 'perl_module', 
                        path        => ['$apache_src/modules/perl/libperl.so', 
'$EPBINDIR/modules/libperl.so', '$apache_src/mod_perl.so'],
  -                     win32path   => ['$mpdll', '$mpdll/apachemoduleperl.dll', 
'$EPBINDIR/modules/apachemoduleperl.dll'],
  +                     win32path   => ['$mpdll', '$mpdll/apachemoduleperl.dll', 
'$mpdll/mod_perl.so', '$apache_src/../modules/mod_perl.so', 
'$EPBINDIR/modules/apachemoduleperl.dll'],
                        file        => 'libperl.so',
                        win32file   => 'apachemoduleperl.dll',
                      },
  @@ -174,6 +174,36 @@
        }
   
        
  + sub MY::post_initialize
  +        {
  +        my $self = shift ;
  +
  +        # move docs to the right place
  +         
  +        my $pm = $self -> {PM} ;
  +        my $k ;
  +        my $v ;
  +        while (($k, $v) = each (%$pm))
  +            {
  +            if (($k =~ /\.pod$/) && !($k =~ /^Embperl/) )
  +                {
  +                $v =~ s#^(.*/)(.*?)\.pod$#$1Embperl/$2.pod# ;
  +                $pm -> {$k} = $v ;
  +                }
  +            }
  +                                 
  +        my $man = $self -> {MAN3PODS} ;
  +        while (($k, $v) = each (%$man))
  +            {
  +            if (!($v =~ /::Embperl/))
  +                {
  +                $v =~ s#HTML::#HTML::Embperl::# ;
  +                $man -> {$k} = $v ;
  +                }
  +            }
  +
  +       $self -> MM::post_initialize (@_) ;
  +       }
   
   ## ----------------------------------------------------------------------------
   
  @@ -345,6 +375,7 @@
   
   if ($ARGV[0] eq 'debug')
       {
  +    shift @ARGV;
       if ($win32)
           {
           $ccdebug = '-Zi -W3' ;
  @@ -356,7 +387,8 @@
           $lddebug = '-g' ;
           }
       }
  -elsif (defined ($ARGV[0]) && ($ARGV[0] =~ /^\W/))
  +
  +if (defined ($ARGV[0]) && ($ARGV[0] =~ /^\W/))
       {
       $apache = 2 ;
       $b = 1 ;
  @@ -489,8 +521,12 @@
       if ($win32)
        { 
           $i = "-I. -I$inc_dir -I$apache_src/regex -I$apache_src/os/win32" ;
  -     if (!-e "$apache_src/CoreD/ApacheCore.lib")
  +     if (-e "$apache_src/../libexec/ApacheCore.lib")
               {
  +         $o = " $apache_src/../libexec/ApacheCore.lib" ;
  +         }
  +     elsif (!-e "$apache_src/CoreD/ApacheCore.lib")
  +            {
            $o = " $apache_src/CoreR/ApacheCore.lib" ;
            }
        else
  @@ -584,8 +620,13 @@
           }
       else
           {
  -        $EPHTTPD = "$apache_src/ApacheD/Apache.exe" ;
  -        $EPHTTPDDLL = "$apache_src/CoreD" ;
  +        $EPHTTPD = "$apache_src/../Apache.exe" ;
  +        $EPHTTPDDLL = "$apache_src/.." ;
  +        if (!-e $EPHTTPD) 
  +            {
  +            $EPHTTPD = "$apache_src/ApacheD/Apache.exe" ;
  +            $EPHTTPDDLL = "$apache_src/CoreD" ;
  +            }
           if (!-e $EPHTTPD) 
               {
               $EPHTTPD = "$apache_src/ApacheR/Apache.exe" ;
  @@ -792,9 +833,9 @@
   
       $SessVer ||= 0 ;
   
  -    if (($FSVer = CheckModule ("File::Spec", "-> Required for EmbperlObject, make 
test will fail whithout File::Spec")) < 0.82)
  +    if (($FSVer = CheckModule ("File::Spec", "-> Required for EmbperlObject, make 
test will fail whithout File::Spec")) < 0.8)
           {
  -        print "-> EmbperlObject requires File::Spec 0.82 or higher, found $FSVer, 
please upgrade!\n" ;
  +        print "-> EmbperlObject requires File::Spec 0.8 or higher, found $FSVer, 
please upgrade!\n" ;
           }
           
       CheckModule ("CGI", "-> File Upload will not work without CGI.pm installed") ;
  @@ -912,16 +953,12 @@
       'LIBS'      => [''],                      
       'DEFINE'    => "$d \$(DEFS)",                     
       'INC'       => $i,                        
  -    'MAN3PODS'     => { 
  -                     'Embperl.pod' => 'blib/man3/HTML::Embperl.3',
  -                     'EmbperlD.pod' => 'blib/man3/HTML::EmbperlD.3',
  -                     'EmbperlObject.pm' => 'blib/man3/HTML::EmbperlObject.3',
  -                      }, 
  +    'EXE_FILES'    => [ 'embpexec.pl' ],
       'clean'        => { FILES => 'dirent.h test/conf/httpd.conf test/tmp/* 
Embperl.c' },
       'realclean'    => { FILES => 'embpexec.pl embpexec.bat embpcgi.pl 
embpcgi.test.pl embpcgi.bat test/conf/config.pl' },
       'dist'         => { COMPRESS => 'gzip', SUFFIX => 'gz'},
       'dynamic_lib'  => $dynlib,
  -    'PREREQ_PM'    => { 'File::Spec' => 0.82 },
  +    'PREREQ_PM'    => { 'File::Spec' => 0.8 },
       'ABSTRACT'     => 'Embed Perl code in HTML documents',
       'AUTHOR'       => 'Gerald Richter <[EMAIL PROTECTED]>',
   
  
  
  
  1.1.4.3   +56 -1     embperl/embpexec.pl.templ
  
  Index: embpexec.pl.templ
  ===================================================================
  RCS file: /home/cvs/embperl/embpexec.pl.templ,v
  retrieving revision 1.1.4.2
  retrieving revision 1.1.4.3
  diff -u -r1.1.4.2 -r1.1.4.3
  --- embpexec.pl.templ 2001/03/29 05:28:42     1.1.4.2
  +++ embpexec.pl.templ 2001/05/11 07:13:46     1.1.4.3
  @@ -11,7 +11,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: embpexec.pl.templ,v 1.1.4.2 2001/03/29 05:28:42 richter Exp $
  +#   $Id: embpexec.pl.templ,v 1.1.4.3 2001/05/11 07:13:46 richter Exp $
   #
   ###################################################################################
   
  @@ -26,4 +26,59 @@
   
   HTML::Embperl::run (@ARGV) ;
   
  +__END__
  +
  +=head1 NAME
  +
  +embpexec.pl - Run an HTML::Embperl file offline
  +
  +=head1 SYNOPSIS
  +
  +embpexec.pl [B<-o> I<outputfile>] [B<-l> I<logfile>] [B<-d> I<debugflags>] 
I<htmlfile> [I<query_string>]
  +
  +=head1 DESCRIPTION
  +
  +Converts an HTML file (or any other ascii file) with embedded Perl statements into 
a standard
  +HTML file.
  +
  +I<htmlfile> is the full pathname of the HTML file which should be
  +processed by Embperl.
  +
  +I<query_string> is optional and has the same meaning as the
  +environment variable C<QUERY_STRING> when invoked as a CGI
  +script. That is, C<QUERY_STRING> contains everything following the
  +first "?" in a URL. I<query_string> should be URL-encoded. The default
  +is no query string.
  +
  +=head1 OPTIONS
  +
  +=over 4
  +
  +=item B<-o> I<outputfile>
  +
  +Optional. Gives the filename to which the output is written. The
  +default is stdout.
  +
  +=item B<-o> I<logfile>
  +
  +Optional. Gives the filename of the logfile. The default is
  +F</tmp/embperl.log>.
  +
  +=item B<-d> I<debugflags>
  +
  +Optional. Specifies the level of debugging (what is written to the log
  +file). The default is nothing. See L<HTML::Embperl/EMBPERL_DEBUG> for
  +exact values.
  +
  +=back
  +
  +=head1 SEE ALSO
  +
  +L<HTML::Embperl>
  +
  +=head1 AUTHOR
  +
  +G. Richter ([EMAIL PROTECTED])
  +
  +=end
   
  
  
  
  1.27.4.14 +4 -3      embperl/ep.h
  
  Index: ep.h
  ===================================================================
  RCS file: /home/cvs/embperl/ep.h,v
  retrieving revision 1.27.4.13
  retrieving revision 1.27.4.14
  diff -u -r1.27.4.13 -r1.27.4.14
  --- ep.h      2001/04/25 12:11:02     1.27.4.13
  +++ ep.h      2001/05/11 07:13:47     1.27.4.14
  @@ -1,6 +1,6 @@
   
/*###################################################################################
   #
  -#   Embperl - Copyright (c) 1997-2001 Gerald Richter / ECOS
  +#   Embperl - Copyright (c) 1997-1999 Gerald Richter / ECOS
   #
   #   You may distribute under the terms of either the GNU General Public
   #   License or the Artistic License, as specified in the Perl README file.
  @@ -10,8 +10,6 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: ep.h,v 1.27.4.13 2001/04/25 12:11:02 richter Exp $
  -#
   
###################################################################################*/
   
   
  @@ -145,8 +143,10 @@
   #include "compat.h"
   #endif
   
  +
   module MODULE_VAR_EXPORT embperl_module;
   
  +
   #endif
   
   struct tReq ;
  @@ -453,6 +453,7 @@
   
   #ifndef WIN32
   #define strnicmp strncasecmp
  +#define stricmp strcasecmp
   #endif
   
   void Dirname (/*in*/ const char * filename,
  
  
  
  1.4.2.37  +3 -3      embperl/Attic/epdom.c
  
  Index: epdom.c
  ===================================================================
  RCS file: /home/cvs/embperl/Attic/epdom.c,v
  retrieving revision 1.4.2.36
  retrieving revision 1.4.2.37
  diff -u -r1.4.2.36 -r1.4.2.37
  --- epdom.c   2001/05/08 06:29:39     1.4.2.36
  +++ epdom.c   2001/05/11 07:13:48     1.4.2.37
  @@ -9,7 +9,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epdom.c,v 1.4.2.36 2001/05/08 06:29:39 richter Exp $
  +#   $Id: epdom.c,v 1.4.2.37 2001/05/11 07:13:48 richter Exp $
   #
   
###################################################################################*/
   
  @@ -201,7 +201,7 @@
   
   
   /* forward */
  -static int DomTree_free (SV * pSV, MAGIC * mg) ;
  +static int DomTree_free (pTHX_ SV * pSV, MAGIC * mg) ;
   
   
   
  @@ -835,7 +835,7 @@
   /* ------------------------------------------------------------------------ */
   
   
  -static int DomTree_free (SV * pSV, MAGIC * mg)
  +static int DomTree_free (pTHX_ SV * pSV, MAGIC * mg)
   
       {
       return DomTree_dodelete (DomTree_self (mg -> mg_len)) ;
  
  
  
  1.6.4.4   +1 -3      embperl/epmacro.h
  
  Index: epmacro.h
  ===================================================================
  RCS file: /home/cvs/embperl/epmacro.h,v
  retrieving revision 1.6.4.3
  retrieving revision 1.6.4.4
  diff -u -r1.6.4.3 -r1.6.4.4
  --- epmacro.h 2001/03/28 10:07:31     1.6.4.3
  +++ epmacro.h 2001/05/11 07:13:50     1.6.4.4
  @@ -1,6 +1,6 @@
   
/*###################################################################################
   #
  -#   Embperl - Copyright (c) 1997-2001 Gerald Richter / ECOS
  +#   Embperl - Copyright (c) 1997-1999 Gerald Richter / ECOS
   #
   #   You may distribute under the terms of either the GNU General Public
   #   License or the Artistic License, as specified in the Perl README file.
  @@ -9,8 +9,6 @@
   #   THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  -#
  -#   $Id: epmacro.h,v 1.6.4.3 2001/03/28 10:07:31 richter Exp $
   #
   
###################################################################################*/
   
  
  
  
  1.75.4.34 +103 -23   embperl/epmain.c
  
  Index: epmain.c
  ===================================================================
  RCS file: /home/cvs/embperl/epmain.c,v
  retrieving revision 1.75.4.33
  retrieving revision 1.75.4.34
  diff -u -r1.75.4.33 -r1.75.4.34
  --- epmain.c  2001/04/26 13:12:50     1.75.4.33
  +++ epmain.c  2001/05/11 07:13:51     1.75.4.34
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epmain.c,v 1.75.4.33 2001/04/26 13:12:50 richter Exp $
  +#   $Id: epmain.c,v 1.75.4.34 2001/05/11 07:13:51 richter Exp $
   #
   
###################################################################################*/
   
  @@ -1364,7 +1364,7 @@
       r -> pApacheReq = NULL ;
       if (_nIOType == epIOMod_Perl)
        {
  -        ap_add_module (&embperl_module) ;
  +     ap_add_module (&embperl_module) ;
        }
   #endif
       r -> bReqRunning = 0 ;
  @@ -1547,8 +1547,6 @@
       ADDINTMG (EscMode) ;
   #ifdef EP2
       ADDINTMG (CurrNode) ;
  -    //ADDINTMG (CheckpointNode) ;
  -    //ADDINTMG (OutputVar) ;
   #endif    
       
       ADDOPTMG (optDisableVarCleanup      ) ;
  @@ -2185,8 +2183,8 @@
       ppSV = hv_fetch(r -> pEnvHash, "PATH_INFO", sizeof ("PATH_INFO") - 1, 0) ;  
       if (ppSV)
           r -> sPathInfo = SvPV (*ppSV ,len) ;
  -    r -> pTokenTable = pTokenTable ;    
   #endif
  +    r -> pTokenTable = pTokenTable ;    
       if (rc != ok)
           r -> bDebug = 0 ; /* Turn debbuging off, only errors will go to stderr if 
logfile not open */
       r -> bOptions        = pConf -> bOptions ;
  @@ -2691,31 +2689,85 @@
                HE *   pEntry ;
                char * pKey ;
                I32    l ;
  +
  + 
  +             I32     i;
  +             I32     len;
  +             AV      *arr;
  +             SV      **svp;
  +
  +             /* loc = 0  =>  no location header found
  +              * loc = 1  =>  location header found
  +              * loc = 2  =>  location header + value found
  +              */
  +             I32     loc;
           
                hv_iterinit (r -> pHeaderHash) ;
                while ((pEntry = hv_iternext (r -> pHeaderHash)))
                    {
                    pKey     = hv_iterkey (pEntry, &l) ;
                    pHeader  = hv_iterval (r -> pHeaderHash, pEntry) ;
  -
  +                 loc = 0;
                    if (pHeader && pKey)
                        {                           
  -                     p = SvPV (pHeader, ldummy) ;
  -                     if (strnicmp (pKey, "location", 8) == 0)
  -                         r -> pApacheReq->status = 301;
  -                     if (strnicmp (pKey, "content-type", 12) == 0)
  -                         r -> pApacheReq->content_type = pstrdup(r -> 
pApacheReq->pool, p);
  -                     else
  +
  +                     if (stricmp (pKey, "location") == 0)
  +                         loc = 1;
  +                     if (stricmp (pKey, "content-type") == 0)  
  +                         {
  +                         p = NULL;
  +                         if ( SvROK(pHeader) && SvTYPE(SvRV(pHeader)) == SVt_PVAV ) 
  +                             {
  +                             arr = (AV *)SvRV(pHeader);
  +                             if (av_len(arr) >= 0) 
  +                                 {
  +                                 svp = av_fetch(arr, 0, 0);
  +                                 p = SvPV(*svp, ldummy);
  +                                 }
  +                             } 
  +                         else 
  +                             {
  +                             p = SvPV(pHeader, ldummy);
  +                             }
  +                         if (p) 
  +                             r->pApacheReq->content_type = 
pstrdup(r->pApacheReq->pool, p);
  +                         } 
  +                     else if (SvROK(pHeader)  && SvTYPE(SvRV(pHeader)) == SVt_PVAV 
) 
  +                         {
  +                         arr = (AV *)SvRV(pHeader);
  +                         len = av_len(arr);
  +                         for (i = 0; i <= len; i++) 
  +                             {
  +                             svp = av_fetch(arr, i, 0);
  +                             p = SvPV(*svp, ldummy);
  +                             table_add( r->pApacheReq->headers_out, 
pstrdup(r->pApacheReq->pool, pKey),
  +                                        pstrdup(r->pApacheReq->pool, p ) );
  +                             if (loc == 1) 
  +                                 {
  +                                 loc = 2;
  +                                 break;
  +                                 }
  +                             }
  +                         } 
  +                     else 
  +                         {
  +                         p = SvPV(pHeader, ldummy);
                            table_set(r -> pApacheReq->headers_out, pstrdup(r -> 
pApacheReq->pool, pKey), pstrdup(r -> pApacheReq->pool, p)) ;
  +                         if (loc == 1) loc = 2;
  +                         }
  +
  +                     if (loc == 2) r->pApacheReq->status = 301;
                        }
                    }
  +
  +
                if (pCookie)
                    {
                    table_add(r -> pApacheReq->headers_out, sSetCookie, pstrdup(r -> 
pApacheReq->pool, SvPV(pCookie, ldummy))) ;
                    SvREFCNT_dec (pCookie) ;
                    }
   #ifdef EP2
  -             if (r -> bEP1Compat)  // Embperl 2 currently cannot calc Content Length
  +             if (r -> bEP1Compat)  /*  Embperl 2 currently cannot calc Content 
Length */
   #endif
                set_content_length (r -> pApacheReq, GetContentLength (r) + (r -> 
pCurrEscape?2:0)) ;
                send_http_header (r -> pApacheReq) ;
  @@ -2762,18 +2814,39 @@
   
                        if (pHeader && pKey)
                            {                       
  -                         p = SvPV (pHeader, na) ;
  -                         if (strnicmp (pKey, "content-type", 12) == 0)
  -                             pContentType = p ;
  +                         if (SvROK(pHeader)  && SvTYPE(SvRV(pHeader)) == SVt_PVAV ) 
  +                             {
  +                             AV * arr = (AV *)SvRV(pHeader);
  +                             I32 len = av_len(arr);
  +                             int i ;
  +
  +                             for (i = 0; i <= len; i++) 
  +                                 {
  +                                 SV ** svp = av_fetch(arr, i, 0);
  +                                 p = SvPV(*svp, ldummy);
  +                                 oputs (r, pKey) ;
  +                                 oputs (r, ": ") ;
  +                                 oputs (r, p) ;
  +                                 oputs (r, "\n") ;
  +                                 if (r -> bDebug & dbgHeadersIn)
  +                                     lprintf (r,  "[%d]HDR:  %s: %s\n", r -> nPid, 
pKey, p) ; 
  +                                 }
  +                             } 
                            else
  -                             {
  -                             oputs (r, pKey) ;
  -                             oputs (r, ": ") ;
  -                             oputs (r, p) ;
  -                             oputs (r, "\n") ;
  +                             {                                   
  +                             p = SvPV (pHeader, na) ;
  +                             if (stricmp (pKey, "content-type") == 0)
  +                                 pContentType = p ;
  +                             else
  +                                 {
  +                                 oputs (r, pKey) ;
  +                                 oputs (r, ": ") ;
  +                                 oputs (r, p) ;
  +                                 oputs (r, "\n") ;
  +                                 }
  +                             if (r -> bDebug & dbgHeadersIn)
  +                                 lprintf (r,  "[%d]HDR:  %s: %s\n", r -> nPid, 
pKey, p) ; 
                                }
  -                         if (r -> bDebug & dbgHeadersIn)
  -                             lprintf (r,  "[%d]HDR:  %s: %s\n", r -> nPid, pKey, p) 
; 
                            }
                        }
                    
  @@ -3066,6 +3139,13 @@
       r -> Buf.pCurrPos = r -> Buf.pBuf + nBlockStart ;
       r -> Buf.pEndPos  = r -> Buf.pCurrPos + nBlockSize ;
       r -> Buf.nBlockNo = nBlockNo ;
  +
  +
  +    if (r -> pTokenTable && strcmp ((char *)r -> pTokenTable, "Text") == 0)
  +     { /* --- emulate Embperl 2  syntax => 'Text' --- */         
  +     owrite (r, r -> Buf.pCurrPos, r -> Buf.pEndPos - r -> Buf.pCurrPos) ;
  +     return r -> Buf.nBlockNo ;
  +     }
   
       rc = ok ;
       p = r -> Buf.pCurrPos ;
  
  
  
  1.19.4.7  +5 -11     embperl/epnames.h
  
  Index: epnames.h
  ===================================================================
  RCS file: /home/cvs/embperl/epnames.h,v
  retrieving revision 1.19.4.6
  retrieving revision 1.19.4.7
  diff -u -r1.19.4.6 -r1.19.4.7
  --- epnames.h 2001/05/02 11:54:44     1.19.4.6
  +++ epnames.h 2001/05/11 07:13:52     1.19.4.7
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: epnames.h,v 1.19.4.6 2001/05/02 11:54:44 richter Exp $
  +#   $Id: epnames.h,v 1.19.4.7 2001/05/11 07:13:52 richter Exp $
   #
   
###################################################################################*/
   
  @@ -101,6 +101,9 @@
   #define SetupRequest           EMBPERL_SetupRequest   
   #define Term                   EMBPERL_Term           
   #define sstrdup                EMBPERL_sstrdup        
  +#define strnstr                EMBPERL_strnstr
  +#define ClearSymtab         EMBPERL_ClearSymtab
  +#define UndefSub            EMBPERL_UndefSub
   #define _ep_memdup             EMBPERL__ep_memdup
   #define ProcessBlock           EMBPERL_ProcessBlock
   #define NewEscMode             EMBPERL_NewEscMode
  @@ -310,13 +313,4 @@
   
   #endif /* endif WIN32 */
   
  -#endif /* APACHE */
  -
  -
  -
  -
  -#ifdef WIN32
  -
  -#define strncasecmp _strnicmp
  -
  -#endif
  +#endif /* APACHE */
  \ No newline at end of file
  
  
  
  1.15.4.9  +27 -6     embperl/eputil.c
  
  Index: eputil.c
  ===================================================================
  RCS file: /home/cvs/embperl/eputil.c,v
  retrieving revision 1.15.4.8
  retrieving revision 1.15.4.9
  diff -u -r1.15.4.8 -r1.15.4.9
  --- eputil.c  2001/04/25 09:25:07     1.15.4.8
  +++ eputil.c  2001/05/11 07:13:53     1.15.4.9
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: eputil.c,v 1.15.4.8 2001/04/25 09:25:07 richter Exp $
  +#   $Id: eputil.c,v 1.15.4.9 2001/05/11 07:13:53 richter Exp $
   #
   
###################################################################################*/
   
  @@ -866,6 +866,7 @@
       }
   
   
  +#ifdef EP2
   
   /* ------------------------------------------------------------------------- */
   /*                                                                           */
  @@ -885,7 +886,7 @@
       SV *     val;
       char *   key;
       I32              klen;
  -    int              bDebug = 0 ;
  +    int              bDebug = 1 ;
       SV *     sv;
       HV *     hv;
       AV *     av;
  @@ -899,8 +900,10 @@
       HV *     pCleanupHV ;
       char *      s ;
       GV *     pFileGV ;
  +    /*
       GV *     symtabgv ;
       GV *     symtabfilegv ;
  +    */
   
       dTHR;
   
  @@ -915,9 +918,11 @@
        return ;
        }
   
  +    /*
       symtabgv = (GV *)*ppSV ;
       symtabfilegv = (GV *)GvFILEGV (symtabgv) ;
  -    
  +    */
  +
       pSV = newSVpvf ("%s::CLEANUP", sPackage) ;
       s   = SvPV (pSV, l) ;
       pCV = perl_get_cv (s, 0) ;
  @@ -953,7 +958,12 @@
       while ((val = hv_iternextsv(symtab, &key, &klen))) 
        {
        if(SvTYPE(val) != SVt_PVGV)
  +         {
  +         if (bDebug)
  +             lprintf (r, "[%d]CUP: Ignore ??? because it's no gv\n", r -> nPid) ;
  +         
            continue;
  +         }
   
        s = GvNAME((GV *)val) ;
        l = strlen (s) ;
  @@ -977,15 +987,25 @@
                continue ;
                }
            
  +         if (s[0] == ':' && s[1] == ':')
  +             {
  +             if (bDebug)
  +                 lprintf (r, "[%d]CUP: Ignore %s because it's special\n", r -> 
nPid, s) ;
  +             continue ;
  +             }
  +         
  +         /*
            pFileGV = GvFILEGV ((GV *)val) ;
            if (pFileGV != symtabfilegv)
                {
                if (bDebug)
  -                 lprintf (r, "[%d]CUP: Ignore %s because it's defined in another 
source file\n", r -> nPid, s) ;
  +                 lprintf (r, "[%d]CUP: Ignore %s because it's defined in another 
source file (%s)\n", r -> nPid, s, GvFILE((GV *)val)) ;
                continue ;
                }
  +         */
            }
        
  +     
        if((sv = GvSV((GV*)val)) && SvOK (sv))
            {
            if (bDebug)
  @@ -1012,12 +1032,13 @@
            {
            if (bDebug)
                lprintf (r, "[%d]CUP: IO %s = ...\n", r -> nPid, s) ;
  -         //sv_unmagic ((SV *)io, 'q') ; /* untie */
  -         //do_close((GV *)val, 0);
  +         /* sv_unmagic ((SV *)io, 'q') ; */ /* untie */
  +         /* do_close((GV *)val, 0); */
            }
        }
       }
   
  +#endif
   
   
   /* ------------------------------------------------------------------------- */
  
  
  
  1.70.4.57 +78 -36    embperl/test.pl
  
  Index: test.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test.pl,v
  retrieving revision 1.70.4.56
  retrieving revision 1.70.4.57
  diff -u -r1.70.4.56 -r1.70.4.57
  --- test.pl   2001/05/08 06:29:40     1.70.4.56
  +++ test.pl   2001/05/11 07:13:54     1.70.4.57
  @@ -11,17 +11,13 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: test.pl,v 1.70.4.56 2001/05/08 06:29:40 richter Exp $
  +#   $Id: test.pl,v 1.70.4.57 2001/05/11 07:13:54 richter Exp $
   #
   ###################################################################################
   
   # Before `make install' is performed this script should be runnable with
   # `make test'. After `make install' it should work as `perl test.pl'
   
  -use HTML::Embperl::Syntax::RTF ;
  -
  -my $s = HTML::Embperl::Syntax::RTF -> new ;
  -
   # version =>
   # errors  =>
   # query_string =>
  @@ -37,7 +33,8 @@
   # cookie =>
   # condition =>
   # param =>
  -
  +# reqbody =>
  +# respheader => \%
   
   @testdata = (
       'ascii' => { },
  @@ -116,11 +113,34 @@
       'varerr.htm' => { 
           'errors'     => -1,
           'noloop'     => 1,
  +        'condition'  => '$] < 5.006000', 
           },
       'varerr.htm' => { 
  +        'errors'     => 7,
  +        'noloop'     => 1,
  +        'condition'  => '$] >= 5.006000', 
  +        'cmpext'     => '56',
  +        'version'    => 1,
  +        },
  +    'varerr.htm' => { 
  +        'errors'     => 8,
  +        'noloop'     => 1,
  +        'condition'  => '$] >= 5.006000', 
  +        'cmpext'     => '56',
  +        'version'    => 2,
  +        },
  +    'varerr.htm' => { 
           'errors'     => 2,
           'version'    => 1,
           'cgi'        => 0,
  +        'condition'  => '$] < 5.006000', 
  +        },
  +    'varerr.htm' => { 
  +        'errors'     => 7,
  +        'version'    => 1,
  +        'cgi'        => 0,
  +        'condition'  => '$] >= 5.006000', 
  +        'cmpext'     => '56',
           },
       'varepvar.htm' => {
        'query_info' => 'a=1&b=2',
  @@ -193,11 +213,13 @@
       'heredoc.htm' => { },
       'post.htm' => {
           'offline'    => 0,
  +        'reqbody'    => "f1=abc1&f2=1234567890&f3=" . 'X' x 8192,
           },
       'upload.htm' => { 
           'query_info' => 'multval=A&multval=B&multval=C&single=S',
           'offline'    => 0,
   #        'noloop'     => 1,
  +        'reqbody'    => "Hi there!",
           },
       'reqrec.htm' => {
           'offline'    => 0,
  @@ -283,7 +305,9 @@
           },
       'sub.htm' => { },
       'sub.htm' => { },
  -    'subtab.htm' => { },
  +    'subtab.htm' => {
  +            'version'    => 2,
  +        },
       'exit.htm' => { 
           'version'    => 1,
           'offline'    => 0,
  @@ -327,6 +351,8 @@
       'http.htm' => { 
           'offline'    => 0,
           'version'    => 1,
  +        'reqbody'    => "a=b",  # Force POST, so no redirect happens
  +        'respheader' => { 'locationx' => 'http://www.ecos.de/embperl/', 'h1' => 
'v0', h2 => [ 'v1', 'v2'] },
           },
       'div.htm' => { 
           'repeat'    => 2,
  @@ -578,16 +604,19 @@
       'rtf/rtfbasic.asc' => { 
           'version'    => 2,
           'syntax'     => 'RTF',
  +        'offline'    => 1,
           'param'      => { one => 1, hash => { a => 111, b => 222, c => 
[1111,2222,3333,4444]}, array => [11,22,33] },
           },
       'rtf/rtffull.asc' => { 
           'version'    => 2,
           'syntax'     => 'RTF',
  +        'offline'    => 1,
           'param'      => { 'Nachname' => 'Richter', Vorname => 'Gerald' },
           },
       'rtf/rtfloop.asc' => { 
           'version'    => 2,
           'syntax'     => 'RTF',
  +        'offline'    => 1,
           'param'      => [
                           { 'Kunde' => 'blabla', Kurs => 'blubblub', 'Nachname' => 
'Richter', Vorname => 'Gerald' },
                           { 'Kunde' => 'blabla', Kurs => 'blubblub', 'Nachname' => 
'Richter2', Vorname => 'Gerald2' },
  @@ -961,7 +990,7 @@
   sub REQ
   
       {
  -    my ($loc, $file, $query, $ofile, $content, $upload, $cookieaction) = @_ ;
  +    my ($loc, $file, $query, $ofile, $content, $upload, $cookieaction, $respheader) 
= @_ ;
        
       eval 'require LWP::UserAgent' ;
       
  @@ -1035,7 +1064,7 @@
       
       #print $response -> headers -> as_string () ;
   
  -    return $response -> message if (!$response->is_success) ;
  +    return $response -> message if (!($response->is_success || 
($response->is_redirect && $respheader && $respheader ->{location}) )) ;
   
       my $m = 'ok' ;
       print "\nExpected new cookie:  Sent: $sendcookie, Got: " , ($c||''), "\n", $m = 
'' if (($cookieaction =~ /expectnew/) && ($sendcookie eq $c || !$c)) ;
  @@ -1043,6 +1072,38 @@
       print "\nExpected no cookie:   Sent: $sendcookie, Got: " , ($c||''), "\n", $m = 
''  if (($cookieaction =~ /expectno/) && $c) ;
       print "\nExpected expire cookie: Sent: $sendcookie, Got: " , ($c||''), "\n", $m 
= ''  if (($cookieaction =~ /expectexpire/) && !($c =~ /^EMBPERL_UID=; expires=/)) ;
       
  +
  +    if ($respheader)
  +        {
  +        local $^W = 0 ;
  +        while (my ($k, $v) = each (%$respheader))
  +            {
  +            my @x ;
  +            my $i ;
  +        
  +            if (ref ($v) eq 'ARRAY')
  +                {
  +                @x = split (/\s*,\s*/, $response -> header ($k)) ;
  +                $i = 0 ;
  +                foreach (@$v)
  +                    {
  +                    if ($x[$i] ne $_)
  +                        {
  +                        print "\nExpected HTTP header #$i $k: $_, Got value $x[$i]" 
;
  +                        $m = 'header missing' ;
  +                        }
  +                    $i++ ;
  +                    }                
  +                } 
  +            elsif (($x = $response -> header ($k)) ne $v)
  +                {
  +                print "\nExpected HTTP header $k: $v, Got value $x" ;
  +                $m = 'header missing' ;
  +                }
  +            }
  +        }
  +
  +
       return $m ;
       }
   
  @@ -1330,7 +1391,6 @@
                       }
                   
                   $errcnt = $test -> {errors} || 0 ;
  -                $errcnt = 7 if ($file eq 'varerr.htm' && $^V && $^V ge v5.6.0) ;
   
                   $debug = $test -> {debug} || $defaultdebug ;  
                $debug = 0 if ($opt_qq) ;
  @@ -1387,9 +1447,7 @@
                    $page =~ /.*\/(.*)$/ ;
                    $org = "$cmppath/$1" ;
                    $org = "$cmppath$testversion/$1" if (-e "$cmppath$testversion/$1") 
;
  -                    $org .= '56' if ($file eq 'varerr.htm' && $^V && $^V ge v5.6.0) 
;
                       $org .= $test -> {cmpext} if ($test -> {cmpext}) ;
  -                    #$org .= '-1' if ($ep1compat && -e "$org-1") ;
   
                    $err = CmpFiles ($outfile, $org, $errin) ;
                    }
  @@ -1874,8 +1932,12 @@
            $ENV{PATH} .= ";$EPHTTPDDLL" if ($EPWIN32) ;
            $ENV{PERL_STARTUP_DONE} = 1 ;
   
  +            $EPAPACHEVERSION =~ m#Apache/1\.3\.(\d+) # ;
  +
  +            $XX .= ' -s ' if ($1 < 13) ;
  +
            Win32::Process::Create($HttpdObj, $EPHTTPD,
  -                                "Apache -s $XX -f $EPPATH/$httpdconf ", 0,
  +                                "Apache $XX -f $EPPATH/$httpdconf ", 0,
                                   # NORMAL_PRIORITY_CLASS,
                                   0,
                                    ".") or die "***Cannot start $EPHTTPD" ;
  @@ -1970,21 +2032,6 @@
                   }
                   
    
  -=pod
  -         next if ($file =~ /\// && $loc eq $cgiloc) ;        
  -         next if ($file eq 'taint.htm' && $loc eq $cgiloc) ;
  -         next if ($file eq 'reqrec.htm' && $loc eq $cgiloc) ;
  -         next if (($file =~ /^exit.htm/) && $loc eq $cgiloc) ;
  -         #next if ($file eq 'error.htm' && $loc eq $cgiloc && $errcnt < 16) ;
  -         next if ($file eq 'varerr.htm' && $loc eq $cgiloc && $errcnt > 0) ;
  -         next if ($file eq 'varerr.htm' && $looptest) ;
  -         next if (($file =~ /registry/) && $loc eq $cgiloc) ;
  -         next if (($file =~ /match/) && $loc eq $cgiloc) ;
  -         #next if ($file eq 'http.htm' && $loc eq $cgiloc) ;
  -         #next if ($file eq 'notallow.xhtm' && $loc eq $cgiloc && $EPWIN32) ;
  -         next if ($file eq 'clearsess.htm' && !$looptest) ;
  -         next if (($file =~ /EmbperlObject/) && $loc eq $cgiloc) ;
  -=cut
            next if ($file eq 'chdir.htm' && $EPWIN32) ;
            next if ($file eq 'notfound.htm' && $loc eq $cgiloc && $EPWIN32) ;
            next if ($file =~ /opmask/ && $EPSTARTUP =~ /_dso/) ;
  @@ -2001,7 +2048,6 @@
                   }
        
               $errcnt = $test -> {errors} || 0 ;
  -            $errcnt = 7 if ($file eq 'varerr.htm' && $^V && $^V ge v5.6.0) ;
            $errcnt = -1 if ($EPWIN32 && $loc eq $cgiloc) ;
   
            $debug = $test -> {debug} || $defaultdebug ;  
  @@ -2032,13 +2078,11 @@
            print $txt ; 
            unlink ($outfile) ;
            
  -         $content = undef ;
  -         $content = "f1=abc1&f2=1234567890&f3=" . 'X' x 8192 if ($file eq 
'post.htm') ;
  +         $content = $test -> {reqbody} || undef ;
            $upload = undef ;
            if ($file eq 'upload.htm') 
                {
                $upload = "f1=abc1\r\n&f2=1234567890&f3=" . 'X' x 8192 ;
  -             $content = "Hi there!" ;
                }
   
               if (!$EPWIN32 && $loc eq $embploc && !($file =~ /notfound\.htm/))
  @@ -2053,7 +2097,7 @@
               $file .= '-1' if ($opt_ep1 && -e "$page-1") ;
               if (defined ($opt_ab))
                {
  -             $m = REQ ("$loc$locver", $file, $test -> {query_info}, $outfile, 
$content, $upload, $test -> {cookie}) if ($opt_abpre) ;
  +             $m = REQ ("$loc$locver", $file, $test -> {query_info}, $outfile, 
$content, $upload, $test -> {cookie}, $test -> {respheader}) if ($opt_abpre) ;
                $locver ||= '' ;
                $opt_ab = 10 if (!$opt_ab) ;
                my $cmd = "ab -n $opt_ab 'http://$host:$port/$loc$locver/$file"; . 
($test->{query_info}?"?$test->{query_info}'":"'") ;
  @@ -2068,7 +2112,7 @@
                }
            else
                {                               
  -             $m = REQ ("$loc$locver", $file, $test -> {query_info}, $outfile, 
$content, $upload, $test -> {cookie}) ;
  +             $m = REQ ("$loc$locver", $file, $test -> {query_info}, $outfile, 
$content, $upload, $test -> {cookie}, $test -> {respheader}) ;
                }
            $t_req += HTML::Embperl::Clock () - $t1 ; 
   
  @@ -2097,9 +2141,7 @@
                $page =~ /.*\/(.*)$/ ;
                $org = "$cmppath/$1" ;
                $org = "$cmppath$testversion/$1" if (-e "$cmppath$testversion/$1") ;
  -                $org .= '56' if ($file eq 'varerr.htm' && $^V && $^V ge v5.6.0) ;
                   $org .= $test -> {cmpext} if ($test -> {cmpext}) ;
  -                #$org .= '-1' if ($opt_ep1 && -e "$org-1") ;
   
                #print "Compare $page with $org\n" ;
                $err = CmpFiles ($outfile, $org) ;
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.4.38  +3 -3      embperl/Embperl/Attic/Syntax.pm
  
  Index: Syntax.pm
  ===================================================================
  RCS file: /home/cvs/embperl/Embperl/Attic/Syntax.pm,v
  retrieving revision 1.1.4.37
  retrieving revision 1.1.4.38
  diff -u -r1.1.4.37 -r1.1.4.38
  --- Syntax.pm 2001/05/08 12:56:02     1.1.4.37
  +++ Syntax.pm 2001/05/11 07:14:18     1.1.4.38
  @@ -10,7 +10,7 @@
   #   IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
   #   WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
   #
  -#   $Id: Syntax.pm,v 1.1.4.37 2001/05/08 12:56:02 richter Exp $
  +#   $Id: Syntax.pm,v 1.1.4.38 2001/05/11 07:14:18 richter Exp $
   #
   ###################################################################################
    
  @@ -324,7 +324,7 @@
   $DB::single = 1 ;
   },
                   compiletimeperlcode => q{
  -use vars ('$_ep_DomTree') ;
  +use vars ('$_ep_DomTree', '@ISA', '@param') ;
   *_ep_rp=\\&XML::Embperl::DOM::Node::iReplaceChildWithCDATA;
   *_ep_rpurl=\\&XML::Embperl::DOM::Node::iReplaceChildWithUrlDATA;
   *_ep_cp=\\&XML::Embperl::DOM::Tree::iCheckpoint;
  @@ -354,7 +354,7 @@
   # any initialisation could be put here
   },
                   compiletimeperlcode => q{
  -use vars ('$_ep_DomTree') ;
  +use vars ('$_ep_DomTree', '@ISA', '@param') ;
   *_ep_rp=\\&XML::Embperl::DOM::Node::iReplaceChildWithCDATA;
   *_ep_rpurl=\\&XML::Embperl::DOM::Node::iReplaceChildWithUrlDATA;
   *_ep_cp=\\&XML::Embperl::DOM::Tree::iCheckpoint;
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.4.6.3   +1 -1      embperl/test/cmp/hidden.htm
  
  Index: hidden.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/hidden.htm,v
  retrieving revision 1.4.6.2
  retrieving revision 1.4.6.3
  diff -u -r1.4.6.2 -r1.4.6.3
  --- hidden.htm        2001/05/04 06:14:46     1.4.6.2
  +++ hidden.htm        2001/05/11 07:14:22     1.4.6.3
  @@ -117,4 +117,4 @@
   </form>
   </body>
   </html>
  -
  +
  
  
  
  1.5.6.1   +12 -0     embperl/test/cmp/http.htm
  
  Index: http.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/http.htm,v
  retrieving revision 1.5
  retrieving revision 1.5.6.1
  diff -u -r1.5 -r1.5.6.1
  --- http.htm  1999/10/07 07:07:02     1.5
  +++ http.htm  2001/05/11 07:14:24     1.5.6.1
  @@ -13,6 +13,18 @@
        <tr>
                <td>Formatter</td><td>Embperl</td>
        </tr>
  +
  +     <tr>
  +             <td>Locationx</td><td>http://www.ecos.de/embperl/</td>
  +     </tr>
  +
  +     <tr>
  +             <td>h1</td><td>v0</td>
  +     </tr>
  +
  +     <tr>
  +^            <td>h2<\/td><td>ARRAY\(.*?\)<\/td>
  +     </tr>
   </table>
   
   
  
  
  
  1.2.6.4   +1 -1      embperl/test/cmp/includeerr1.htm
  
  Index: includeerr1.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/includeerr1.htm,v
  retrieving revision 1.2.6.3
  retrieving revision 1.2.6.4
  diff -u -r1.2.6.3 -r1.2.6.4
  --- includeerr1.htm   2001/04/26 13:54:18     1.2.6.3
  +++ includeerr1.htm   2001/05/11 07:14:25     1.2.6.4
  @@ -2,7 +2,7 @@
   <H1>Internal Server Error</H1>
   The server encountered an internal error or misconfiguration and was unable to 
complete your request.<P>
   ^Please contact the server administrator\,.*?and inform them of the time the error 
occurred\, and anything you might have done that may have caused the error
  -^\[.*?\]ERR\:  24\: Line \d+\: Error in Perl code: Can't locate object method 
&quot;is&quot; via package &quot;here&quot; at .*?includeerr1.htm line
  +^\[.*?\]ERR\:  24\: Line \d+\: Error in Perl code: Can't locate object method 
&quot;is&quot; via package &quot;here&quot;
   ^ HTML\:\:Embperl.*?<P>
   </BODY></HTML>
   
  
  
  
  1.3.6.4   +7 -7      embperl/test/cmp/includeerr2.htm
  
  Index: includeerr2.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/includeerr2.htm,v
  retrieving revision 1.3.6.3
  retrieving revision 1.3.6.4
  diff -u -r1.3.6.3 -r1.3.6.4
  --- includeerr2.htm   2000/09/14 12:02:26     1.3.6.3
  +++ includeerr2.htm   2001/05/11 07:14:26     1.3.6.4
  @@ -2,15 +2,15 @@
   <H1>Internal Server Error</H1>
   The server encountered an internal error or misconfiguration and was unable to 
complete your request.<P>
   ^Please contact the server administrator\,.*?and inform them of the time the error 
occurred\, and anything you might have done that may have caused the error
  -^\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  -^\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  -^\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  -^\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  -^\[.*?\]ERR\:  24\: Line \d+\: Error in Perl code: Can't locate object method 
&quot;is&quot; via package &quot;here&quot; at .*?incerr.htm line 6
   ^-\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  -^-\[.*?\]ERR\:  24\: Line \d+\: Error in Perl code: Can't locate object method 
&quot;is&quot; via package &quot;here&quot; at .*?incerr.htm line 6
   ^-\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  -^-\[.*?\]ERR\:  24\: Line \d+\: Error in Perl code: Can't locate object method 
&quot;is&quot; via package &quot;here&quot; at .*?incerr.htm line 6
  +^-\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  +^-\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  +^\[.*?\]ERR\:  24\: Line \d+\: Error in Perl code: Can't locate object method 
&quot;is&quot; via package &quot;here&quot;
  +^-\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  +^-\[.*?\]ERR\:  24\: Line \d+\: Error in Perl code: Can't locate object method 
&quot;is&quot; via package &quot;here&quot;
  +^-\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
  +^-\[.*?\]ERR\:  24\: Line \d+\: Error in Perl code: Can't locate object method 
&quot;is&quot; via package &quot;here&quot;
   ^-\[.*?\]ERR\:  32\: Line \d+\: Warning in Perl code: Use of uninitialized value
   ^ HTML\:\:Embperl.*?<P>
   </BODY></HTML>
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.1   +0 -0      embperl/test/cmp/opmasktrap.htm.561
  
  Index: opmasktrap.htm.561
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/opmasktrap.htm.561,v
  retrieving revision 1.1
  retrieving revision 1.1.2.1
  diff -u -r1.1 -r1.1.2.1
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.4   +1 -1      embperl/test/cmp2/Attic/epobless2.htm
  
  Index: epobless2.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp2/Attic/epobless2.htm,v
  retrieving revision 1.1.2.3
  retrieving revision 1.1.2.4
  diff -u -r1.1.2.3 -r1.1.2.4
  --- epobless2.htm     2001/05/02 12:46:02     1.1.2.3
  +++ epobless2.htm     2001/05/11 07:14:33     1.1.2.4
  @@ -27,4 +27,4 @@
    
   </body>
    </html>
  -
  +
  
  
  
  1.1.2.3   +1 -1      embperl/test/cmp2/Attic/epobless3.htm
  
  Index: epobless3.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp2/Attic/epobless3.htm,v
  retrieving revision 1.1.2.2
  retrieving revision 1.1.2.3
  diff -u -r1.1.2.2 -r1.1.2.3
  --- epobless3.htm     2001/05/02 12:46:02     1.1.2.2
  +++ epobless3.htm     2001/05/11 07:14:34     1.1.2.3
  @@ -18,4 +18,4 @@
    
   </body>
    </html>
  -
  +
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.24.4.14 +4 -0      embperl/test/conf/httpd.conf.src
  
  Index: httpd.conf.src
  ===================================================================
  RCS file: /home/cvs/embperl/test/conf/httpd.conf.src,v
  retrieving revision 1.24.4.13
  retrieving revision 1.24.4.14
  diff -u -r1.24.4.13 -r1.24.4.14
  --- httpd.conf.src    2001/03/27 14:21:53     1.24.4.13
  +++ httpd.conf.src    2001/05/11 07:14:39     1.24.4.14
  @@ -367,6 +367,10 @@
   PerlSetEnv EMBPERL_SYNTAX "Embperl SSI"
   </Location>
   
  +<Location /embperl/rtf/>
  +PerlSetEnv EMBPERL_SYNTAX RTF
  +</Location>
  +
   <Location /eg>
   SetHandler perl-script
   PerlHandler HTML::Embperl
  
  
  
  No                   revision
  
  
  No                   revision
  
  
  1.4.6.1   +6 -3      embperl/test/html/http.htm
  
  Index: http.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/html/http.htm,v
  retrieving revision 1.4
  retrieving revision 1.4.6.1
  diff -u -r1.4 -r1.4.6.1
  --- http.htm  1999/10/07 07:07:07     1.4
  +++ http.htm  2001/05/11 07:14:42     1.4.6.1
  @@ -9,9 +9,12 @@
   
   <meta http-equiv="Formatter" content="Embperl">
   
  -[# 
  -$http_headers_out{'Location'} = "http://www.ecos.de/embperl/"; ;
  -#]
  +[- 
  +$http_headers_out{'Locationx'} = "http://www.ecos.de/embperl/"; ;
  +$http_headers_out{'h1'} = "v0" ;
  +$http_headers_out{'h2'} = ['v1', 'v2'] ;
  +-]
  +
   
   [- @ks = sort keys %http_headers_out -]
   <table>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to