bug-bash
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bash scripting and large files: input with the read builtin from a r


From: Andreas Schwab
Subject: Re: Bash scripting and large files: input with the read builtin from a redirection gives unexpected result with files larger than 2GB.
Date: Sun, 04 Mar 2012 21:51:39 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.94 (gnu/linux)

Bob Proulx <bob@proulx.com> writes:

> Chet Ramey wrote:
>> Jean-François Gagné wrote:
>> > uname output: Linux xxxxxxxx 2.6.32-5-amd64 #1 SMP Tue Jun 14 09:42:28 UTC 
>> > 2011 x86_64 GNU/Linux
>> > Machine Type: x86_64-pc-linux-gnu
>>
>> Compile and run the attached program.  If it prints out `4', which it does
>> on all of the Debian systems I've tried, file offsets are limited to 32
>> bits, and accessing files greater than 2 GB is going to be unreliable.
>
> Apparently all of the Debian systems you have tried are 32-bits
> systems.  On the reporter's 64-bit amd64 system it will print out 8.

But it won't help if you don't use it.

diff --git a/lib/sh/zread.c b/lib/sh/zread.c
index 0fd1199..3731a41 100644
--- a/lib/sh/zread.c
+++ b/lib/sh/zread.c
@@ -161,7 +161,7 @@ zsyncfd (fd)
      int fd;
 {
   off_t off;
-  int r;
+  off_t r;
 
   off = lused - lind;
   r = 0;

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]