stas        2004/02/13 20:25:01

  Modified:    src/modules/perl modperl_cmd.c
  Log:
  provide a cleaner solution for implementing 'local $0'
  
  Revision  Changes    Path
  1.57      +3 -14     modperl-2.0/src/modules/perl/modperl_cmd.c
  
  Index: modperl_cmd.c
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_cmd.c,v
  retrieving revision 1.56
  retrieving revision 1.57
  diff -u -u -r1.56 -r1.57
  --- modperl_cmd.c     12 Feb 2004 22:02:44 -0000      1.56
  +++ modperl_cmd.c     14 Feb 2004 04:25:01 -0000      1.57
  @@ -516,23 +516,12 @@
       }
       
       {
  -        /* Set $0 to the current configuration file */
  -        SV *dollar_zero = get_sv("0", TRUE);
  -        int dollar_zero_tainted = SvTAINTED(dollar_zero);
  -
  -        if (dollar_zero_tainted) {
  -            SvTAINTED_off(dollar_zero); 
  -        }
  -
  +        GV *gv = gv_fetchpv("0", TRUE, SVt_PV);
           ENTER;
  -        save_item(dollar_zero);
  -        sv_setpv(dollar_zero, directive->filename);
  +        save_scalar(gv); /* local $0 */
  +        sv_setpv_mg(GvSV(gv), directive->filename);
           eval_pv(arg, FALSE);
           LEAVE;
  -
  -        if (dollar_zero_tainted) {
  -            SvTAINTED_on(dollar_zero);
  -        }
       }
       
       if (SvTRUE(ERRSV)) {
  
  
  

Reply via email to