]> code.citadel.org Git - citadel.git/commitdiff
* fix buffer end situation
authorWilfried Göesgens <willi@citadel.org>
Mon, 14 Jul 2008 19:08:34 +0000 (19:08 +0000)
committerWilfried Göesgens <willi@citadel.org>
Mon, 14 Jul 2008 19:08:34 +0000 (19:08 +0000)
libcitadel/lib/stringbuf.c

index f2581d7df5eb40458119ed7ee4480ddd814d3b44..66af63a67e1618a7feb8065cba6d88b34b62d8b6 100644 (file)
@@ -181,10 +181,10 @@ int StrBufSub(StrBuf *dest, const StrBuf *Source, size_t Offset, size_t nChars)
                return nChars;
        }
        NCharsRemain = Source->BufUsed - Offset;
-       if (NCharsRemain < dest->BufSize)
+       if (NCharsRemain > dest->BufSize)
                IncreaseBuf(dest, 0, NCharsRemain + 1);
        memcpy(dest->buf, Source->buf + Offset, NCharsRemain);
-       dest->BufUsed = NCharsRemain + 1;
+       dest->BufUsed = NCharsRemain;
        dest->buf[dest->BufUsed] = '\0';
        return NCharsRemain;
 }