summaryrefslogtreecommitdiff
path: root/mysys/my_read.c
diff options
context:
space:
mode:
authortsmith/tim@siva.hindu.god <>2006-09-14 23:22:25 -0600
committertsmith/tim@siva.hindu.god <>2006-09-14 23:22:25 -0600
commitfb6625e4952b073e0153e2776a52d0c28fa205da (patch)
treef08ee152e3d58f0e4b866743241b14914db43e6d /mysys/my_read.c
parente38f04a09f3c5fbc261273cb50bbf06434830fa3 (diff)
parent43e8890abc5d48de0bb626081e685770bbbbe8cf (diff)
downloadmariadb-git-fb6625e4952b073e0153e2776a52d0c28fa205da.tar.gz
Merge siva.hindu.god:/usr/home/tim/m/bk/tmp/41
into siva.hindu.god:/usr/home/tim/m/bk/tmp/50
Diffstat (limited to 'mysys/my_read.c')
-rw-r--r--mysys/my_read.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/mysys/my_read.c b/mysys/my_read.c
index 2e23f2175f8..8b88e483fef 100644
--- a/mysys/my_read.c
+++ b/mysys/my_read.c
@@ -51,10 +51,11 @@ uint my_read(File Filedes, byte *Buffer, uint Count, myf MyFlags)
DBUG_PRINT("warning",("Read only %ld bytes off %ld from %d, errno: %d",
readbytes, Count, Filedes, my_errno));
#ifdef THREAD
- if ((int) readbytes <= 0 && errno == EINTR)
- {
- DBUG_PRINT("debug", ("my_read() was interrupted and returned %d", (int) readbytes));
- continue; /* Interrupted */
+ if ((readbytes == 0 || (int) readbytes == -1) && errno == EINTR)
+ {
+ DBUG_PRINT("debug", ("my_read() was interrupted and returned %d",
+ (int) readbytes));
+ continue; /* Interrupted */
}
#endif
if (MyFlags & (MY_WME | MY_FAE | MY_FNABP))