richter     2004/10/31 06:17:27

  Modified:    .        Changes.pod ep.h epio.c epmain.c
               eg/web   indexD.htm
               test/cmp input.htm
               test/html input.htm
  Log:
  finalize http request before cleanup
  
  Revision  Changes    Path
  1.253     +5 -7      embperl/Changes.pod
  
  Index: Changes.pod
  ===================================================================
  RCS file: /home/cvs/embperl/Changes.pod,v
  retrieving revision 1.252
  retrieving revision 1.253
  diff -u -r1.252 -r1.253
  --- Changes.pod       8 Oct 2004 07:55:03 -0000       1.252
  +++ Changes.pod       31 Oct 2004 14:17:25 -0000      1.253
  @@ -1,13 +1,11 @@
   =pod
   
  -=head1 2.0

  -

  -   - Flush output to client, before cleanup runs.

  +=head1 2.0
  +
  +   - Flush output to client and send final chuck, before cleanup runs.
      - Fix compiler error when compiling with Perl 5.005.
  -

  -

  -

  -=head1 2.0rc1  24. August 2004

  +
  +=head1 2.0rc1  24. August 2004
   
      - Addeded configuration directive Embperl_Object_Reqpath, which allows to
        search serveral directories for the file of the initial request.
  
  
  
  1.47      +1 -1      embperl/ep.h
  
  Index: ep.h
  ===================================================================
  RCS file: /home/cvs/embperl/ep.h,v
  retrieving revision 1.46
  retrieving revision 1.47
  diff -u -r1.46 -r1.47
  --- ep.h      4 Oct 2004 05:31:02 -0000       1.46
  +++ ep.h      31 Oct 2004 14:17:25 -0000      1.47
  @@ -330,7 +330,7 @@
   int owrite (/*i/o*/ register req * r,
                        /*in*/ const void * ptr, 
                           /*in*/ size_t size) ;
  -void oflush (/*i/o*/ register req * r) ;

  +void oflush (/*i/o*/ register req * r) ;
   void oputc (/*i/o*/ register req * r,
                        /*in*/ char c) ;
   int oputs (/*i/o*/ register req * r,
  
  
  
  1.29      +39 -39    embperl/epio.c
  
  Index: epio.c
  ===================================================================
  RCS file: /home/cvs/embperl/epio.c,v
  retrieving revision 1.28
  retrieving revision 1.29
  diff -u -r1.28 -r1.29
  --- epio.c    4 Oct 2004 05:31:02 -0000       1.28
  +++ epio.c    31 Oct 2004 14:17:25 -0000      1.29
  @@ -926,48 +926,48 @@
        return size ;
        }
   
  -#if defined (APACHE)

  -    if (r -> pApacheReq && r -> Component.pOutput -> ofd == NULL)

  -        {

  -        if (n > 0)

  -            {

  -            n = ap_rwrite (ptr, n, r -> pApacheReq) ;

  -            if (r -> Component.Config.bDebug & dbgFlushOutput)

  -                ap_rflush (r -> pApacheReq) ;

  -            return n ;

  -            }

  -        else

  -            return 0 ;

  -        }

  -#endif

  -    if (n > 0 && r -> Component.pOutput -> ofd)

  -        {

  -        n = PerlIO_write (r -> Component.pOutput -> ofd, (void *)ptr, size) ;

  -

  -        if (r -> Component.Config.bDebug & dbgFlushOutput)

  -            PerlIO_flush (r -> Component.pOutput -> ofd) ;

  -        }

  -

  -    return n ;

  -    }

  -

  -
  -/* ---------------------------------------------------------------------------- */

  -/*                                                                              */

  -/* flush output                                                                 */

  -/*                                                                              */

  -/* ---------------------------------------------------------------------------- */

  -

  -void oflush (/*i/o*/ register req * r)

  -

  -    {

  -    epTHX_

  -

  +#if defined (APACHE)
  +    if (r -> pApacheReq && r -> Component.pOutput -> ofd == NULL)
  +        {
  +        if (n > 0)
  +            {
  +            n = ap_rwrite (ptr, n, r -> pApacheReq) ;
  +            if (r -> Component.Config.bDebug & dbgFlushOutput)
  +                ap_rflush (r -> pApacheReq) ;
  +            return n ;
  +            }
  +        else
  +            return 0 ;
  +        }
  +#endif
  +    if (n > 0 && r -> Component.pOutput -> ofd)
  +        {
  +        n = PerlIO_write (r -> Component.pOutput -> ofd, (void *)ptr, size) ;
  +
  +        if (r -> Component.Config.bDebug & dbgFlushOutput)
  +            PerlIO_flush (r -> Component.pOutput -> ofd) ;
  +        }
  +
  +    return n ;
  +    }
  +
  +
  +/* ---------------------------------------------------------------------------- */
  +/*                                                                              */
  +/* flush output                                                                 */
  +/*                                                                              */
  +/* ---------------------------------------------------------------------------- */
  +
  +void oflush (/*i/o*/ register req * r)
  +
  +    {
  +    epTHX_
  +
   #if defined (APACHE)
       if (r -> pApacheReq && r -> Component.pOutput -> ofd == NULL)
           {
           ap_rflush (r -> pApacheReq) ;
  -        return ;

  +        return ;
           }
   #endif
       if (r -> Component.pOutput -> ofd)
  
  
  
  1.134     +8 -3      embperl/epmain.c
  
  Index: epmain.c
  ===================================================================
  RCS file: /home/cvs/embperl/epmain.c,v
  retrieving revision 1.133
  retrieving revision 1.134
  diff -u -r1.133 -r1.134
  --- epmain.c  4 Oct 2004 05:31:02 -0000       1.133
  +++ epmain.c  31 Oct 2004 14:17:26 -0000      1.134
  @@ -1153,8 +1153,13 @@
       if (r -> Component.Param.pOutput)
           return OutputToMem (r) ;
       
  -    rc = OutputToFile (r) ;

  -    oflush (r) ;

  +    rc = OutputToFile (r) ;
  +#ifdef APACHE
  +    if (r -> pApacheReq)
  +        ap_finalize_request_protocol (r -> pApacheReq) ;
  +#endif
  +    oflush (r) ;
  +    
       return rc ;
       }
   
  
  
  
  1.3       +35 -26    embperl/eg/web/indexD.htm
  
  Index: indexD.htm
  ===================================================================
  RCS file: /home/cvs/embperl/eg/web/indexD.htm,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- indexD.htm        22 Oct 2002 05:39:50 -0000      1.2
  +++ indexD.htm        31 Oct 2004 14:17:27 -0000      1.3
  @@ -1,42 +1,51 @@
  -<p><b>Embperl</b> ist ein System zum Erstellen dynamischer Websites mit 
