cvs commit: modperl/src/modules/perl perl_config.c

2002-03-24 Thread dougm

dougm   02/03/24 12:45:18

  Modified:.Changes STATUS
   src/modules/perl perl_config.c
  Log:
  Submitted by:   Salvador Ortiz Garcia [EMAIL PROTECTED]
  Reviewed by:  dougm
  fix multiple %LocationMatch in Perl sections bug
  
  Revision  ChangesPath
  1.630 +3 -0  modperl/Changes
  
  Index: Changes
  ===
  RCS file: /home/cvs/modperl/Changes,v
  retrieving revision 1.629
  retrieving revision 1.630
  diff -u -r1.629 -r1.630
  --- Changes   24 Mar 2002 19:06:03 -  1.629
  +++ Changes   24 Mar 2002 20:45:17 -  1.630
  @@ -10,6 +10,9 @@
   
   =item 1.26_01-dev
   
  +fix multiple %LocationMatch in Perl sections bug
  +[Salvador Ortiz Garcia [EMAIL PROTECTED]]
  +
   rip -D_GNU_SOURCE out of Perl 5.7.3+'s ccflags, which modperl doesn't
   need and apache won't compile with [Stas Bekman [EMAIL PROTECTED]]
   
  
  
  
  1.6   +1 -7  modperl/STATUS
  
  Index: STATUS
  ===
  RCS file: /home/cvs/modperl/STATUS,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- STATUS24 Mar 2002 18:22:56 -  1.5
  +++ STATUS24 Mar 2002 20:45:17 -  1.6
  @@ -1,5 +1,5 @@
   mod_perl 1.3 STATUS:
  -   Last modified at [$Date: 2002/03/24 18:22:56 $]
  +   Last modified at [$Date: 2002/03/24 20:45:17 $]
   
   
   Release:
  @@ -20,12 +20,6 @@
   Report: http://marc.theaimsgroup.com/?l=apache-modperlm=97449481013350w=2
Status: 
 doc patch at 
http://marc.theaimsgroup.com/?l=apache-modperlm=97450363501652w=2
  -
  -* %LocationMatch Perl bug
  -Report: http://marc.theaimsgroup.com/?l=apache-modperlm=98260537428737w=2
  - Status:
  -  may be fixed here
  -http://marc.theaimsgroup.com/?l=apache-modperlm=101366182205497w=2
   
   * PVIV issues
   Report: http://marc.theaimsgroup.com/?l=apache-modperlm=99905070209305w=2
  
  
  
  1.112 +6 -3  modperl/src/modules/perl/perl_config.c
  
  Index: perl_config.c
  ===
  RCS file: /home/cvs/modperl/src/modules/perl/perl_config.c,v
  retrieving revision 1.111
  retrieving revision 1.112
  diff -u -r1.111 -r1.112
  --- perl_config.c 11 Jul 2001 03:02:26 -  1.111
  +++ perl_config.c 24 Mar 2002 20:45:17 -  1.112
  @@ -1166,6 +1166,8 @@
   char *tmpkey; 
   I32 tmpklen; 
   SV *tmpval;
  +void *old_info = cmd-info;
  +
   (void)hv_iterinit(hv); 
   while ((tmpval = hv_iternextsv(hv, tmpkey, tmpklen))) { 
char line[MAX_STRING_LEN]; 
  @@ -1195,6 +1197,9 @@
if(errmsg)
log_printf(cmd-server, Perl: %s, errmsg);
   }
  +
  +cmd-info = old_info;
  +
   /* Emulate the handling of end token for the section */ 
   perl_set_config_vectors(cmd, cfg, core_module);
   } 
  @@ -1511,9 +1516,7 @@
   void *dummy = perl_set_config_vectors(cmd, config, core_module);
   void *old_info = cmd-info;
   
  -if (strstr(key, Match)) {
  - cmd-info = (void*)key;
  -}
  +cmd-info = (void *)strstr(key, Match);
   
   if(strnEQ(key, Location, 8))
