diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2013-12-03 22:14:12 +0200 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2013-12-03 22:14:12 +0200 |
commit | b011990439cbb5dfc01ceb23a32c2ab13ab7de61 (patch) | |
tree | 88041995582c92a21c74a515c65df145283972c5 /io.c | |
parent | a6a0845cddb30bbe273b3f3cba2ce7fb54c3ae06 (diff) | |
parent | 7bc4e38b948e20f3d72e06662691a527a50eecbf (diff) | |
download | egawk-b011990439cbb5dfc01ceb23a32c2ab13ab7de61.tar.gz egawk-b011990439cbb5dfc01ceb23a32c2ab13ab7de61.tar.bz2 egawk-b011990439cbb5dfc01ceb23a32c2ab13ab7de61.zip |
Merge branch 'gawk-4.1-stable'
Diffstat (limited to 'io.c')
-rw-r--r-- | io.c | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -947,7 +947,10 @@ redirect(NODE *redir_exp, int redirtype, int *errflg) /* Alpha/VMS V7.1's C RTL is returning this instead of EMFILE (haven't tried other post-V6.2 systems) */ #define SS$_EXQUOTA 0x001C - else if (errno == EIO && vaxc$errno == SS$_EXQUOTA) +#define SS$_EXBYTLM 0x2a14 /* VMS 8.4 seen */ + else if (errno == EIO && + (vaxc$errno == SS$_EXQUOTA || + vaxc$errno == SS$_EXBYTLM)) close_one(); #endif else { @@ -2632,7 +2635,10 @@ do_find_source(const char *src, struct stat *stb, int *errcode, path_info *pi) return NULL; } erealloc(path, char *, strlen(path) + strlen(src) + 2, "do_find_source"); -#ifndef VMS +#ifdef VMS + if (strcspn(path,">]:") == strlen(path)) + strcat(path, "/"); +#else strcat(path, "/"); #endif strcat(path, src); |