You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl-cvs@perl.apache.org by do...@apache.org on 2002/05/31 01:35:02 UTC

cvs commit: modperl-2.0/src/modules/perl mod_perl.c modperl_env.c modperl_env.h modperl_interp.c

dougm       02/05/30 16:35:02

  Modified:    src/modules/perl mod_perl.c modperl_env.c modperl_env.h
                        modperl_interp.c
  Log:
  restore PL_vtbl_{env,envelem} function pointers on restart
  (required on darwin, good practice everywhere)
  
  Revision  Changes    Path
  1.120     +2 -0      modperl-2.0/src/modules/perl/mod_perl.c
  
  Index: mod_perl.c
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/mod_perl.c,v
  retrieving revision 1.119
  retrieving revision 1.120
  diff -u -r1.119 -r1.120
  --- mod_perl.c	23 May 2002 23:01:55 -0000	1.119
  +++ mod_perl.c	30 May 2002 23:35:02 -0000	1.120
  @@ -18,6 +18,8 @@
           modperl_xs_dl_handles_close(cdata->pool, handles);
       }
   
  +    modperl_env_unload();
  +
       return APR_SUCCESS;
   }
   #endif
  
  
  
  1.24      +7 -0      modperl-2.0/src/modules/perl/modperl_env.c
  
  Index: modperl_env.c
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_env.c,v
  retrieving revision 1.23
  retrieving revision 1.24
  diff -u -r1.23 -r1.24
  --- modperl_env.c	28 May 2002 00:35:00 -0000	1.23
  +++ modperl_env.c	30 May 2002 23:35:02 -0000	1.24
  @@ -329,3 +329,10 @@
       StructCopy(&MP_vtbl_env, &PL_vtbl_env, MGVTBL);
       StructCopy(&MP_vtbl_envelem, &PL_vtbl_envelem, MGVTBL);
   }
  +
  +void modperl_env_unload(void)
  +{
  +    /* restore originals */
  +    StructCopy(&MP_PERL_vtbl_env, &PL_vtbl_env, MGVTBL);
  +    StructCopy(&MP_PERL_vtbl_envelem, &PL_vtbl_envelem, MGVTBL);
  +}
  
  
  
  1.12      +2 -0      modperl-2.0/src/modules/perl/modperl_env.h
  
  Index: modperl_env.h
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_env.h,v
  retrieving revision 1.11
  retrieving revision 1.12
  diff -u -r1.11 -r1.12
  --- modperl_env.h	19 Nov 2001 00:07:28 -0000	1.11
  +++ modperl_env.h	30 May 2002 23:35:02 -0000	1.12
  @@ -29,4 +29,6 @@
   
   void modperl_env_init(void);
   
  +void modperl_env_unload(void);
  +
   #endif /* MODPERL_ENV_H */
  
  
  
  1.42      +2 -0      modperl-2.0/src/modules/perl/modperl_interp.c
  
  Index: modperl_interp.c
  ===================================================================
  RCS file: /home/cvs/modperl-2.0/src/modules/perl/modperl_interp.c,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- modperl_interp.c	11 May 2002 20:01:09 -0000	1.41
  +++ modperl_interp.c	30 May 2002 23:35:02 -0000	1.42
  @@ -159,6 +159,8 @@
   
       mip->parent->perl = NULL;
   
  +    modperl_env_unload();
  +
       return APR_SUCCESS;
   }