perl_urlsection(cmd, dummy, hv);
  
  
  



cvs commit: modperl/src/modules/perl perl_config.c

2002-03-24 Thread dougm

dougm   02/03/24 14:51:04

  Modified:.Changes STATUS
   src/modules/perl perl_config.c
  Log:
  Submitted by: Stephen Clouse [EMAIL PROTECTED]
  Reviewed by:  dougm
  do not clear symbol tables within a package in perl_clear_symtab()
  used by directive handler extensions
  
  Revision  ChangesPath
  1.635 +4 -0  modperl/Changes
  
  Index: Changes
  ===
  RCS file: /home/cvs/modperl/Changes,v
  retrieving revision 1.634
  retrieving revision 1.635
  diff -u -r1.634 -r1.635
  --- Changes   24 Mar 2002 22:06:39 -  1.634
  +++ Changes   24 Mar 2002 22:51:04 -  1.635
  @@ -10,6 +10,10 @@
   
   =item 1.26_01-dev
   
  +do not clear symbol tables within a package in perl_clear_symtab()
  +used by directive handler extensions
  +[Stephen Clouse [EMAIL PROTECTED]]
  +
   properly deal with $r-status codes (e.g. redirect) in
   Apache::RegistryNG [Geoff Young [EMAIL PROTECTED]]
   
  
  
  
  1.11  +1 -6  modperl/STATUS
  
  Index: STATUS
  ===
  RCS file: /home/cvs/modperl/STATUS,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- STATUS24 Mar 2002 22:06:39 -  1.10
  +++ STATUS24 Mar 2002 22:51:04 -  1.11
  @@ -1,5 +1,5 @@
   mod_perl 1.3 STATUS:
  -   Last modified at [$Date: 2002/03/24 22:06:39 $]
  +   Last modified at [$Date: 2002/03/24 22:51:04 $]
   
   
   Release:
  @@ -21,11 +21,6 @@
Status: 
 doc patch at 
http://marc.theaimsgroup.com/?l=apache-modperlm=97450363501652w=2
   
  -* vanishing symbol tables
  -Report: http://marc.theaimsgroup.com/?l=apache-modperlm=100820262006934w=2
  - Status:
  -  patch available
  -
   * $r-finfo problem with HTML::Mason::ApacheHandler
   Report: http://marc.theaimsgroup.com/?l=apache-modperlm=96854561311519w=2
