summaryrefslogtreecommitdiff
path: root/pod/perlport.pod
diff options
context:
space:
mode:
authorRobin Barker <rmbarker@cpan.org>2011-02-09 16:31:39 +0000
committerFather Chrysostomos <sprout@cpan.org>2011-02-09 09:17:31 -0800
commitbef2c1914a8beadb2da1b0b6c755e51a701aafbc (patch)
treeaeac6064d6939e195ddb42c5ea8d09d7de92f163 /pod/perlport.pod
parent6a065175ba605935cf92f1adc5dcb6c57570885f (diff)
downloadperl-bef2c1914a8beadb2da1b0b6c755e51a701aafbc.tar.gz
problem with exit in child process in BEGIN
Diffstat (limited to 'pod/perlport.pod')
-rw-r--r--pod/perlport.pod7
1 files changed, 7 insertions, 0 deletions
diff --git a/pod/perlport.pod b/pod/perlport.pod
index 04f2d0d167..8450fc78be 100644
--- a/pod/perlport.pod
+++ b/pod/perlport.pod
@@ -1632,6 +1632,13 @@ enabled, a generic number will be encoded in a method compatible with
the C library _POSIX_EXIT macro so that it can be decoded by other
programs, particularly ones written in C, like the GNV package. (VMS)
+C<exit()> resets file pointers, which is a problem when called
+from a child process (created by C<fork()>) in C<BEGIN>.
+A workaround is to use C<POSIX::_exit>. (Solaris)
+
+ exit unless $Config{archname} =~ /\bsolaris\b/;
+ require POSIX and POSIX::_exit(0);
+
=item fcntl
Not implemented. (Win32)