[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Cvs-cvs] Changes to ccvs/src/socket-client.c
From: |
Derek Robert Price |
Subject: |
[Cvs-cvs] Changes to ccvs/src/socket-client.c |
Date: |
Sat, 24 Sep 2005 20:05:14 -0400 |
Index: ccvs/src/socket-client.c
diff -u ccvs/src/socket-client.c:1.16 ccvs/src/socket-client.c:1.17
--- ccvs/src/socket-client.c:1.16 Sat Sep 24 23:57:02 2005
+++ ccvs/src/socket-client.c Sun Sep 25 00:05:12 2005
@@ -91,6 +91,8 @@
blocking mode normally waits until all the requested data is
available. */
+ assert (size >= need);
+
*got = 0;
do
@@ -106,7 +108,7 @@
makes sure that we only recv() BUFFER_DATA_SIZE bytes at
a time. */
- nbytes = recv (sb->socket, data, size, 0);
+ nbytes = recv (sb->socket, data + *got, size - *got, 0);
if (nbytes < 0)
error (1, 0, "reading from server: %s",
SOCK_STRERROR (SOCK_ERRNO));
@@ -121,12 +123,9 @@
else
return 0;
}
- need -= nbytes;
- size -= nbytes;
- data += nbytes;
*got += nbytes;
}
- while (need > 0);
+ while (*got < need);
return 0;
}