Note about filesize limits.
Jarkko Hietaniemi [Sat, 14 Aug 1999 13:06:12 +0000 (13:06 +0000)]
p4raw-id: //depot/cfgperl@3990

doio.c
pp_sys.c

diff --git a/doio.c b/doio.c
index 73f9429..d3d4d97 100644 (file)
--- a/doio.c
+++ b/doio.c
@@ -1022,6 +1022,11 @@ Perl_do_print(pTHX_ register SV *sv, PerlIO *fp)
        tmps = SvPV(sv, len);
        break;
     }
+    /* To detect whether the process is about to overstep its
+     * filesize limit we would need getrlimit().  We could then
+     * also transparently raise the limit with setrlimit() --
+     * but only until the system hard limit/the filesystem limit,
+     * at which we would get EPERM. --jhi */
     if (len && (PerlIO_write(fp,tmps,len) == 0 || PerlIO_error(fp)))
        return FALSE;
     return !PerlIO_error(fp);
index ecaebe3..afac5ab 100644 (file)
--- a/pp_sys.c
+++ b/pp_sys.c
@@ -1667,6 +1667,7 @@ PP(pp_send)
        else
 #endif
        {
+           /* See the note at doio.c:do_print about filesize limits. --jhi */
            length = PerlLIO_write(PerlIO_fileno(IoIFP(io)),
                                   buffer+offset, length);
        }