bump patchlevel to 52; other little tweaks for threads, win32 builds
Gurusamy Sarathy [Fri, 25 Sep 1998 06:27:12 +0000 (06:27 +0000)]
p4raw-id: //depot/perl@1888

doop.c
mg.c
patchlevel.h
regexec.c
win32/Makefile
win32/config_H.bc
win32/config_H.gc
win32/config_H.vc
win32/makedef.pl
win32/makefile.mk
win32/win32.c

diff --git a/doop.c b/doop.c
index 8502d1a..5390331 100644 (file)
--- a/doop.c
+++ b/doop.c
@@ -594,6 +594,7 @@ do_trans_UU_complex(SV *sv)
 I32
 do_trans(SV *sv)
 {
+    dTHR;
     STRLEN len;
 
     if (SvREADONLY(sv) && !(PL_op->op_private & OPpTRANS_IDENTICAL))
diff --git a/mg.c b/mg.c
index 90bea2b..e4ddcd6 100644 (file)
--- a/mg.c
+++ b/mg.c
@@ -47,6 +47,7 @@ struct magic_state {
 STATIC void
 save_magic(I32 mgs_ix, SV *sv)
 {
+    dTHR;
     MGS* mgs;
     assert(SvMAGICAL(sv));
 
@@ -65,6 +66,7 @@ save_magic(I32 mgs_ix, SV *sv)
 STATIC void
 restore_magic(void *p)
 {
+    dTHR;
     MGS* mgs = SSPTR((I32)p, MGS*);
     SV* sv = mgs->mgs_sv;
 
@@ -120,6 +122,7 @@ mg_magical(SV *sv)
 int
 mg_get(SV *sv)
 {
+    dTHR;
     I32 mgs_ix;
     MAGIC* mg;
     MAGIC** mgp;
@@ -154,6 +157,7 @@ mg_get(SV *sv)
 int
 mg_set(SV *sv)
 {
+    dTHR;
     I32 mgs_ix;
     MAGIC* mg;
     MAGIC* nextmg;
index a20dadd..b34b3aa 100644 (file)
@@ -1,7 +1,7 @@
 #ifndef __PATCHLEVEL_H_INCLUDED__
 #define PATCHLEVEL 5
 #undef SUBVERSION     /* OS/390 has a SUBVERSION in a system header */
-#define SUBVERSION 51
+#define SUBVERSION 52
 
 /*
        local_patches -- list of locally applied less-than-subversion patches.
index a529e86..840d9cc 100644 (file)
--- a/regexec.c
+++ b/regexec.c
@@ -208,6 +208,7 @@ regcppop(void)
 STATIC char *
 regcp_set_to(I32 ss)
 {
+    dTHR;
     I32 tmp = PL_savestack_ix;
 
     PL_savestack_ix = ss;
@@ -250,6 +251,7 @@ pregexec(register regexp *prog, char *stringarg, register char *strend,
 STATIC void
 cache_re(regexp *prog)
 {
+    dTHR;
     PL_regprecomp = prog->precomp;             /* Needed for FAIL. */
 #ifdef DEBUGGING
     PL_regprogram = prog->program;
index db98240..09baef7 100644 (file)
@@ -25,7 +25,7 @@ INST_TOP      = $(INST_DRV)\perl
 # versioned installation can be obtained by setting INST_TOP above to a
 # path that includes an arbitrary version string.
 #
-INST_VER       = \5.00551
+INST_VER       = \5.00552
 
 #
 # uncomment to enable threads-capabilities
index 71ebeef..66567ab 100644 (file)
@@ -34,8 +34,8 @@
  *     This symbol is the filename expanded version of the BIN symbol, for
  *     programs that do not want to deal with that at run-time.
  */
-#define BIN "c:\\perl\\5.00551\\bin\\MSWin32-x86"      /**/
-#define BIN_EXP "c:\\perl\\5.00551\\bin\\MSWin32-x86"  /**/
+#define BIN "c:\\perl\\5.00552\\bin\\MSWin32-x86"      /**/
+#define BIN_EXP "c:\\perl\\5.00552\\bin\\MSWin32-x86"  /**/
 
 /* CPPSTDIN:
  *     This symbol contains the first part of the string which will invoke
  */
 #define HAS_WCTOMB             /**/
 
+/* EBCDIC:
+ *     This symbol, if defined, indicates that this system uses
+ *     EBCDIC encoding.
+ */
+/*#define      EBCDIC          /**/
+
 /* I_ARPA_INET:
  *     This symbol, if defined, indicates that <arpa/inet.h> exists and should
  *     be included.
  */
-/*#define I_ARPA_INET  /**/
+#define I_ARPA_INET    /**/
 
 /* I_DBM:
  *     This symbol, if defined, indicates that <dbm.h> exists and should
  *     The last element is 0, corresponding to the 0 at the end of
  *     the sig_name list.
  */
-#define SIG_NAME "ZERO", "INT", "QUIT", "ILL", "FPE", "KILL", "SEGV", "PIPE", "ALRM", "TERM", "USR1", "USR2", "CHLD", "USR3", "BREAK", "ABRT", "STOP", "CONT", "CLD", 0                /**/
-#define SIG_NUM  0, 2, 3, 4, 8, 9, 11, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23, 25, 18, 0                       /**/
+#define SIG_NAME "ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "USR1", "USR2", "CHLD", "NUM19", "USR3", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0                /**/
+#define SIG_NUM  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 18, 0                   /**/
 
 /* VOIDFLAGS:
  *     This symbol indicates how much support of the void type is given by this
  *     This symbol contains the ~name expanded version of ARCHLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define ARCHLIB "c:\\perl\\5.00551\\lib\\MSWin32-x86"          /**/
+#define ARCHLIB "c:\\perl\\5.00552\\lib\\MSWin32-x86"          /**/
 /*#define ARCHLIB_EXP ""       /**/
 
 /* DLSYM_NEEDS_UNDERSCORE:
  *     This symbol contains the ~name expanded version of PRIVLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define PRIVLIB "c:\\perl\\5.00551\\lib"               /**/
-#define PRIVLIB_EXP (win32_get_privlib("5.00551"))     /**/
+#define PRIVLIB "c:\\perl\\5.00552\\lib"               /**/
+#define PRIVLIB_EXP (win32_get_privlib("5.00552"))     /**/
 
 /* SITEARCH:
  *     This symbol contains the name of the private library for this package.
  *     This symbol contains the ~name expanded version of SITEARCH, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define SITEARCH "c:\\perl\\site\\5.00551\\lib\\MSWin32-x86"           /**/
+#define SITEARCH "c:\\perl\\site\\5.00552\\lib\\MSWin32-x86"           /**/
 /*#define SITEARCH_EXP ""      /**/
 
 /* SITELIB:
  *     This symbol contains the ~name expanded version of SITELIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define SITELIB "c:\\perl\\site\\5.00551\\lib"         /**/
-#define SITELIB_EXP (win32_get_sitelib("5.00551"))     /**/
+#define SITELIB "c:\\perl\\site\\5.00552\\lib"         /**/
+#define SITELIB_EXP (win32_get_sitelib("5.00552"))     /**/
 
 /* STARTPERL:
  *     This variable contains the string to put in front of a perl
index e158822..c35d10e 100644 (file)
@@ -34,8 +34,8 @@
  *     This symbol is the filename expanded version of the BIN symbol, for
  *     programs that do not want to deal with that at run-time.
  */
-#define BIN "c:\\perl\\5.00551\\bin\\MSWin32-x86"      /**/
-#define BIN_EXP "c:\\perl\\5.00551\\bin\\MSWin32-x86"  /**/
+#define BIN "c:\\perl\\5.00552\\bin\\MSWin32-x86"      /**/
+#define BIN_EXP "c:\\perl\\5.00552\\bin\\MSWin32-x86"  /**/
 
 /* CPPSTDIN:
  *     This symbol contains the first part of the string which will invoke
  */
 #define HAS_WCTOMB             /**/
 
+/* EBCDIC:
+ *     This symbol, if defined, indicates that this system uses
+ *     EBCDIC encoding.
+ */
+/*#define      EBCDIC          /**/
+
 /* I_ARPA_INET:
  *     This symbol, if defined, indicates that <arpa/inet.h> exists and should
  *     be included.
  */
-/*#define I_ARPA_INET  /**/
+#define I_ARPA_INET    /**/
 
 /* I_DBM:
  *     This symbol, if defined, indicates that <dbm.h> exists and should
  *     The last element is 0, corresponding to the 0 at the end of
  *     the sig_name list.
  */
-#define SIG_NAME "ZERO", "INT", "QUIT", "ILL", "FPE", "KILL", "SEGV", "PIPE", "ALRM", "TERM", "CHLD", "BREAK", "ABRT", "STOP", "CONT", "CLD", 0                /**/
-#define SIG_NUM  0, 2, 3, 4, 8, 9, 11, 13, 14, 15, 20, 21, 22, 23, 25, 20, 0                   /**/
+#define SIG_NAME "ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "NUM16", "NUM17", "NUM18", "NUM19", "CHLD", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0             /**/
+#define SIG_NUM  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0                   /**/
 
 /* VOIDFLAGS:
  *     This symbol indicates how much support of the void type is given by this
  *     This symbol contains the ~name expanded version of ARCHLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define ARCHLIB "c:\\perl\\5.00551\\lib\\MSWin32-x86"          /**/
+#define ARCHLIB "c:\\perl\\5.00552\\lib\\MSWin32-x86"          /**/
 /*#define ARCHLIB_EXP ""       /**/
 
 /* DLSYM_NEEDS_UNDERSCORE:
  *     This symbol contains the ~name expanded version of PRIVLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define PRIVLIB "c:\\perl\\5.00551\\lib"               /**/
-#define PRIVLIB_EXP (win32_get_privlib("5.00551"))     /**/
+#define PRIVLIB "c:\\perl\\5.00552\\lib"               /**/
+#define PRIVLIB_EXP (win32_get_privlib("5.00552"))     /**/
 
 /* SITEARCH:
  *     This symbol contains the name of the private library for this package.
  *     This symbol contains the ~name expanded version of SITEARCH, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define SITEARCH "c:\\perl\\site\\5.00551\\lib\\MSWin32-x86"           /**/
+#define SITEARCH "c:\\perl\\site\\5.00552\\lib\\MSWin32-x86"           /**/
 /*#define SITEARCH_EXP ""      /**/
 
 /* SITELIB:
  *     This symbol contains the ~name expanded version of SITELIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define SITELIB "c:\\perl\\site\\5.00551\\lib"         /**/
-#define SITELIB_EXP (win32_get_sitelib("5.00551"))     /**/
+#define SITELIB "c:\\perl\\site\\5.00552\\lib"         /**/
+#define SITELIB_EXP (win32_get_sitelib("5.00552"))     /**/
 
 /* STARTPERL:
  *     This variable contains the string to put in front of a perl
index a816261..12e49cf 100644 (file)
@@ -34,8 +34,8 @@
  *     This symbol is the filename expanded version of the BIN symbol, for
  *     programs that do not want to deal with that at run-time.
  */
-#define BIN "c:\\perl\\5.00551\\bin\\MSWin32-x86"      /**/
-#define BIN_EXP "c:\\perl\\5.00551\\bin\\MSWin32-x86"  /**/
+#define BIN "c:\\perl\\5.00552\\bin\\MSWin32-x86"      /**/
+#define BIN_EXP "c:\\perl\\5.00552\\bin\\MSWin32-x86"  /**/
 
 /* CPPSTDIN:
  *     This symbol contains the first part of the string which will invoke
  */
 #define HAS_WCTOMB             /**/
 
+/* EBCDIC:
+ *     This symbol, if defined, indicates that this system uses
+ *     EBCDIC encoding.
+ */
+/*#define      EBCDIC          /**/
+
 /* I_ARPA_INET:
  *     This symbol, if defined, indicates that <arpa/inet.h> exists and should
  *     be included.
  */
-/*#define I_ARPA_INET  /**/
+#define I_ARPA_INET    /**/
 
 /* I_DBM:
  *     This symbol, if defined, indicates that <dbm.h> exists and should
  *     The last element is 0, corresponding to the 0 at the end of
  *     the sig_name list.
  */
-#define SIG_NAME "ZERO", "INT", "QUIT", "ILL", "FPE", "KILL", "SEGV", "PIPE", "ALRM", "TERM", "CHLD", "BREAK", "ABRT", "STOP", "CONT", "CLD", 0                /**/
-#define SIG_NUM  0, 2, 3, 4, 8, 9, 11, 13, 14, 15, 20, 21, 22, 23, 25, 20, 0                   /**/
+#define SIG_NAME "ZERO", "NUM01", "INT", "QUIT", "ILL", "NUM05", "NUM06", "NUM07", "FPE", "KILL", "NUM10", "SEGV", "NUM12", "PIPE", "ALRM", "TERM", "NUM16", "NUM17", "NUM18", "NUM19", "CHLD", "BREAK", "ABRT", "STOP", "NUM24", "CONT", "CLD", 0             /**/
+#define SIG_NUM  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 20, 0                   /**/
 
 /* VOIDFLAGS:
  *     This symbol indicates how much support of the void type is given by this
  *     This symbol contains the ~name expanded version of ARCHLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define ARCHLIB "c:\\perl\\5.00551\\lib\\MSWin32-x86"          /**/
+#define ARCHLIB "c:\\perl\\5.00552\\lib\\MSWin32-x86"          /**/
 /*#define ARCHLIB_EXP ""       /**/
 
 /* DLSYM_NEEDS_UNDERSCORE:
  *     This symbol contains the ~name expanded version of PRIVLIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define PRIVLIB "c:\\perl\\5.00551\\lib"               /**/
-#define PRIVLIB_EXP (win32_get_privlib("5.00551"))     /**/
+#define PRIVLIB "c:\\perl\\5.00552\\lib"               /**/
+#define PRIVLIB_EXP (win32_get_privlib("5.00552"))     /**/
 
 /* SITEARCH:
  *     This symbol contains the name of the private library for this package.
  *     This symbol contains the ~name expanded version of SITEARCH, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define SITEARCH "c:\\perl\\site\\5.00551\\lib\\MSWin32-x86"           /**/
+#define SITEARCH "c:\\perl\\site\\5.00552\\lib\\MSWin32-x86"           /**/
 /*#define SITEARCH_EXP ""      /**/
 
 /* SITELIB:
  *     This symbol contains the ~name expanded version of SITELIB, to be used
  *     in programs that are not prepared to deal with ~ expansion at run-time.
  */
-#define SITELIB "c:\\perl\\site\\5.00551\\lib"         /**/
-#define SITELIB_EXP (win32_get_sitelib("5.00551"))     /**/
+#define SITELIB "c:\\perl\\site\\5.00552\\lib"         /**/
+#define SITELIB_EXP (win32_get_sitelib("5.00552"))     /**/
 
 /* STARTPERL:
  *     This variable contains the string to put in front of a perl
index f860291..6336c0c 100644 (file)
@@ -216,6 +216,7 @@ unless ($define{'USE_THREADS'})
   skip_symbols [qw(
 PL_thr_key
 PL_sv_mutex
+PL_strtab_mutex
 PL_svref_mutex
 PL_malloc_mutex
 PL_eval_mutex
index fefb036..a7f01f1 100644 (file)
@@ -29,7 +29,7 @@ INST_TOP      *= $(INST_DRV)\perl
 # versioned installation can be obtained by setting INST_TOP above to a
 # path that includes an arbitrary version string.
 #
-INST_VER       *= \5.00551
+INST_VER       *= \5.00552
 
 #
 # uncomment to enable threads-capabilities
index 4ec3ee5..e58af52 100644 (file)
@@ -927,10 +927,12 @@ DllExport char *
 win32_getenv(const char *name)
 {
     static char *curitem = Nullch;     /* XXX threadead */
-    static DWORD curlen = 512;         /* XXX threadead */
+    static DWORD curlen = 0;           /* XXX threadead */
     DWORD needlen;
-    if (!curitem)
+    if (!curitem) {
+       curlen = 512;
        New(1305,curitem,curlen,char);
+    }
 
     needlen = GetEnvironmentVariable(name,curitem,curlen);
     if (needlen != 0) {
@@ -950,6 +952,7 @@ win32_getenv(const char *name)
            if (curitem) {
                Safefree(curitem);
                curitem = Nullch;
+               curlen = 0;
            }
            curitem = GetRegStr(name, &curitem, &curlen);
        }