about summary refs log tree commit diff
path: root/sysdeps/pthread
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-11-10 19:40:16 +0000
committerUlrich Drepper <drepper@redhat.com>2007-11-10 19:40:16 +0000
commit01e7fdbb7434ec51aee02044b8391c1ebdfb5698 (patch)
tree3690c87263fe8cfdcb092d0582574e4473be68d3 /sysdeps/pthread
parent7f745396c470216fb36d1d9867fb51318abc951d (diff)
downloadglibc-01e7fdbb7434ec51aee02044b8391c1ebdfb5698.tar.gz
glibc-01e7fdbb7434ec51aee02044b8391c1ebdfb5698.tar.xz
glibc-01e7fdbb7434ec51aee02044b8391c1ebdfb5698.zip
* sysdeps/pthread/aio_misc.c (handle_fildes_io): Avoid unnecessary
	complications for 64-bit platforms.
Diffstat (limited to 'sysdeps/pthread')
-rw-r--r--sysdeps/pthread/aio_misc.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/sysdeps/pthread/aio_misc.c b/sysdeps/pthread/aio_misc.c
index 3e1dbe9c63..fd3fcbb755 100644
--- a/sysdeps/pthread/aio_misc.c
+++ b/sysdeps/pthread/aio_misc.c
@@ -1,5 +1,5 @@
 /* Handle general operations.
-   Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2006
+   Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2006, 2007
    Free Software Foundation, Inc.
    This file is part of the GNU C Library.
    Contributed by Ulrich Drepper <drepper@cygnus.com>, 1997.
@@ -512,7 +512,8 @@ handle_fildes_io (void *arg)
 	     by signals.  */
 	  if ((aiocbp->aiocb.aio_lio_opcode & 127) == LIO_READ)
 	    {
-	      if (aiocbp->aiocb.aio_lio_opcode & 128)
+	      if (sizeof (off_t) != sizeof (off64_t)
+		  && aiocbp->aiocb.aio_lio_opcode & 128)
 		aiocbp->aiocb.__return_value =
 		  TEMP_FAILURE_RETRY (__pread64 (fildes, (void *)
 						 aiocbp->aiocb64.aio_buf,
@@ -537,7 +538,8 @@ handle_fildes_io (void *arg)
 	    }
 	  else if ((aiocbp->aiocb.aio_lio_opcode & 127) == LIO_WRITE)
 	    {
-	      if (aiocbp->aiocb.aio_lio_opcode & 128)
+	      if (sizeof (off_t) != sizeof (off64_t)
+		  && aiocbp->aiocb.aio_lio_opcode & 128)
 		aiocbp->aiocb.__return_value =
 		  TEMP_FAILURE_RETRY (__pwrite64 (fildes, (const void *)
 						  aiocbp->aiocb64.aio_buf,