summaryrefslogtreecommitdiff
path: root/perlio.c
diff options
context:
space:
mode:
authorAlan Burlison <Alan.Burlison@uk.sun.com>2006-04-05 16:52:14 +0100
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>2006-04-05 14:44:11 +0000
commitcfedb851ae04e1e3aafe948c7d624e1c65bbd2df (patch)
tree924ee606faff491c7df6b4ce421fa83f3a36bf59 /perlio.c
parentf8cd812dc4998f8b7cfb96262c9f9652d45d74e1 (diff)
downloadperl-cfedb851ae04e1e3aafe948c7d624e1c65bbd2df.tar.gz
perlio.c breaks on Solaris/gcc when > 256 FDs are available
Message-ID: <4433D99E.40800@sun.com> p4raw-id: //depot/perl@27722
Diffstat (limited to 'perlio.c')
-rw-r--r--perlio.c26
1 files changed, 1 insertions, 25 deletions
diff --git a/perlio.c b/perlio.c
index 6398cdc809..e7966073ca 100644
--- a/perlio.c
+++ b/perlio.c
@@ -2973,31 +2973,7 @@ PerlIOStdio_invalidate_fileno(pTHX_ FILE *f)
f->_fileno = -1;
return 1;
# elif defined(__sun__)
-# if defined(_LP64)
- /* On solaris, if _LP64 is defined, the FILE structure is this:
- *
- * struct FILE {
- * long __pad[16];
- * };
- *
- * It turns out that the fd is stored in the top 32 bits of
- * file->__pad[4]. The lower 32 bits contain flags. file->pad[5] appears
- * to contain a pointer or offset into another structure. All the
- * remaining fields are zero.
- *
- * We set the top bits to -1 (0xFFFFFFFF).
- */
- f->__pad[4] |= 0xffffffff00000000L;
- assert(fileno(f) == 0xffffffff);
-# else /* !defined(_LP64) */
- /* _file is just a unsigned char :-(
- Not clear why we dup() rather than using -1
- even if that would be treated as 0xFF - so will
- a dup fail ...
- */
- f->_file = PerlLIO_dup(fileno(f));
-# endif /* defined(_LP64) */
- return 1;
+ return 0;
# elif defined(__hpux)
f->__fileH = 0xff;
f->__fileL = 0xff;