Integrate change #12636 from maintperl; more dl fixups.
Jarkko Hietaniemi [Thu, 25 Oct 2001 05:18:06 +0000 (05:18 +0000)]
p4raw-link: @12636 on //depot/maint-5.6/perl: a9c18911d1898cd817acac82893d0885251fc35e

p4raw-id: //depot/perl@12638
p4raw-integrated: from //depot/maint-5.6/perl@12637 'copy in'
ext/DynaLoader/dl_next.xs ext/DynaLoader/dl_vms.xs (@12626..)
'merge in' ext/DynaLoader/dl_mac.xs (@12626..)

ext/DynaLoader/dl_mac.xs
ext/DynaLoader/dl_next.xs
ext/DynaLoader/dl_vms.xs

index 3742287..dd1ddfa 100644 (file)
@@ -36,6 +36,7 @@ typedef struct {
 
 static void terminate(void)
 {
+    dTHX;
     dMY_CXT;
     int size = GetHandleSize((Handle) dl_connections) / sizeof(ConnectionID);
     HLock((Handle) dl_connections);
index 4050826..8fa8440 100644 (file)
@@ -156,6 +156,7 @@ static void TransferError(NXStream *s)
 {
     char *buffer;
     int len, maxlen;
+    dTHX;
     dMY_CXT;
 
     if ( dl_last_error ) {
@@ -181,6 +182,7 @@ static char *dlopen(char *path, int mode /* mode is ignored */)
     char *result;
     char **p;
     STRLEN n_a;
+    dTHX;
     dMY_CXT;
        
     /* Do not load what is already loaded into this process */
index 2089826..03ddcb2 100644 (file)
@@ -101,6 +101,7 @@ copy_errmsg(msg,unused)
     struct dsc$descriptor_s *   msg;
     vmssts  unused;
 {
+    dTHX;
     dMY_CXT;
     if (*(msg->dsc$a_pointer) == '%') { /* first line */
       if (dl_last_error)
@@ -251,6 +252,7 @@ dl_load_file(filespec, flags)
     int                flags
     PREINIT:
     dTHX;
+    dMY_CXT;
     char vmsspec[NAM$C_MAXRSS];
     SV *reqSV, **reqSVhndl;
     STRLEN deflen;
@@ -265,7 +267,6 @@ dl_load_file(filespec, flags)
     struct libref *dlptr;
     vmssts sts, failed = 0;
     void (*entry)();
-    dMY_CXT;
     CODE:
 
     DLDEBUG(1,PerlIO_printf(Perl_debug_log, "dl_load_file(%s,%x):\n", filespec,flags));