cvsuser     03/07/11 01:58:51

  Modified:    classes  env.pmc
               config/gen/platform ansi.c darwin.c generic.c
                        platform_interface.h win32.c
               .        interpreter.c
  Log:
  use Parrot_{g,s}etenv
  
  Revision  Changes    Path
  1.2       +27 -29    parrot/classes/env.pmc
  
  Index: env.pmc
  ===================================================================
  RCS file: /cvs/public/parrot/classes/env.pmc,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -w -r1.1 -r1.2
  --- env.pmc   10 Jul 2003 22:49:50 -0000      1.1
  +++ env.pmc   11 Jul 2003 08:58:46 -0000      1.2
  @@ -1,7 +1,7 @@
   /* env.pmc
    *  Copyright: 2002, 2003 Yet Another Society
    *  CVS Info
  - *     $Id: env.pmc,v 1.1 2003/07/10 22:49:50 dan Exp $
  + *     $Id: env.pmc,v 1.2 2003/07/11 08:58:46 leo Exp $
    *  Overview:
    *     These are the vtable functions for the Env base class, which
    *     accesses the system environment
  @@ -14,19 +14,16 @@
   #include "parrot/parrot.h"
   
   pmclass Env extends default {
  -    INTVAL type () {
  -        return enum_class_Env;
  -    }
  -
       STRING* name() {
           return whoami;
       }
   
       STRING* get_string_keyed(PMC* key) {
  -      char *keyname = string_to_cstring(interpreter, VTABLE_get_string(interpreter, 
key));
  +     char *keyname = string_to_cstring(interpreter,
  +             VTABLE_get_string(interpreter, key));
         
         if (keyname) {
  -        char *val = getenv(keyname);
  +         char *val = Parrot_getenv(keyname);
           string_cstring_free(keyname);
        if (val) {
          return string_from_c_string(interpreter, val, 0);
  @@ -39,10 +36,11 @@
       }
   
       void set_string_keyed(PMC* key, STRING* value) {
  -      char *keyname = string_to_cstring(interpreter, VTABLE_get_string(interpreter, 
key));
  +     char *keyname = string_to_cstring(interpreter,
  +             VTABLE_get_string(interpreter, key));
         char *env_val = string_to_cstring(interpreter, value);
         if (keyname && env_val) {
  -        setenv(keyname, env_val, 1);
  +         Parrot_setenv(keyname, env_val);
         }
         if (keyname) {
           string_cstring_free(keyname);
  
  
  
  1.5       +10 -1     parrot/config/gen/platform/ansi.c
  
  Index: ansi.c
  ===================================================================
  RCS file: /cvs/public/parrot/config/gen/platform/ansi.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -w -r1.4 -r1.5
  --- ansi.c    23 Oct 2002 05:31:44 -0000      1.4
  +++ ansi.c    11 Jul 2003 08:58:49 -0000      1.5
  @@ -50,7 +50,16 @@
   void
   Parrot_setenv(const char *name, const char *value)
   {
  -    Parrot_warn(NULL, PARROT_WARNINGS_PLATFORM_FLAG, "Parrot_setenv not 
implemented");
  +    Parrot_warn(NULL, PARROT_WARNINGS_PLATFORM_FLAG,
  +            "Parrot_setenv not implemented");
  +    return;
  +}
  +
  +char *
  +Parrot_getenv(const char *name)
  +{
  +    Parrot_warn(NULL, PARROT_WARNINGS_PLATFORM_FLAG,
  +            "Parrot_getenv not implemented");
       return;
   }
   
  
  
  
  1.5       +6 -0      parrot/config/gen/platform/darwin.c
  
  Index: darwin.c
  ===================================================================
  RCS file: /cvs/public/parrot/config/gen/platform/darwin.c,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -w -r1.4 -r1.5
  --- darwin.c  22 Nov 2002 16:24:06 -0000      1.4
  +++ darwin.c  11 Jul 2003 08:58:49 -0000      1.5
  @@ -52,11 +52,17 @@
   ** Parrot_setenv()
   */
   
  +#define HAS_SETENV /* XXX need a test, this is never set */
   #ifdef HAS_SETENV
   void
   Parrot_setenv(const char *name, const char *value)
   {
       setenv(name, value, 1);
  +}
  +char *
  +Parrot_getenv(const char *name)
  +{
  +    return getenv(name);
   }
   #else
   /* putenv-based version might go here, but see perl5's util.c for
  
  
  
  1.10      +7 -0      parrot/config/gen/platform/generic.c
  
  Index: generic.c
  ===================================================================
  RCS file: /cvs/public/parrot/config/gen/platform/generic.c,v
  retrieving revision 1.9
  retrieving revision 1.10
  diff -u -w -r1.9 -r1.10
  --- generic.c 12 Jun 2003 16:07:21 -0000      1.9
  +++ generic.c 11 Jul 2003 08:58:49 -0000      1.10
  @@ -53,11 +53,18 @@
   ** Parrot_setenv()
   */
   
  +#define HAS_SETENV /* XXX need a test, this is never set */
   #ifdef HAS_SETENV
   void
   Parrot_setenv(const char *name, const char *value)
   {
       setenv(name, value, 1);
  +}
  +
  +char *
  +Parrot_getenv(const char *name)
  +{
  +    return getenv(name);
   }
   #else
   /* putenv-based version might go here, but see perl5's util.c for
  
  
  
  1.2       +1 -0      parrot/config/gen/platform/platform_interface.h
  
  Index: platform_interface.h
  ===================================================================
  RCS file: /cvs/public/parrot/config/gen/platform/platform_interface.h,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -w -r1.1 -r1.2
  --- platform_interface.h      6 Jun 2003 08:29:44 -0000       1.1
  +++ platform_interface.h      11 Jul 2003 08:58:50 -0000      1.2
  @@ -29,6 +29,7 @@
   INTVAL Parrot_intval_time(void);
   FLOATVAL Parrot_floatval_time(void);
   void Parrot_setenv(const char *name, const char *value);
  +char * Parrot_getenv(const char *name);
   
   /*
   ** Dynamic Loading:
  
  
  
  1.4       +5 -0      parrot/config/gen/platform/win32.c
  
  Index: win32.c
  ===================================================================
  RCS file: /cvs/public/parrot/config/gen/platform/win32.c,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -w -r1.3 -r1.4
  --- win32.c   27 Apr 2003 07:36:47 -0000      1.3
  +++ win32.c   11 Jul 2003 08:58:50 -0000      1.4
  @@ -60,6 +60,11 @@
   }
   
   
  +char *
  +Parrot_getenv(const char *name)
  +{
  +    return getenv(name);
  +}
   /*
   ** Parrot_dlopen()
   */
  
  
  
  1.168     +4 -4      parrot/interpreter.c
  
  Index: interpreter.c
  ===================================================================
  RCS file: /cvs/public/parrot/interpreter.c,v
  retrieving revision 1.167
  retrieving revision 1.168
  diff -u -w -r1.167 -r1.168
  --- interpreter.c     10 Jul 2003 16:56:46 -0000      1.167
  +++ interpreter.c     11 Jul 2003 08:58:51 -0000      1.168
  @@ -1,7 +1,7 @@
   /* interpreter.c
    *  Copyright: (When this is determined...it will go here)
    *  CVS Info
  - *     $Id: interpreter.c,v 1.167 2003/07/10 16:56:46 leo Exp $
  + *     $Id: interpreter.c,v 1.168 2003/07/11 08:58:51 leo Exp $
    *  Overview:
    *     The interpreter api handles running the operations
    *  Data Structure and Algorithms:
  @@ -471,9 +471,9 @@
   }
   
   static int
  -env_var_set(const char* var)
  +is_env_var_set(const char* var)
   {
  -    char* value = getenv(var);
  +    char* value = Parrot_getenv(var);
       if (value == NULL) return 0;
       if (*value == '\0') return 0;
       return ! (strcmp(value, "0") == 0);
  @@ -508,7 +508,7 @@
       PIO_init(interpreter);
   
   
  -    if (env_var_set("PARROT_GC_DEBUG")) {
  +    if (is_env_var_set("PARROT_GC_DEBUG")) {
   #if ! DISABLE_GC_DEBUG
           Interp_flags_SET(interpreter, PARROT_GC_DEBUG_FLAG);
          interpreter->lo_var_ptr = &interpreter;
  
  
  

Reply via email to