summaryrefslogtreecommitdiff
path: root/perlio.c
diff options
context:
space:
mode:
authorYitzchak Scott-Thoennes <sthoenna@efn.org>2000-12-03 11:06:53 -0800
committerJarkko Hietaniemi <jhi@iki.fi>2000-12-04 16:13:53 +0000
commit8e4bc33bdf4ed8200ffbc530cba09e11f3edc232 (patch)
treebb6caf500fb0b1ad70eaede748f1d7e0ace5507c /perlio.c
parenta03d92b298c01506369c0fcdc195b8fe687f9f3a (diff)
downloadperl-8e4bc33bdf4ed8200ffbc530cba09e11f3edc232.tar.gz
[ID 20001203.001] Not OK: perl v5.7.0 +DEVEL7965 on os2-64int-ld 2.30 (UNINSTALLED)
Message-Id: <200012040306.eB436rE18922@garcia.efn.org> p4raw-id: //depot/perl@7976
Diffstat (limited to 'perlio.c')
-rw-r--r--perlio.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/perlio.c b/perlio.c
index b0517e394f..41d4a8ed98 100644
--- a/perlio.c
+++ b/perlio.c
@@ -1493,12 +1493,20 @@ IV
PerlIOStdio_close(PerlIO *f)
{
dTHX;
+#ifdef HAS_SOCKET
int optval, optlen = sizeof(int);
+#endif
FILE *stdio = PerlIOSelf(f,PerlIOStdio)->stdio;
return(
+#ifdef HAS_SOCKET
(getsockopt(PerlIO_fileno(f), SOL_SOCKET, SO_TYPE, (char *)&optval, &optlen) < 0) ?
PerlSIO_fclose(stdio) :
- close(PerlIO_fileno(f)));
+ close(PerlIO_fileno(f))
+#else
+ PerlSIO_fclose(stdio)
+#endif
+ );
+
}
IV