diff options
author | Mattias Andrée <maandree@operamail.com> | 2014-05-14 06:41:32 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@operamail.com> | 2014-05-14 06:41:32 +0200 |
commit | d4f18457a4bcdf321b6f97394c3a7c26dd2225e7 (patch) | |
tree | 8b1b20fd49869ace10fe449301ba0b21b878569d /src/mds-server | |
parent | m fix (diff) | |
download | mds-d4f18457a4bcdf321b6f97394c3a7c26dd2225e7.tar.gz mds-d4f18457a4bcdf321b6f97394c3a7c26dd2225e7.tar.bz2 mds-d4f18457a4bcdf321b6f97394c3a7c26dd2225e7.tar.xz |
fix dumb-client and memory errors
Signed-off-by: Mattias Andrée <maandree@operamail.com>
Diffstat (limited to 'src/mds-server')
-rw-r--r-- | src/mds-server/mds-server.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/mds-server/mds-server.c b/src/mds-server/mds-server.c index aebd104..c0e4ea0 100644 --- a/src/mds-server/mds-server.c +++ b/src/mds-server/mds-server.c @@ -617,7 +617,7 @@ void* slave_loop(void* data) break; } n -= sent; - sendbuf_ += sent; + sendbuf_ += sent / sizeof(char); } free(sendbuf); ); @@ -936,7 +936,7 @@ int message_received(client_t* client) free(msgbuf); return 0; } - queue_message_multicast(msgbuf, n, client); + queue_message_multicast(msgbuf_, n, client); /* Queue message to be sent when this function returns. This done to simplify `multicast_message` for re-exec. */ @@ -1346,6 +1346,7 @@ void multicast_message(multicast_t* multicast) /* Send the message. */ with_mutex(client->mutex, errno = 0; + n *= sizeof(char); if (client->open) while (n > 0) { @@ -1357,7 +1358,7 @@ void multicast_message(multicast_t* multicast) break; } n -= sent; - multicast->message_ptr += sent; + multicast->message_ptr += sent / sizeof(char); } ); |