summaryrefslogtreecommitdiff
path: root/vms/vms.c
diff options
context:
space:
mode:
authorCraig A. Berry <craigberry@mac.com>2009-02-20 17:43:08 -0600
committerCraig A. Berry <craigberry@mac.com>2009-02-20 17:43:08 -0600
commit778e045f833ee66ca20193bc17889f482b3beab6 (patch)
tree8c0ddd919ae0f69b6b25c86911dc3b2d989a9635 /vms/vms.c
parent58472d87a6411bd16d06056451ba52c7e4c8af54 (diff)
downloadperl-778e045f833ee66ca20193bc17889f482b3beab6.tar.gz
Avoid VMS long filename support on older systems that don't have it.
Diffstat (limited to 'vms/vms.c')
-rw-r--r--vms/vms.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/vms/vms.c b/vms/vms.c
index 5a96c67825..c9c9acadaf 100644
--- a/vms/vms.c
+++ b/vms/vms.c
@@ -5625,6 +5625,8 @@ int_rmsexpand
if ((opts & PERL_RMSEXPAND_M_VMS) == 0)
#if !defined(__VAX) && defined(NAML$C_MAXRSS)
opts |= PERL_RMSEXPAND_M_LONG;
+#else
+ NOOP;
#endif
else
isunix = 0;
@@ -5750,6 +5752,7 @@ int_expanded:
/* Is a long or a short name expected */
/*------------------------------------*/
spec_buf = NULL;
+#if !defined(__VAX) && defined(NAML$C_MAXRSS)
if ((opts & PERL_RMSEXPAND_M_LONG) != 0) {
if (rms_nam_rsll(mynam)) {
spec_buf = outbufl;
@@ -5761,6 +5764,7 @@ int_expanded:
}
}
else {
+#endif
if (rms_nam_rsl(mynam)) {
spec_buf = outbuf;
speclen = rms_nam_rsl(mynam);
@@ -5769,7 +5773,9 @@ int_expanded:
spec_buf = esa; /* Not esal */
speclen = rms_nam_esl(mynam);
}
+#if !defined(__VAX) && defined(NAML$C_MAXRSS)
}
+#endif
spec_buf[speclen] = '\0';
/* Trim off null fields added by $PARSE
@@ -6444,13 +6450,17 @@ int_fileify_dirspec(const char *dir, char *buf, int *utf8_fl)
}
/* Make sure we are using the right buffer */
+#if !defined(__VAX) && defined(NAML$C_MAXRSS)
if (esal != NULL) {
my_esa = esal;
my_esa_len = rms_nam_esll(dirnam);
} else {
+#endif
my_esa = esa;
my_esa_len = rms_nam_esl(dirnam);
+#if !defined(__VAX) && defined(NAML$C_MAXRSS)
}
+#endif
my_esa[my_esa_len] = '\0';
if (!rms_is_nam_fnb(dirnam, (NAM$M_EXP_DEV | NAM$M_EXP_DIR))) {
cp1 = strchr(my_esa,']');
@@ -9786,6 +9796,7 @@ vms_image_init(int *argcp, char ***argvp)
Perl_csighandler_init();
#endif
+#if __CRTL_VER >= 70300000 && !defined(__VAX)
/* This was moved from the pre-image init handler because on threaded */
/* Perl it was always returning 0 for the default value. */
status = simple_trnlnm("SYS$POSIX_ROOT", eqv, LNM$C_NAMLENGTH);
@@ -9815,7 +9826,7 @@ vms_image_init(int *argcp, char ***argvp)
}
}
}
-
+#endif
_ckvmssts_noperl(sys$getjpiw(0,NULL,NULL,jpilist,iosb,NULL,NULL));
_ckvmssts_noperl(iosb[0]);