'bytes' is unsigned of type size_t, and can't be negative.
But the assigned write() returns ssize_t, and -1 on error.
For testing < 0, 'bytes' needs to be of a signed type.
Signed-off-by: Nicolas Kaiser <redacted>
---
Testsuite did not regress at my place.
transport-helper.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/transport-helper.c b/transport-helper.c
index 4e4754c..710b6f1 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -973,7 +973,7 @@ static int udt_do_read(struct unidirectional_transfer *t)
*/
static int udt_do_write(struct unidirectional_transfer *t)
{
- size_t bytes;
+ int bytes;
if (t->bufuse == 0)
return 0; /* Nothing to write. */@@ -989,7 +989,7 @@ static int udt_do_write(struct unidirectional_transfer *t)
if (t->bufuse)
memmove(t->buf, t->buf + bytes, t->bufuse);
transfer_debug("Wrote %i bytes to %s (buffer now at %i)",
- (int)bytes, t->dest_name, (int)t->bufuse);
+ bytes, t->dest_name, (int)t->bufuse);
}
return 0;
}--
1.7.3.4