From: David Levine Date: Tue, 15 Jan 2013 03:34:08 +0000 (-0600) Subject: Cleaned up m_getfld's read_more(). X-Git-Url: https://diplodocus.org/git/nmh/commitdiff_plain/e154f6005c9c286db0d7f045e3a2d5a3667d2546?hp=-c Cleaned up m_getfld's read_more(). --- e154f6005c9c286db0d7f045e3a2d5a3667d2546 diff --git a/sbr/m_getfld.c b/sbr/m_getfld.c index e84e5550..2974a32b 100644 --- a/sbr/m_getfld.c +++ b/sbr/m_getfld.c @@ -316,16 +316,10 @@ read_more (struct m_getfld_buffer *m, FILE *iob) { ssize_t retain = edelimlen; size_t num_read; - if (m->end > m->readpos) { - if (retain < m->end - m->readpos) retain = m->end - m->readpos; - } - if (retain > m->readpos - m->msg_buf) { - /* Should not happen: there have been fewer characters read - than are remaining in the buffer. */ - retain = m->readpos - m->msg_buf; - } + if (retain < m->end - m->readpos) retain = m->end - m->readpos; + /* assert (retain <= m->readpos - m->msg_buf <= sizeof msg_buf); */ - /* Move any leftover at the end of buf to the beginning. */ + /* Move what we want to retain at end of the buffer to the beginning. */ memmove (m->msg_buf, m->readpos - retain, retain); m->readpos = m->msg_buf + retain;