diff options
Diffstat (limited to 'source/lib/system.c')
-rw-r--r-- | source/lib/system.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/source/lib/system.c b/source/lib/system.c index 479bce19659..e846e4755ec 100644 --- a/source/lib/system.c +++ b/source/lib/system.c @@ -1013,3 +1013,17 @@ int sys_pclose(int fd) return -1; return wstatus; } + + + +#if GLIBC_HACK_FCNTL64 +#include <asm/unistd.h> +/* this is a gross hack. 64 bit locking is completely screwed up on + i386 Linux in glibc 2.1.95 (which ships with RedHat 7.0). This hack + "fixes" the problem with the current 2.4.0test kernels +*/ +int fcntl64(int fd, int cmd, struct flock * lock) +{ + return syscall(__NR_fcntl64, fd, cmd, lock); +} +#endif /* HACK_FCNTL64 */ |