You are viewing a plain text version of this content. The canonical link for it is here.
Posted to embperl-cvs@perl.apache.org by ri...@apache.org on 2003/06/08 15:14:28 UTC

cvs commit: embperl/test/cmp hidden.htm input.htm

richter     2003/06/08 06:14:28

  Modified:    .        Changes.pod MANIFEST epinit.c epmain.c eppriv.h
                        mod_embperl.c test.pl
               test/cmp hidden.htm input.htm
  Log:
  fix memory allocation problem when running under staticly link mod_perl
  
  Revision  Changes    Path
  1.209     +5 -2      embperl/Changes.pod
  
  Index: Changes.pod
  ===================================================================
  RCS file: /home/cvs/embperl/Changes.pod,v
  retrieving revision 1.208
  retrieving revision 1.209
  diff -u -r1.208 -r1.209
  --- Changes.pod	11 Apr 2003 05:58:35 -0000	1.208
  +++ Changes.pod	8 Jun 2003 13:14:26 -0000	1.209
  @@ -1,6 +1,6 @@
   =pod
   
  -=head1 2.0b9
  +=head1 2.0b9 8. Juni 2003
   
   This version is currently under developement. You can get it from the L<CVS|CVS.pod>.
   
  @@ -77,7 +77,10 @@
      - %idat is now also populated for checkboxes, radiobutton where no matching
        value in %fdat is found. This avoid duplicate submission of formdata
        when using [$ hidden $].
  -
  +   - fixed memory allocation problem that had occured when mod_perl was
  +     staticly linked into Apache.
  +   - removed old Embperl 1 test files from distribution
  + 
   =head1 2.0b8  (BETA)  25. Juni 2002
   
      - exit can now exit the whole request. When called without argument
  
  
  
  1.80      +0 -23     embperl/MANIFEST
  
  Index: MANIFEST
  ===================================================================
  RCS file: /home/cvs/embperl/MANIFEST,v
  retrieving revision 1.79
  retrieving revision 1.80
  diff -u -r1.79 -r1.80
  --- MANIFEST	27 Feb 2003 07:05:31 -0000	1.79
  +++ MANIFEST	8 Jun 2003 13:14:26 -0000	1.80
  @@ -345,29 +345,6 @@
   test/cmp/varerr.htm
   test/cmp/varerr.htm56
   test/cmp/xhtml.htm
  -test/cmp2/epobless2.htm
  -test/cmp2/epobless3.htm
  -test/cmp2/epodiv.htm
  -test/cmp2/epoincdiv.htm
  -test/cmp2/errdoc2.htm
  -test/cmp2/error.htm
  -test/cmp2/errormismatch.htm
  -test/cmp2/errormismatchcmd.htm
  -test/cmp2/hidden.htm
  -test/cmp2/if.htm
  -test/cmp2/importmodule.htm
  -test/cmp2/importsub.htm
  -test/cmp2/importsub2.htm
  -test/cmp2/input.htm
  -test/cmp2/lists.htm
  -test/cmp2/loop.htm
  -test/cmp2/mix.htm
  -test/cmp2/rawinput.htm
  -test/cmp2/table.htm
  -test/cmp2/tagscan.htm
  -test/cmp2/unclosed.htm
  -test/cmp2/varerr.htm
  -test/cmp2/varerr.htm56
   test/conf/httpd.conf.src
   test/conf/httpd.stop.conf.src
   test/conf/null
  
  
  
  1.9       +35 -4     embperl/epinit.c
  
  Index: epinit.c
  ===================================================================
  RCS file: /home/cvs/embperl/epinit.c,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- epinit.c	30 Mar 2003 18:57:02 -0000	1.8
  +++ epinit.c	8 Jun 2003 13:14:26 -0000	1.9
  @@ -270,8 +270,9 @@
       *ppThread = pThread ;
       return ok ;
       }
  -
  -
  +
  +
  +
   /*---------------------------------------------------------------------------
   * embperl_GetThread
   */
  @@ -306,6 +307,36 @@
       return pThread ;
       }
   
  +/*---------------------------------------------------------------------------
  +* embperl_EndPass1
  +*/
  +/*!
  +*
  +* \_en									   
  +* Call when configuration pass 1 of apache is done.
  +* \endif                                                                       
  +*
  +* \_de									   
  +* Wird aufgerufen wenn Pass 1 des Einlesens der Konfiguration beendet ist.
  +* \endif                                                                       
  +*                                                                          
  +* ------------------------------------------------------------------------ */
  +
  +
  +
  +int    embperl_EndPass1  (void)
  +
  +
  +    {
  +    dTHX ;
  +    tThreadData * pThread = embperl_GetThread  (aTHX) ;
  +
  +    hv_clear (pThread -> pApplications) ;
  +
  +    return ok ;
  +    }
  +
  +
   /*---------------------------------------------------------------------------
   * embperl_CreateSessionObject
   */
  @@ -566,6 +597,7 @@
       if (sAppName)
           pApp = (tApp * )GetHashValuePtr (NULL, pThread -> pApplications, sAppName, NULL) ;
   
  +  
       if (!pApp)
           {
           int  rc ;
  @@ -605,7 +637,6 @@
   
           SetHashValueInt (NULL, pThread -> pApplications, sAppName, (IV)pApp) ;
           
  -
           pApp -> pThread = pThread ;
   
           if (pParam)
  
  
  
  1.124     +2 -2      embperl/epmain.c
  
  Index: epmain.c
  ===================================================================
  RCS file: /home/cvs/embperl/epmain.c,v
  retrieving revision 1.123
  retrieving revision 1.124
  diff -u -r1.123 -r1.124
  --- epmain.c	30 Mar 2003 18:57:02 -0000	1.123
  +++ epmain.c	8 Jun 2003 13:14:26 -0000	1.124
  @@ -462,7 +462,7 @@
       STRLEN  ldummy ;
       tAppConfig * pCfg = &r -> pApp -> Config ;
       epTHX ;
  -
  +
       if (r -> nSessionMgnt)
   	{			
   	dSP;                            /* initialize stack pointer      */
  
  
  
  1.6       +3 -1      embperl/eppriv.h
  
  Index: eppriv.h
  ===================================================================
  RCS file: /home/cvs/embperl/eppriv.h,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- eppriv.h	27 Feb 2003 07:48:08 -0000	1.5
  +++ eppriv.h	8 Jun 2003 13:14:27 -0000	1.6
  @@ -259,3 +259,5 @@
   void Embperl__Component__Config_destroy(pTHX_ tComponentConfig * p) ;
   void Embperl__Component__Param_destroy(pTHX_ tComponentParam * p) ;
   void Embperl__Component_destroy(pTHX_ tComponent *p) ;
  +
  +int    embperl_EndPass1  (void) ;
  
  
  
  1.11      +51 -38    embperl/mod_embperl.c
  
  Index: mod_embperl.c
  ===================================================================
  RCS file: /home/cvs/embperl/mod_embperl.c,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- mod_embperl.c	30 Mar 2003 18:57:03 -0000	1.10
  +++ mod_embperl.c	8 Jun 2003 13:14:27 -0000	1.11
  @@ -220,14 +220,14 @@
      
   #ifdef APACHE2
       if (bApDebug)
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Perl part initialization start [%d/%d]\n", getpid(), gettid()) ;
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Perl part initialization start [%d/%d]\n", getpid(), gettid()) ;
       return ;
       /*
       void * p = dlsym (0, "apr_global_hook_pool") ;
   
       if (!p)
           {
  -        ap_log_error (APLOG_MARK, APLOG_ERR, APLOG_STATUSCODE NULL, "Embperl: Cannot get address of apr_global_hook_pool [%d/%d]\n", getpid(), gettid()) ;
  +        ap_log_error (APLOG_MARK, APLOG_ERR, APLOG_STATUSCODE NULL, "EmbperlDebug: Cannot get address of apr_global_hook_pool [%d/%d]\n", getpid(), gettid()) ;
           return ;
           }
   
  @@ -239,13 +239,13 @@
       if (!ap_find_linked_module("mod_embperl.c"))
           {
           if (bApDebug)
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: About to add mod_embperl.c as dynamic module [%d/%d]\n", getpid(), gettid()) ;
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: About to add mod_embperl.c as dynamic module [%d/%d]\n", getpid(), gettid()) ;
           
           ap_add_module (&embperl_module) ;
           }
       else
           if (bApDebug)
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: mod_embperl.c already added as dynamic module [%d/%d]\n", getpid(), gettid()) ;
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: mod_embperl.c already added as dynamic module [%d/%d]\n", getpid(), gettid()) ;
   #endif
       }
   
  @@ -289,7 +289,7 @@
       bApDebug |= ap_exists_config_define("EMBPERL_APDEBUG") ;
       
       if (bApDebug)
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: ApacheInit [%d/%d]\n", getpid(), gettid()) ;
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: ApacheInit [%d/%d]\n", getpid(), gettid()) ;
   
   #ifdef APACHE2
       ap_add_version_component (p, "Embperl/"VERSION) ;
  @@ -340,19 +340,22 @@
           if (m -> dynamic_load_handle)
               {
               if (bApDebug)
  -                ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: ApacheInitCleanup: mod_perl.c dynamicly loaded -> remove mod_embperl.c [%d/%d]\n", getpid(), gettid()) ;
  +                ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: ApacheInitCleanup: mod_perl.c dynamicly loaded -> remove mod_embperl.c [%d/%d]\n", getpid(), gettid()) ;
  +            embperl_EndPass1 () ;
               ap_remove_module (&embperl_module) ; 
               }
           else
               {
               if (bApDebug)
  -                ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: ApacheInitCleanup: mod_perl.c not dynamic loaded [%d/%d]\n", getpid(), gettid()) ;
  +                ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: ApacheInitCleanup: mod_perl.c not dynamic loaded [%d/%d]\n", getpid(), gettid()) ;
  +            embperl_EndPass1 () ;
               }
           }
       else
           {
           if (bApDebug)
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: ApacheInitCleanup: mod_perl.c not found [%d/%d]\n", getpid(), gettid()) ;
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: ApacheInitCleanup: mod_perl.c not found [%d/%d]\n", getpid(), gettid()) ;
  +        embperl_DEndPass1 () ;
           }
   
   #ifdef APACHE2
  @@ -380,20 +383,20 @@
               {
               *ppConfig = (tApacheDirConfig *) ap_get_module_config(r->per_dir_config, &embperl_module);
               if (bApDebug)
  -                ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: GetApacheConfig for dir\n") ;
  +                ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: GetApacheConfig for dir\n") ;
               }
           else if(s && s->lookup_defaults) /*s->module_config)*/
               {
               *ppConfig = (tApacheDirConfig *) ap_get_module_config(s->lookup_defaults /*s->module_config*/, &embperl_module);
               if (bApDebug)
  -                ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: GetApacheConfig for server\n") ;
  +                ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: GetApacheConfig for server\n") ;
               }
           else if (bApDebug)
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: GetApacheConfig -> no config available for %s\n",r && r->per_dir_config?"dir":"server" ) ;
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: GetApacheConfig -> no config available for %s\n",r && r->per_dir_config?"dir":"server" ) ;
           }
       else
           if (bApDebug)
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: GetApacheConfig -> no config available for %s; mod_embperl not loaded?\n",r && r->per_dir_config?"dir":"server" ) ;
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: GetApacheConfig -> no config available for %s; mod_embperl not loaded?\n",r && r->per_dir_config?"dir":"server" ) ;
   
       return ok ;
       }
  @@ -404,15 +407,20 @@
   
   static void *embperl_create_dir_config(apr_pool_t * p, char *d)
       {
  +    char buf [20] ;
       tApacheDirConfig *cfg = (tApacheDirConfig *) ap_pcalloc(p, sizeof(tApacheDirConfig));
   
       embperl_DefaultReqConfig (&cfg -> ReqConfig) ;
       embperl_DefaultAppConfig (&cfg -> AppConfig) ;
       embperl_DefaultComponentConfig (&cfg -> ComponentConfig) ;
       cfg -> bUseEnv = -1 ; 
  +    sprintf(buf, "%x", cfg) ;
  +    /*if (d)
  +        cfg -> AppConfig.sAppName = ap_pstrcat (p, d?d:"", ":", buf, NULL) ;
  +    */
   
       if (bApDebug)
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: create_dir_config [%d/%d]\n", getpid(), gettid()) ;
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: create_dir_config %s[%d/%d]\n", cfg -> AppConfig.sAppName?cfg -> AppConfig.sAppName:"", getpid(), gettid()) ;
   
       return cfg;
       }
  @@ -434,7 +442,7 @@
       cfg -> bUseEnv = -1 ; 
   
       if (bApDebug)
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: create_server_config [%d/%d]\n", getpid(), gettid()) ;
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: create_server_config [%d/%d]\n", getpid(), gettid()) ;
   
   
       return cfg;
  @@ -476,12 +484,12 @@
           mrg -> set_##STRUCT##NAME = 1 ; \
           mrg -> STRUCT.NAME = add -> STRUCT.NAME ; \
           if (bApDebug) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Merge "#CFGNAME" (type="#TYPE") => %d\n", mrg -> STRUCT.NAME) ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Merge "#CFGNAME" (type="#TYPE") => %d\n", mrg -> STRUCT.NAME) ; \
           } \
       else \
           {  \
           if (bApDebug && mrg -> set_##STRUCT##NAME) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Merge "#CFGNAME" (type="#TYPE") stays %d\n", mrg -> STRUCT.NAME) ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Merge "#CFGNAME" (type="#TYPE") stays %d\n", mrg -> STRUCT.NAME) ; \
           } 
   
   #define EPCFG_STR(STRUCT,TYPE,NAME,CFGNAME)  \
  @@ -490,12 +498,12 @@
           mrg -> set_##STRUCT##NAME = 1 ; \
           mrg -> STRUCT.NAME = add -> STRUCT.NAME ; \
           if (bApDebug) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Merge "#CFGNAME" (type="#TYPE") => %s\n", mrg -> STRUCT.NAME?mrg -> STRUCT.NAME:"<null>") ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Merge "#CFGNAME" (type="#TYPE") => %s\n", mrg -> STRUCT.NAME?mrg -> STRUCT.NAME:"<null>") ; \
           } \
       else \
           {  \
           if (bApDebug && mrg -> set_##STRUCT##NAME) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Merge "#CFGNAME" (type="#TYPE") stays %s\n", mrg -> STRUCT.NAME?mrg -> STRUCT.NAME:"<null>") ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Merge "#CFGNAME" (type="#TYPE") stays %s\n", mrg -> STRUCT.NAME?mrg -> STRUCT.NAME:"<null>") ; \
           } 
   
   #undef EPCFG_SAVE
  @@ -506,12 +514,12 @@
           mrg -> STRUCT.NAME = add -> STRUCT.NAME ; \
           mrg -> save_##STRUCT##NAME = add -> save_##STRUCT##NAME ; \
           if (bApDebug) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Merge "#CFGNAME" (type="#TYPE") => %s\n", mrg -> save_##STRUCT##NAME?mrg -> save_##STRUCT##NAME:"<null>") ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Merge "#CFGNAME" (type="#TYPE") => %s\n", mrg -> save_##STRUCT##NAME?mrg -> save_##STRUCT##NAME:"<null>") ; \
           } \
       else \
           {  \
           if (bApDebug && mrg -> set_##STRUCT##NAME) \
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Merge "#CFGNAME" (type="#TYPE") stays %s\n", mrg -> save_##STRUCT##NAME?mrg -> save_##STRUCT##NAME:"<null>") ; \
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Merge "#CFGNAME" (type="#TYPE") stays %s\n", mrg -> save_##STRUCT##NAME?mrg -> save_##STRUCT##NAME:"<null>") ; \
           } 
   
   
  @@ -532,8 +540,10 @@
           memcpy (mrg, base, sizeof (*mrg)) ;
   
           if (bApDebug)
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: merge_dir/server_config\n") ;
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: merge_dir/server_config %s + %s\n", mrg -> AppConfig.sAppName, add -> AppConfig.sAppName) ;
   
  +        if (add -> AppConfig.sAppName)
  +            mrg -> AppConfig.sAppName = add -> AppConfig.sAppName ;
   
   #include "epcfg.h" 
   
  @@ -553,7 +563,7 @@
       { 
       ((tApacheDirConfig *)pDirCfg) -> bUseEnv = arg ; 
       if (bApDebug)
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set UseEnv = %d\n", arg) ;
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Set UseEnv = %d\n", arg) ;
   
       return NULL; 
       } 
  @@ -572,7 +582,7 @@
       ((tApacheDirConfig *)pDirCfg) -> STRUCT.NAME = (TYPE)strtol(arg, NULL, 0) ; \
       ((tApacheDirConfig *)pDirCfg) -> set_##STRUCT##NAME = 1 ; \
       if (bApDebug) \
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set "#CFGNAME" (type="#TYPE";INT) = %s\n", arg) ; \
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Set "#CFGNAME" (type="#TYPE";INT) = %s\n", arg) ; \
       return NULL; \
       } 
   
  @@ -591,7 +601,7 @@
           } \
       ((tApacheDirConfig *)pDirCfg) -> set_##STRUCT##NAME = 1 ; \
       if (bApDebug) \
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set "#CFGNAME" (type="#TYPE";INT) = %s\n", arg) ; \
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Set "#CFGNAME" (type="#TYPE";INT) = %s\n", arg) ; \
       return NULL; \
       } 
   
  @@ -602,7 +612,7 @@
       ((tApacheDirConfig *)pDirCfg) -> STRUCT.NAME = (TYPE)(arg?1:0) ; \
       ((tApacheDirConfig *)pDirCfg) -> set_##STRUCT##NAME = 1 ; \
       if (bApDebug) \
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set "#CFGNAME" (type="#TYPE";BOOL) = %s\n", arg) ; \
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Set "#CFGNAME" (type="#TYPE";BOOL) = %s\n", arg) ; \
       return NULL; \
       } 
   
  @@ -615,7 +625,7 @@
       ((tApacheDirConfig *)pDirCfg) -> STRUCT.NAME = ap_pstrdup(p, arg) ; \
       ((tApacheDirConfig *)pDirCfg) -> set_##STRUCT##NAME = 1 ; \
       if (bApDebug) \
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set "#CFGNAME" (type="#TYPE";STR) = %s\n", arg) ; \
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Set "#CFGNAME" (type="#TYPE";STR) = %s\n", arg) ; \
       return NULL; \
       } 
   
  @@ -631,7 +641,7 @@
           ((tApacheDirConfig *)pDirCfg) -> STRUCT.NAME = ap_pstrdup(p, buf) ; \
       ((tApacheDirConfig *)pDirCfg) -> set_##STRUCT##NAME = 1 ; \
       if (bApDebug) \
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set "#CFGNAME" (type="#TYPE";STR) = %s\n", arg) ; \
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Set "#CFGNAME" (type="#TYPE";STR) = %s\n", arg) ; \
       return NULL; \
       } 
   
  @@ -642,7 +652,7 @@
       ((tApacheDirConfig *)pDirCfg) -> STRUCT.NAME = (TYPE)arg[0] ; \
       ((tApacheDirConfig *)pDirCfg) -> set_##STRUCT##NAME = 1 ; \
       if (bApDebug) \
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set "#CFGNAME" (type="#TYPE";CHAR) = %s\n", arg) ; \
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Set "#CFGNAME" (type="#TYPE";CHAR) = %s\n", arg) ; \
       return NULL; \
       } 
   
  @@ -664,7 +674,7 @@
       ((tApacheDirConfig *)pDirCfg) -> save_##STRUCT##NAME = ap_pstrdup(cmd -> pool, arg) ; \
       ((tApacheDirConfig *)pDirCfg) -> set_##STRUCT##NAME = 1 ; \
       if (bApDebug) \
  -        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Set "#CFGNAME" (type="#TYPE") = %s (save for later conversion to Perl data)\n", arg) ; \
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Set "#CFGNAME" (type="#TYPE") = %s (save for later conversion to Perl data)\n", arg) ; \
       return NULL ; \
       } 
   
  @@ -687,7 +697,10 @@
   
   
       {
  -    return pDirCfg?pDirCfg -> AppConfig.sAppName:"Embperl" ;
  +    char *n = pDirCfg?pDirCfg -> AppConfig.sAppName:"Embperl" ;
  +    if (bApDebug)
  +        ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: get_appname %s[%d/%d]\n", n?n:"", getpid(), gettid()) ;
  +    return n ;
       }
   
   
  @@ -708,11 +721,11 @@
   
   #define EPCFG(STRUCT,TYPE,NAME,CFGNAME)  \
           if (bApDebug && pDirCfg -> set_##STRUCT##NAME) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Get "#CFGNAME" (type="#TYPE") %d (0x%x)\n", pDirCfg -> STRUCT.NAME, pDirCfg -> STRUCT.NAME) ; 
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Get "#CFGNAME" (type="#TYPE") %d (0x%x)\n", pDirCfg -> STRUCT.NAME, pDirCfg -> STRUCT.NAME) ; 
   
   #define EPCFG_STR(STRUCT,TYPE,NAME,CFGNAME)  \
           if (bApDebug && pDirCfg -> set_##STRUCT##NAME) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Get "#CFGNAME" (type="#TYPE") %s\n", pDirCfg -> STRUCT.NAME?pDirCfg -> STRUCT.NAME:"<null>") ; 
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Get "#CFGNAME" (type="#TYPE") %s\n", pDirCfg -> STRUCT.NAME?pDirCfg -> STRUCT.NAME:"<null>") ; 
   
   
   
  @@ -721,7 +734,7 @@
       if (pDirCfg -> save_##STRUCT##NAME && !pDirCfg -> STRUCT.NAME) \
           { \
           if (bApDebug) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Get: about to convert "#CFGNAME" (type="#TYPE";SV) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Get: about to convert "#CFGNAME" (type="#TYPE";SV) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
   \
           pDirCfg -> STRUCT.NAME = newSVpv((char *)pDirCfg -> save_##STRUCT##NAME, 0) ; \
           }
  @@ -732,7 +745,7 @@
           { \
           int rc ;\
           if (bApDebug) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Get: about to convert "#CFGNAME" (type="#TYPE";CV) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Get: about to convert "#CFGNAME" (type="#TYPE";CV) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
   \
           if ((rc = EvalConfig (pApp, sv_2mortal(newSVpv(pDirCfg -> save_##STRUCT##NAME, 0)), 0, NULL, "Configuration: EMBPERL_"#CFGNAME, &pDirCfg -> STRUCT.NAME)) != ok) \
               LogError (pReq, rc) ; \
  @@ -745,7 +758,7 @@
       if (pDirCfg -> save_##STRUCT##NAME && !pDirCfg -> STRUCT.NAME) \
           { \
           if (bApDebug) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Get: about to convert "#CFGNAME" (type="#TYPE";AV) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Get: about to convert "#CFGNAME" (type="#TYPE";AV) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
   \
           pDirCfg -> STRUCT.NAME = embperl_String2AV(pApp, pDirCfg -> save_##STRUCT##NAME, SEPARATOR) ;\
           tainted = 0 ; \
  @@ -757,7 +770,7 @@
       if (pDirCfg -> save_##STRUCT##NAME && !pDirCfg -> STRUCT.NAME) \
           { \
           if (bApDebug) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Get: about to convert "#CFGNAME" (type="#TYPE";HV) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Get: about to convert "#CFGNAME" (type="#TYPE";HV) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
   \
           pDirCfg -> STRUCT.NAME = embperl_String2HV(pApp, pDirCfg -> save_##STRUCT##NAME, ' ', NULL) ;\
           tainted = 0 ; \
  @@ -770,7 +783,7 @@
           { \
           int rc ; \
           if (bApDebug) \
  -            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "Embperl: Get: about to convert "#CFGNAME" (type="#TYPE";REGEX) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
  +            ap_log_error (APLOG_MARK, APLOG_WARNING | APLOG_NOERRNO, APLOG_STATUSCODE NULL, "EmbperlDebug: Get: about to convert "#CFGNAME" (type="#TYPE";REGEX) to perl data: %s\n", pDirCfg -> save_##STRUCT##NAME) ; \
   \
           if ((rc = EvalRegEx (pApp, pDirCfg -> save_##STRUCT##NAME, "Configuration: EMBPERL_"#CFGNAME, &pDirCfg -> STRUCT.NAME)) != ok) \
               return rc ; \
  
  
  
  1.128     +12 -7     embperl/test.pl
  
  Index: test.pl
  ===================================================================
  RCS file: /home/cvs/embperl/test.pl,v
  retrieving revision 1.127
  retrieving revision 1.128
  diff -u -r1.127 -r1.128
  --- test.pl	3 Mar 2003 18:38:46 -0000	1.127
  +++ test.pl	8 Jun 2003 13:14:27 -0000	1.128
  @@ -1005,7 +1005,8 @@
               $opt_offline $opt_ep1 $opt_cgi $opt_modperl $opt_execute $opt_nokill $opt_loop
               $opt_multchild $opt_memcheck $opt_exitonmem $opt_exitonsv $opt_config $opt_nostart $opt_uniquefn
               $opt_quite $opt_qq $opt_ignoreerror $opt_tests $opt_blib $opt_help $opt_dbgbreak $opt_finderr
  -            $opt_ddd $opt_gdb $opt_ab $opt_abpre $opt_abverbose $opt_start $opt_startinter $opt_kill $opt_showcookie $opt_cache) ;
  +            $opt_ddd $opt_gdb $opt_ab $opt_abpre $opt_abverbose $opt_start $opt_startinter $opt_kill $opt_showcookie $opt_cache
  +            $opt_cfgdebug) ;
   
       {
       local $^W = 0 ;
  @@ -1101,7 +1102,8 @@
   $ret = GetOptions ("offline|o", "ep1|1", "cgi|c", "cache|a", "modperl|httpd|h", "execute|e", "nokill|r", "loop|l:i",
               "multchild|m", "memcheck|v", "exitonmem|g", "exitonsv", "config|f=s", "nostart|x", "uniquefn|u",
               "quite|q",  "qq", "ignoreerror|i", "tests|t", "blib|b", "help", "dbgbreak", "finderr",
  -	    "ddd", "gdb", "ab:s", "abverbose", "abpre", "start", "startinter", "kill", "showcookie") ;
  +	    "ddd", "gdb", "ab:s", "abverbose", "abpre", "start", "startinter", "kill", "showcookie",
  +            "cfgdebug") ;
   
   $opt_help = 1 if ($ret == 0) ;
   
  @@ -1173,7 +1175,8 @@
       print "--start  start apache only\n" ;
       print "--startinter  start apache only for interactive session\n" ;
       print "--kill   kill apache only\n" ;
  -    print "--showcookie  shows sent and received cookies\n" ;
  +    print "--showcookie  shows sent and received cookies\n" ;
  +    print "--cfgdebug    shows processing of configuration directives\n" ;
       print "\n\n" ;
       print "path\t$EPPATH\n" ;
       print "httpd\t" . ($EPHTTPD || '') . "\n" ;
  @@ -1294,6 +1297,7 @@
       my ($f1, $f2, $errin) = @_ ;
       my $line = 0 ;
       my $err  = 0 ;
  +    local $^W = 0 ;
   
       open F1, $f1 || die "***Cannot open $f1" ; 
       binmode (F1, ":encoding(iso-8859-1)") if ($] >= 5.008000) ;
  @@ -1463,7 +1467,7 @@
       $response = $ua->request($request, undef, undef);
   
       open FH, ">$ofile" ;
  -    binmode (FH, ":encoding(iso-8859-1)") if ($] >= 5.008000) ;
  +    { local $^W = 0 ; binmode (FH, ":encoding(iso-8859-1)") if ($] >= 5.008000) ; }
       print FH $response -> content ;
       close FH ;
   
  @@ -1576,7 +1580,8 @@
   	    !($_ =~ /Warning/) &&
   	    !($_ =~ /mod_ssl\:/) &&
   	    !($_ =~ /SES\:/) &&
  -	    !($_ =~ /gcache started/) &&
  +	    !($_ =~ /gcache started/) &&
  +            !($_ =~ /EmbperlDebug: /) &&
               $_ ne 'Use of uninitialized value.')
   	    {
   	    $cnt-- ;
  @@ -2500,7 +2505,7 @@
   		}			
   	    else
   	        {
  -		system ("$EPHTTPD $XX -f $EPPATH/$httpdconf " . ($opt_startinter?'':'&')) and die "***Cannot start $EPHTTPD" ;
  +		system ("$EPHTTPD " . ($opt_cfgdebug?"-D EMBPERL_APDEBUG ":'') . " $XX -f $EPPATH/$httpdconf " . ($opt_startinter?'':'&')) and die "***Cannot start $EPHTTPD" ;
   		}
   	    }
   
  
  
  
  1.8       +6 -2      embperl/test/cmp/hidden.htm
  
  Index: hidden.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/hidden.htm,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- hidden.htm	15 Nov 2002 06:17:45 -0000	1.7
  +++ hidden.htm	8 Jun 2003 13:14:28 -0000	1.8
  @@ -5,7 +5,7 @@
   </head>
   
   
  -<form action="inhalt.htm" method="POST">
  +<form action="inhalt.htm"  method="POST">
       <p>&nbsp;</p>
   
   	a1<input type="hidden" name="feld1" value="Wert1"><input type="hidden" name="feld2" value="Wert2"><input type="hidden" name="feld3" value="Wert3"><input type="hidden" name="feld4" value="Wert4">
  @@ -27,7 +27,11 @@
   	b6<input type="hidden" name="feld2" value="Rhein&quot;hessen&quot;&amp;Pfalz">
   	
   
  -    <input type="text" name="feld2" value="Wert2">
  +    <select name="feld2"><option value="Wert1">rlp</option></select>
  +
  +	s1<input type="hidden" name="feld3" value="Wert3"><input type="hidden" name="feld4" value="Wert4">
  +
  +    <select name="feld2"><option value="Wert1"><option value="Wert2" selected>rlp</option></select>
       
   	c1<input type="hidden" name="feld3" value="Wert3"><input type="hidden" name="feld4" value="Wert4">
   	c2
  
  
  
  1.18      +66 -2     embperl/test/cmp/input.htm
  
  Index: input.htm
  ===================================================================
  RCS file: /home/cvs/embperl/test/cmp/input.htm,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- input.htm	15 Nov 2002 06:17:45 -0000	1.17
  +++ input.htm	8 Jun 2003 13:14:28 -0000	1.18
  @@ -222,18 +222,42 @@
   	</select>
   
   	
  -	ks = cb1 cb2 cb5 cb6 cb7 cb8 dec escmult feld1 feld2 feld3 feld4 feld5 feld5a feld5b feld6 feld7 feld8 mult neu1 neu2 neu3 undef<p>
  +	ks = Kategorie Region cb1 cb10 cb11 cb2 cb3 cb4 cb5 cb6 cb7 cb8 cb9 dec escmult feld1 feld2 feld3 feld4 feld5 feld5a feld5b feld6 feld7 feld8 foo mult neu1 neu2 neu3 undef<p>
   
   	<table border=9>
   		<tr>
  +			<td>Kategorie</td><td></td>
  +		</tr>
  +	
  +		<tr>
  +			<td>Region</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>cb1</td><td>cbv1</td>
   		</tr>
   	
   		<tr>
  +			<td>cb10</td><td></td>
  +		</tr>
  +	
  +		<tr>
  +			<td>cb11</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>cb2</td><td>cbv2</td>
   		</tr>
   	
   		<tr>
  +			<td>cb3</td><td></td>
  +		</tr>
  +	
  +		<tr>
  +			<td>cb4</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>cb5</td><td>cbv5</td>
   		</tr>
   	
  @@ -250,6 +274,10 @@
   		</tr>
   	
   		<tr>
  +			<td>cb9</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>dec</td><td>a &amp; b</td>
   		</tr>
   	
  @@ -298,6 +326,10 @@
   		</tr>
   	
   		<tr>
  +			<td>foo</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>mult</td><td>Wert6</td>
   		</tr>
   	
  @@ -533,18 +565,42 @@
   		<input type="text" name="feld1" value="">
   		<input type="text" name="feld1" value="">
           </p>
  -	ks = cb1 cb2 cb5 cb6 cb7 cb8 dec escmult feld1 feld2 feld3 feld4 feld5 feld5a feld5b feld6 feld7 feld8 mult neu1 neu2 neu3 ta undef<p>
  +	ks = Kategorie Region cb1 cb10 cb11 cb2 cb3 cb4 cb5 cb6 cb7 cb8 cb9 dec escmult feld1 feld2 feld3 feld4 feld5 feld5a feld5b feld6 feld7 feld8 foo mult neu1 neu2 neu3 ta undef<p>
   
   	<table border=10>
   		<tr>
  +			<td>Kategorie</td><td></td>
  +		</tr>
  +	
  +		<tr>
  +			<td>Region</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>cb1</td><td>cbv1</td>
   		</tr>
   	
   		<tr>
  +			<td>cb10</td><td></td>
  +		</tr>
  +	
  +		<tr>
  +			<td>cb11</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>cb2</td><td>cbv2</td>
   		</tr>
   	
   		<tr>
  +			<td>cb3</td><td></td>
  +		</tr>
  +	
  +		<tr>
  +			<td>cb4</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>cb5</td><td>cbv5</td>
   		</tr>
   	
  @@ -561,6 +617,10 @@
   		</tr>
   	
   		<tr>
  +			<td>cb9</td><td></td>
  +		</tr>
  +	
  +		<tr>
   			<td>dec</td><td>a &amp; b</td>
   		</tr>
   	
  @@ -606,6 +666,10 @@
   	
   		<tr>
   			<td>feld8</td><td>Wert8</td>
  +		</tr>
  +	
  +		<tr>
  +			<td>foo</td><td></td>
   		</tr>
   	
   		<tr>
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: embperl-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: embperl-cvs-help@perl.apache.org