Status:
  
  
  
  1.114 +22 -1 modperl/src/modules/perl/perl_config.c
  
  Index: perl_config.c
  ===
  RCS file: /home/cvs/modperl/src/modules/perl/perl_config.c,v
  retrieving revision 1.113
  retrieving revision 1.114
  diff -u -r1.113 -r1.114
  --- perl_config.c 24 Mar 2002 21:00:06 -  1.113
  +++ perl_config.c 24 Mar 2002 22:51:04 -  1.114
  @@ -1666,6 +1666,27 @@
   }   
   }
   
  +static int gvhv_is_stash(GV *gv)
  +{
  +int len = GvNAMELEN(gv);
  +char *name = GvNAME(gv);
  +
  +if ((len  2) 
  +(name[len - 1] == ':') 
  +(name[len - 2] == ':'))
  +{
  +return 1;
  +}
  +
  +return 0;
  +}
  +
  +/*
  + * we do not clear symbols within packages, the desired behavior
  + * for directive handler classes.  and there should never be a package
  + * within the %Apache::ReadConfig.  nothing else that i'm aware of calls
  + * this function, so we should be ok.
  + */
   void perl_clear_symtab(HV *symtab) 
   {
   SV *val;
  @@ -1684,7 +1705,7 @@
continue;
if((sv = GvSV((GV*)val)))
sv_setsv(GvSV((GV*)val), sv_undef);
  - if((hv = GvHV((GV*)val)))
  + if((hv = GvHV((GV*)val))  !gvhv_is_stash((GV*)val))
hv_clear(hv);
if((av = GvAV((GV*)val)))
av_clear(av);
  
  
  



cvs commit: modperl/src/modules/perl perl_config.c

2000-09-27 Thread dougm

dougm   00/09/27 08:37:38

  Modified:src/modules/perl perl_config.c
  Log:
  typo
  
  Revision  ChangesPath
  1.105 +1 -1  modperl/src/modules/perl/perl_config.c
  
  Index: perl_config.c
  ===
  RCS file: /home/cvs/modperl/src/modules/perl/perl_config.c,v
  retrieving revision 1.104
  retrieving revision 1.105
  diff -u -r1.104 -r1.105
  --- perl_config.c 2000/09/26 21:02:42 1.104
  +++ perl_config.c 2000/09/27 15:37:33 1.105
  @@ -588,7 +588,7 @@
}
   }
   
  -if (cld-PerlModule) {
  +if (cls-PerlModule) {
   *(char **)push_array(cls-PerlModule) = pstrdup(parms-pool, arg);
   }
   
  
  
  



cvs commit: modperl/src/modules/perl perl_config.c

2000-09-27 Thread dougm

dougm   00/09/27 20:53:02

  Modified:src/modules/perl perl_config.c
  Log:
  fix %Apache::ReadConfig:: processing for PerlRequire'd files
  
  Revision  ChangesPath
  1.107 +16 -18modperl/src/modules/perl/perl_config.c
  
  Index: perl_config.c
  ===
  RCS file: /home/cvs/modperl/src/modules/perl/perl_config.c,v
  retrieving revision 1.106
  retrieving revision 1.107
  diff -u -r1.106 -r1.107
  --- perl_config.c 2000/09/27 23:51:34 1.106
  +++ perl_config.c 2000/09/28 03:53:01 1.107
  @@ -600,21 +600,20 @@
dTHRCTX;
return SvPV(ERRSV,n_a);
}
  - }
  - else {
  - return NULL;
  +#ifdef PERL_SECTIONS
  +else {
  +if (CAN_SELF_BOOT_SECTIONS) {
  +perl_section_self_boot(parms, dummy, arg);
  +}
  + }
  +#endif
}
   }
  -
  -if (cls-PerlModule) {
  +else {
  +/* Delay processing it until Perl starts */
   *(char **)push_array(cls-PerlModule) = pstrdup(parms-pool, arg);
   }
   
  -#ifdef PERL_SECTIONS
  -if(CAN_SELF_BOOT_SECTIONS)
  - perl_section_self_boot(parms, dummy, arg);
  -#endif
  -
   return NULL;
   }
   
  @@ -633,20 +632,19 @@
dTHRCTX;
return SvPV(ERRSV,n_a);
}
  +#ifdef PERL_SECTIONS
else {
  - return NULL;
  +if (CAN_SELF_BOOT_SECTIONS) {
  +perl_section_self_boot(parms, dummy, arg);
  +}
}
  +#endif
}
   }
  -
  -if (cls-PerlRequire) {
  +else {
  +/* Delay processing it until Perl starts */
   *(char **)push_array(cls-PerlRequire) = pstrdup(parms-pool, arg);
   }
  -
  -#ifdef PERL_SECTIONS
  -if(CAN_SELF_BOOT_SECTIONS)
  - perl_section_self_boot(parms, dummy, arg);
  -#endif
   
   return NULL;
   }
  
  
  



cvs commit: modperl/src/modules/perl perl_config.c

2000-09-26 Thread dougm

