integrate cfgperl change#6217 into mainline
Gurusamy Sarathy [Tue, 11 Jul 2000 17:42:04 +0000 (17:42 +0000)]
p4raw-link: @6217 on //depot/cfgperl: cc9b67681954df413fe79f7c379e7b91a3121259

p4raw-id: //depot/perl@6347

doio.c
sv.h
util.c
vmesa/vmesa.c
win32/win32.c

diff --git a/doio.c b/doio.c
index 6d03b20..970eaed 100644 (file)
--- a/doio.c
+++ b/doio.c
@@ -476,13 +476,13 @@ Perl_do_open9(pTHX_ GV *gv, register char *name, I32 len, int as_raw,
            SV *sv;
 
            PerlLIO_dup2(PerlIO_fileno(fp), fd);
-           FDPID_LOCK;
+           MUTEX_LOCK(&PL_fdpid_mutex);
            sv = *av_fetch(PL_fdpid,PerlIO_fileno(fp),TRUE);
            (void)SvUPGRADE(sv, SVt_IV);
            pid = SvIVX(sv);
            SvIVX(sv) = 0;
            sv = *av_fetch(PL_fdpid,fd,TRUE);
-           FDPID_UNLOCK;
+           MUTEX_UNLOCK(&PL_fdpid_mutex);
            (void)SvUPGRADE(sv, SVt_IV);
            SvIVX(sv) = pid;
            if (!was_fdopen)
diff --git a/sv.h b/sv.h
index f350498..0e12554 100644 (file)
--- a/sv.h
+++ b/sv.h
@@ -1066,10 +1066,3 @@ Release the internal mutex for an SV.
 #define SvGROW(sv,len) (SvLEN(sv) < (len) ? sv_grow(sv,len) : SvPVX(sv))
 #define Sv_Grow sv_grow
 
-#ifdef USE_THREADS
-#   define FDPID_LOCK          MUTEX_LOCK(&PL_fdpid_mutex)
-#   define FDPID_UNLOCK                MUTEX_UNLOCK(&PL_fdpid_mutex)
-#else
-#   define FDPID_LOCK
-#   define FDPID_UNLOCK
-#endif
diff --git a/util.c b/util.c
index 38591e9..e0f1f14 100644 (file)
--- a/util.c
+++ b/util.c
@@ -2402,9 +2402,9 @@ Perl_my_popen(pTHX_ char *cmd, char *mode)
        PerlLIO_close(p[This]);
        p[This] = p[that];
     }
-    FDPID_LOCK;
+    MUTEX_LOCK(&PL_fdpid_mutex);
     sv = *av_fetch(PL_fdpid,p[This],TRUE);
-    FDPID_UNLOCK;
+    MUTEX_UNLOCK(&PL_fdpid_mutex);
     (void)SvUPGRADE(sv,SVt_IV);
     SvIVX(sv) = pid;
     PL_forkprocess = pid;
@@ -2622,9 +2622,9 @@ Perl_my_pclose(pTHX_ PerlIO *ptr)
     int saved_win32_errno;
 #endif
 
-    FDPID_LOCK;
+    MUTEX_LOCK(&PL_fdpid_mutex);
     svp = av_fetch(PL_fdpid,PerlIO_fileno(ptr),TRUE);
-    FDPID_UNLOCK;
+    MUTEX_UNLOCK(&PL_fdpid_mutex);
     pid = SvIVX(*svp);
     SvREFCNT_dec(*svp);
     *svp = &PL_sv_undef;
index b396380..0e4ad86 100644 (file)
@@ -182,13 +182,13 @@ do_aspawn(SV* really, SV **mark, SV **sp)
              /* be used by my_pclose                        */
              /*---------------------------------------------*/
              close(fd);
-             FDPID_LOCK;
+             MUTEX_LOCK(&PL_fdpid_mutex);
              p_sv  = av_fetch(PL_fdpid,fd,TRUE);
              fd    = (int) SvIVX(*p_sv);
              SvREFCNT_dec(*p_sv);
              *p_sv = &PL_sv_undef;
              sv    = *av_fetch(PL_fdpid,fd,TRUE);
-             FDPID_UNLOCK;
+             MUTEX_UNLOCK(&PL_fdpid_mutex);
              (void) SvUPGRADE(sv, SVt_IV);
              SvIVX(sv) = pid;
              status    = 0;
@@ -414,9 +414,9 @@ my_popen(char *cmd, char *mode)
          pid = spawn_cmd(cmd, Perl_stdin_fd, Perl_stdout_fd);
          if (pid >= 0)
          {
-            FDPID_LOCK;
+            MUTEX_LOCK(&PL_fdpid_mutex);
             sv = *av_fetch(PL_fdpid,pFd[this],TRUE);
-            FDPID_UNLOCK;
+            MUTEX_UNLOCK(&PL_fdpid_mutex);
             (void) SvUPGRADE(sv, SVt_IV);
             SvIVX(sv) = pid;
             fd = PerlIO_fdopen(pFd[this], mode);
@@ -427,9 +427,9 @@ my_popen(char *cmd, char *mode)
       }
       else
       {
-         FDPID_LOCK;
+         MUTEX_LOCK(&PL_fdpid_mutex);
          sv = *av_fetch(PL_fdpid,pFd[that],TRUE);
-         FDPID_UNLOCK;
+         MUTEX_UNLOCK(&PL_fdpid_mutex);
          (void) SvUPGRADE(sv, SVt_IV);
          SvIVX(sv) = pFd[this];
          fd = PerlIO_fdopen(pFd[this], mode);
@@ -466,9 +466,9 @@ my_pclose(FILE *fp)
  SV   **sv;
  FILE *other;
 
-   FDPID_LOCK;
+   MUTEX_LOCK(&PL_fdpid_mutex);
    sv        = av_fetch(PL_fdpid,PerlIO_fileno(fp),TRUE);
-   FDPID_UNLOCK;
+   MUTEX_UNLOCK(&PL_fdpid_mutex);
    pid       = (int) SvIVX(*sv);
    SvREFCNT_dec(*sv);
    *sv       = &PL_sv_undef;
index c94d4c5..6e33616 100644 (file)
@@ -2393,9 +2393,9 @@ win32_popen(const char *command, const char *mode)
        /* close saved handle */
        win32_close(oldfd);
 
-       FDPID_LOCK;
+       MUTEX_LOCK(&PL_fdpid_mutex);
        sv_setiv(*av_fetch(w32_fdpid, p[parent], TRUE), childpid);
-       FDPID_UNLOCK;
+       MUTEX_UNLOCK(&PL_fdpid_mutex);
 
        /* set process id so that it can be returned by perl's open() */
        PL_forkprocess = childpid;
@@ -2431,9 +2431,9 @@ win32_pclose(FILE *pf)
     int childpid, status;
     SV *sv;
 
-    FDPID_LOCK;
+    MUTEX_LOCK(&PL_fdpid_mutex);
     sv = *av_fetch(w32_fdpid, win32_fileno(pf), TRUE);
-    FDPID_UNLOCK;
+    MUTEX_UNLOCK(&PL_fdpid_mutex);
     if (SvIOK(sv))
        childpid = SvIVX(sv);
     else