--- ./perl.h~	Wed Jun 18 18:54:31 2003
+++ ./perl.h	Wed Jun 18 19:51:49 2003
@@ -535,7 +535,7 @@ extern int Perl_doing_taint(int argc, ch
 #define TOO_LATE_FOR_(ch,s)	Perl_croak(aTHX_ "Too late for \"-%c\" option%s", (char)(ch), s)
 #define TOO_LATE_FOR(ch)	TOO_LATE_FOR_(ch, "")
 #define MALLOC_TOO_LATE_FOR(ch)	TOO_LATE_FOR_(ch, " with $ENV{PERL_MALLOC_OPT}")
-#define MALLOC_CHECK_TAINT2(argc,argv)	MALLOC_CHECK_TAINT(argc,argv,)
+#define MALLOC_CHECK_TAINT2(argc,argv)	MALLOC_CHECK_TAINT(argc,argv,NULL)
 
 #if !defined(HAS_STRCHR) && defined(HAS_INDEX) && !defined(strchr)
 #define strchr index
--- ./malloc_ctl.h~	Wed Jun 18 18:54:30 2003
+++ ./malloc_ctl.h	Wed Jun 18 19:45:30 2003
@@ -40,12 +40,9 @@ enum {
   MallocCfg_skip_cfg_env,
   MallocCfg_cfg_env_read,
 
-
-  MallocCfg_emergency_buffer,
   MallocCfg_emergency_buffer_size,
   MallocCfg_emergency_buffer_last_req,
 
-  MallocCfg_emergency_buffer_prepared,
   MallocCfg_emergency_buffer_prepared_size,
 
   MallocCfg_last
--- ./malloc.c~	Wed Jun 18 18:54:30 2003
+++ ./malloc.c	Wed Jun 18 19:51:26 2003
@@ -1045,8 +1045,6 @@ static IV MallocCfg[MallocCfg_last] = {
   1,			/* FILL_CHECK */
   0,			/* MallocCfg_skip_cfg_env */
   0,			/* MallocCfg_cfg_env_read */
-  0,			/* MallocCfg_emergency_buffer */
-  0,			/* MallocCfg_emergency_buffer_prepared */
   0,			/* MallocCfg_emergency_buffer_size */
   0,			/* MallocCfg_emergency_buffer_prepared_size */
   0			/* MallocCfg_emergency_buffer_last_req */
@@ -1067,7 +1065,6 @@ IV *MallocCfg_ptr = MallocCfg;
 
 #  define sbrk_goodness		MallocCfg[MallocCfg_sbrk_goodness]
 
-#  define emergency_buffer	((char*)MallocCfg[MallocCfg_emergency_buffer])
 #  define emergency_buffer_size	MallocCfg[MallocCfg_emergency_buffer_size]
 #  define emergency_buffer_last_req	MallocCfg[MallocCfg_emergency_buffer_last_req]
 
@@ -1107,8 +1104,10 @@ static	u_int goodsbrk;
 #    define BIG_SIZE (1<<16)		/* 64K */
 #  endif
 
-#  ifdef NO_MALLOC_DYNAMIC_CFG
 static char *emergency_buffer;
+static char *emergency_buffer_prepared;
+
+#  ifdef NO_MALLOC_DYNAMIC_CFG
 static MEM_SIZE emergency_buffer_size;
 	/* 0 if the last request for more memory succeeded.
 	   Otherwise the size of the failing request. */
@@ -1158,10 +1157,10 @@ perl_get_emergency_buffer(IV *size)
 static char *
 get_emergency_buffer(IV *size)
 {
-    char *pv = (char*)MallocCfg[MallocCfg_emergency_buffer_prepared];
+    char *pv = emergency_buffer_prepared;
 
     *size = MallocCfg[MallocCfg_emergency_buffer_prepared_size];
-    MallocCfg[MallocCfg_emergency_buffer_prepared] = 0;
+    emergency_buffer_prepared = 0;
     MallocCfg[MallocCfg_emergency_buffer_prepared_size] = 0;
     return pv;
 }
@@ -1173,9 +1172,9 @@ set_emergency_buffer(char *b, IV size)
     if (PTR2UV(b) & (NEEDED_ALIGNMENT - 1))
 	return -1;
     if (MallocCfg[MallocCfg_emergency_buffer_prepared_size])
-	add_to_chain((void*)MallocCfg[MallocCfg_emergency_buffer_prepared],
+	add_to_chain((void*)emergency_buffer_prepared,
 		     MallocCfg[MallocCfg_emergency_buffer_prepared_size], 0);
-    MallocCfg[MallocCfg_emergency_buffer_prepared] = PTR2UV(b);
+    emergency_buffer_prepared = b;
     MallocCfg[MallocCfg_emergency_buffer_prepared_size] = size;
     return 0;
 }