<b>Perl</b>.</p>
  +<p><b>Embperl</b> ist ein Werkzeug zum Erstellen dynamischer Websites mit 
<b>Perl</b>.</p>
   
  -<p>F�r den Anf�nger ist es ein einfacher Weg um dynamische Seiten 
  +<p>Dem Anf�nger erlaubt es auf einfache Art und Weise, dynamische Seiten 
   durch Einbetten von Perlcode in HTML zu erstellen.
  -Es stellt verschiedenste Features f�r das Webumfeld zur Verf�gung, wei z.B.
  -dynamischen Tabellen, Formularfeldverarbeitung, HTML/URL-Kodierung, Session 
Handling, 
  +Es stellt vielf&auml;ltige Features f�r das Webumfeld zur Verf�gung wie z.B.
  +dynamische Tabellen, Formularfeldverarbeitung, HTML/URL-Kodierung, Session Handling,
   Caching und mehr.</p>
   
  -<p>Wenn die Anforderungen steigen erm�glicht es die Website objektorientiert,
  -aus kleinen wiederverwendbaren Komponenten, aufzubauen. Wenn Sie Code und 
  -Layout nicht mixen wollen, unterst�tzt Sie Embperl, indem es erlaubt beides
  -in verschiedene Objekte zu trennen (um z.B. MVC Applikationen zu bauen).
  -Selbstverst�ndlich kann Embperl nicht nur HTML verarbeiten, sondern ist in der Lage 
  -Komponenten in verschiedenen Quellenformaten (z.B. HTML, WML, XML, POD, ...)
  -zu bearbeiten und diese, soweit n�tig, in andere Ausgabeformate (z.B. via XSLT)
  -zu transformieren. Dies wird dadurch erreicht, das die Ausgabeerzeugung in
  +<p>Bei steigenden Anforderungen kann man Websites
  +  objektorientiert, aus kleinen, wiederverwendbaren Komponenten, aufzubauen. Um
  +  Code und Layout sauber zu trennen bietet <b>Embperl</b> die M&ouml;glichkeit, 
