From fa1336a1c115e2b68cabf169cd4b441972a074ae Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Sun, 18 May 2014 01:48:58 +0200 Subject: Fix reading of payload MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- src/libmdsserver/mds-message.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/libmdsserver') diff --git a/src/libmdsserver/mds-message.c b/src/libmdsserver/mds-message.c index dccd7d8..62f0967 100644 --- a/src/libmdsserver/mds-message.c +++ b/src/libmdsserver/mds-message.c @@ -99,6 +99,7 @@ int mds_message_read(mds_message_t* restrict this, int fd) this->header_count = 0; free(this->payload); + this->payload = NULL; this->payload_size = 0; this->payload_ptr = 0; @@ -212,12 +213,12 @@ int mds_message_read(mds_message_t* restrict this, int fd) } /* Stage 1: payload. */ - if ((this->stage == 1) && (this->payload_ptr == 0)) + if ((this->stage == 1) && (this->payload_size == 0)) { this->stage = 2; return 0; } - if ((this->stage == 1) && (this->payload_ptr > 0)) + if ((this->stage == 1) && (this->payload_size > 0)) { /* How much of the payload that has not yet been filled. */ size_t need = this->payload_size - this->payload_ptr; -- cgit v1.2.3-70-g09d2