diff options
author | Mattias Andrée <maandree@operamail.com> | 2014-05-18 08:57:51 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@operamail.com> | 2014-05-18 08:57:51 +0200 |
commit | 9b72a7e795d74e4dceec516d592609de12b69e85 (patch) | |
tree | 899f5a0a6e455969ab367caf76205e25c87c39f9 /src/libmdsserver/mds-message.c | |
parent | m (diff) | |
download | mds-9b72a7e795d74e4dceec516d592609de12b69e85.tar.gz mds-9b72a7e795d74e4dceec516d592609de12b69e85.tar.bz2 mds-9b72a7e795d74e4dceec516d592609de12b69e85.tar.xz |
reduce code complexity
Signed-off-by: Mattias Andrée <maandree@operamail.com>
Diffstat (limited to 'src/libmdsserver/mds-message.c')
-rw-r--r-- | src/libmdsserver/mds-message.c | 21 |
1 files changed, 5 insertions, 16 deletions
diff --git a/src/libmdsserver/mds-message.c b/src/libmdsserver/mds-message.c index f6dca1a..bc71ca6 100644 --- a/src/libmdsserver/mds-message.c +++ b/src/libmdsserver/mds-message.c @@ -163,22 +163,13 @@ int mds_message_read(mds_message_t* restrict this, int fd) that it does not need to be reallocated again and again. */ if (header_commit_buffer == 0) { + char** old_headers = this->headers; header_commit_buffer = 8; - if (this->header_count == 0) + n = this->header_count + header_commit_buffer; + if (xrealloc(this->headers, n, char*)) { - if (xmalloc(this->headers, header_commit_buffer, char*)) - return -1; - } - else - { - char** old_headers = this->headers; - n = this->header_count + header_commit_buffer; - this->headers = realloc(this->headers, n * sizeof(char*)); - if (this->headers == NULL) - { - this->headers = old_headers; + this->headers = old_headers; return -1; - } } } @@ -261,9 +252,7 @@ int mds_message_read(mds_message_t* restrict this, int fd) if (n < 128) { char* old_buffer = this->buffer; - this->buffer_size <<= 1; - this->buffer = realloc(this->buffer, this->buffer_size * sizeof(char)); - if (this->buffer == NULL) + if (xrealloc(this->buffer, this->buffer_size <<= 1, char)) { this->buffer = old_buffer; this->buffer_size >>= 1; |