beides
  +in verschiedene Objekte  aufzuteilen (um z.B. MVC Applikationen zu konstruieren).
  +Selbstverst�ndlich kann <b>Embperl</b> nicht nur HTML verarbeiten sondern ist
  +auch in der Lage, Komponenten in verschiedenen Quellenformaten (z.B. HTML, WML,
  +XML,
  +POD
  +...)
  +zu bearbeiten und diese bei Bedarf in andere Ausgabeformate (z.B.
  +via
  +XSLT) zu transformieren. Dies wird dadurch erreicht, dass die Ausgabeerzeugung
  +in
   kleine Schritte zerlegt wird, wovon jeder von einem austauschbaren Provider
   bearbeitet wird.</p>
   
  -<p>F�r fortgeschrittenen Anwender bietet Embperl weitere M�glichkeiten, wie
  -das Erstellen von eigenen Grammatiken (z.b. Tag-Bibiliotheken) oder das
  -schreiben von benutzerspezifischen Providern.</p>
  +<p>F�r fortgeschrittene Anwender bietet <b>Embperl</b> weitergehende M�glichkeiten
  +  wie
  +das Erstellen von eigenen Grammatiken (z.B. Tag-Bibliotheken) oder das
  +Schreiben von benutzerspezifischen Providern.</p>
   
  -<p>Embperl l�uft auf dem <b>Webserver</b> ab und ist dadurch v�llig 
browserunabh�ngig.
  -Es kann dabei unter <a href="http://perl.apache.org/";>mod_perl</a>, 
  +<p><b>Embperl</b> l�uft auf dem <b>Webserver</b> ab und ist dadurch v�llig 
browserunabh�ngig.
  +Es kann dabei unter <a href="http://perl.apache.org/"; target="_blank">mod_perl</a>, 
   als CGI Skript oder Offline ausgef�hrt werden.</p>
   
  -<p>Die <a href="pod/list/Features.htm">Liste der Features</a> 
  -und die <a href="pod/intro/">Einf�hrungsartikel</a> zur verschieden Aspekten und 
Bereichen
  -von Embperl geben eine weiteren �berblick �ber die M�glichkeiten.</p>
  +<p>Die <a href="http://www.ecos.de/embperl/pod/list/Features.htm";>Liste der 
Features</a> 
  +und die <a href="http://www.ecos.de/embperl/pod/intro/";>Einf�hrungsartikel</a> zur 
verschiedenen Aspekten
  +und Bereichen
  +von Embperl geben einen weiteren �berblick �ber die F&uuml;lle an M�glichkeiten.</p>
   
   
  -<p>Embperl wird durch die <a href="http://www.ecos.de/";>ecos gmbh</a> entwickelt, 
gepflegt und 
  -<a href="pod/doc/doc13/HTML/Embperl.-page-16-.htm#sect_80">supported</a>.
  -Ideen, Anregungen, anderes Feedback und Patches sind jederzeit willkommen und
  -sollten an die <a 
href="pod/doc/doc13/HTML/Embperl.-page-16-.htm">Embperl-Mailingliste</a>
  -geschickt werden.</p>
  +<p><b>Embperl</b> wird durch die <a href="http://www.ecos.de/"; target="_blank">ecos
  +    gmbh</a> (www.ecos.de) entwickelt, gepflegt und 
  +<a 
href="http://www.ecos.de/embperl/pod/doc/doc13/HTML/Embperl.-page-16-.htm#sect_80";>supported</a>.
  +Ideen, Anregungen, weiteres Feedback und Patches sind jederzeit willkommen und
  +sollten an die <a 
href="http://www.ecos.de/embperl/pod/doc/doc13/HTML/Embperl.-page-16-.htm";>Embperl-Mailingliste</a>
  +gesendet werden.</p>
   
  -<p>Embperl darf sowohl unter <b>GPL</b>, wie auch unter der <b>Artistic License</b> 
  +<p><b>Embperl</b> darf sowohl unter <b>GPL</b>, wie auch unter der <b>Artistic
  +    Licence</b> 
   weiterverbreitet werden. Es gelten die gleichen Lizenzbestimmungen
   wie f�r Perl selbst (siehe Perl README Datei).</p>
   
  
  
  
  1.20      +3 -3      embperl/test/cmp/input.htm
  
  Index: input.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/input.htm,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- input.htm 4 Oct 2004 05:37:16 -0000       1.19
  +++ input.htm 31 Oct 2004 14:17:27 -0000      1.20
  @@ -699,9 +699,9 @@
                </tr>
        </table>
   
  -        <select name="empty"></select>

  -

  -

  +        <select name="empty"></select>
  +
  +
   </form>
   
   </body>
  
  
  
  1.17      +6 -6      embperl/test/html/input.htm
  
  Index: input.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/html/input.htm,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- input.htm 4 Oct 2004 05:37:16 -0000       1.16
  +++ input.htm 31 Oct 2004 14:17:27 -0000      1.17
  @@ -393,12 +393,12 @@
                </tr>
        </table>
   
  -        [- @empty = () -]

  -        <select name="empty">

  -            <option value="[+ $empty[$row] +]">[+ $empty[$row] +]</option>

  -        </select>

  -

  -

  +        [- @empty = () -]
  +        <select name="empty">
  +            <option value="[+ $empty[$row] +]">[+ $empty[$row] +]</option>
  +        </select>
  +
  +
   </form>
   
   </body>
  
  
  

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

Reply via email to