summaryrefslogtreecommitdiff
path: root/reentr.pl
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2003-03-11 17:43:10 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2003-03-11 17:43:10 +0000
commitab2b559bb5510413385bdf5e5398bcdfb293e40d (patch)
tree0c9572581d83ae021dd666824bf07412dbbcd7c0 /reentr.pl
parent6dea66918087e590d3c83e3571f2b8c019f8f7ce (diff)
downloadperl-ab2b559bb5510413385bdf5e5398bcdfb293e40d.tar.gz
Uid_t and Gid_t can easily be shorts and one cannot
pull shorts off the va_args, int is the shortest (ahem). p4raw-id: //depot/perl@18919
Diffstat (limited to 'reentr.pl')
-rw-r--r--reentr.pl8
1 files changed, 8 insertions, 0 deletions
diff --git a/reentr.pl b/reentr.pl
index ee94c8d641..4f9619eb9e 100644
--- a/reentr.pl
+++ b/reentr.pl
@@ -851,7 +851,11 @@ Perl_reentrant_retry(const char *f, ...)
p0 = va_arg(ap, void *);
retptr = getgrnam(p0); break;
case OP_GGRGID:
+#if Gid_t_size < INTSIZE
+ gid = (Gid_t)va_arg(ap, int);
+#else
gid = va_arg(ap, Gid_t);
+#endif
retptr = getgrgid(gid); break;
case OP_GGRENT:
retptr = getgrent(); break;
@@ -914,7 +918,11 @@ Perl_reentrant_retry(const char *f, ...)
p0 = va_arg(ap, void *);
retptr = getpwnam(p0); break;
case OP_GPWUID:
+#if Uid_t_size < INTSIZE
+ uid = (Uid_t)va_arg(ap, int);
+#else
uid = va_arg(ap, Uid_t);
+#endif
retptr = getpwuid(uid); break;
case OP_GPWENT:
retptr = getpwent(); break;