dougm   00/09/26 13:07:36

  Modified:src/modules/perl perl_config.c
  Log:
  fix bug in Perl{Set,Add}Var so $r-dir_config-get('key') sees the
  same values as $r-dir_config('key')
  
  Revision  ChangesPath
  1.103 +10 -8 modperl/src/modules/perl/perl_config.c
  
  Index: perl_config.c
  ===
  RCS file: /home/cvs/modperl/src/modules/perl/perl_config.c,v
  retrieving revision 1.102
  retrieving revision 1.103
  diff -u -r1.102 -r1.103
  --- perl_config.c 2000/09/22 18:52:00 1.102
  +++ perl_config.c 2000/09/26 20:05:22 1.103
  @@ -717,17 +717,18 @@
   
   CHAR_P perl_cmd_var(cmd_parms *cmd, void *config, char *key, char *val)
   {
  +perl_dir_config *rec = (perl_dir_config *)config;
  +
   MP_TRACE_d(fprintf(stderr, "perl_cmd_var: '%s' = '%s'\n", key, val));
  -if (cmd-path) {
  -perl_dir_config *rec = (perl_dir_config *) config;
  -if (cmd-info) {
  -table_add(rec-vars, key, val);
  -}
  -else {
  -table_set(rec-vars, key, val);
  -}
  +
  +if (cmd-info) {
  +table_add(rec-vars, key, val);
   }
   else {
  +table_set(rec-vars, key, val);
  +}
  +
  +if (cmd-path == NULL) {
   dPSRV(cmd-server);
   if (cmd-info) {
   table_add(cls-vars, key, val);
  @@ -736,6 +737,7 @@
   table_set(cls-vars, key, val);
   }
   }
  +
   return NULL;
   }
   
  
  
  



cvs commit: modperl/src/modules/perl perl_config.c

2000-09-26 Thread dougm

dougm   00/09/26 14:02:44

  Modified:.Changes
   src/modules/perl perl_config.c
  Log:
  fix for Perl{Module,Require} in .htaccess
  
  Revision  ChangesPath
  1.524 +3 -0  modperl/Changes
  
  Index: Changes
  ===
  RCS file: /home/cvs/modperl/Changes,v
  retrieving revision 1.523
  retrieving revision 1.524
  diff -u -r1.523 -r1.524
  --- Changes   2000/09/26 20:11:03 1.523
  +++ Changes   2000/09/26 21:02:36 1.524
  @@ -10,6 +10,9 @@
   
   =item 1.24_01-dev
   
  +fix for Perl{Module,Require} in .htaccess,
  +thanks to Will Trillich and Andrew Gideon for the spot
  +
   static+apaci fixes for aix [Jens-Uwe Mager [EMAIL PROTECTED]]
   
   fix bug in Perl{Set,Add}Var so $r-dir_config-get('key') sees the
  
  
  
  1.104 +7 -2  modperl/src/modules/perl/perl_config.c
  
  Index: perl_config.c
  ===
  RCS file: /home/cvs/modperl/src/modules/perl/perl_config.c,v
  retrieving revision 1.103
  retrieving revision 1.104
  diff -u -r1.103 -r1.104
  --- perl_config.c 2000/09/26 20:05:22 1.103
  +++ perl_config.c 2000/09/26 21:02:42 1.104
  @@ -587,8 +587,11 @@
return NULL;
}
   }
  -*(char **)push_array(cls-PerlModule) = pstrdup(parms-pool, arg);
   
  +if (cld-PerlModule) {
  +*(char **)push_array(cls-PerlModule) = pstrdup(parms-pool, arg);
  +}
  +
   #ifdef PERL_SECTIONS
   if(CAN_SELF_BOOT_SECTIONS)
perl_section_self_boot(parms, dummy, arg);
  @@ -618,7 +621,9 @@
}
   }
   
  -*(char **)push_array(cls-PerlRequire) = pstrdup(parms-pool, arg);
  +if (cls-PerlRequire) {
  +*(char **)push_array(cls-PerlRequire) = pstrdup(parms-pool, arg);
  +}
   
   #ifdef PERL_SECTIONS
   if(CAN_SELF_BOOT_SECTIONS)