MSG: the database returns the buffer size, not the stringlength.
authorWilfried Goesgens <dothebart@citadel.org>
Fri, 15 Nov 2013 13:26:35 +0000 (14:26 +0100)
committerWilfried Goesgens <dothebart@citadel.org>
Fri, 15 Nov 2013 13:26:35 +0000 (14:26 +0100)
citadel/msgbase.c

index 2cd006d2e02b406648d90d11b399596d0e895d3a..21c1aabb41bb16ff61581832b76673965439f7c0 100644 (file)
@@ -1165,7 +1165,7 @@ struct CtdlMessage *CtdlFetchMessage(long msgnum, int with_body)
        if ( (CM_IsEmpty(ret, eMesageText)) && (with_body) ) {
                dmsgtext = cdb_fetch(CDB_BIGMSGS, &msgnum, sizeof(long));
                if (dmsgtext != NULL) {
        if ( (CM_IsEmpty(ret, eMesageText)) && (with_body) ) {
                dmsgtext = cdb_fetch(CDB_BIGMSGS, &msgnum, sizeof(long));
                if (dmsgtext != NULL) {
-                       CM_SetAsField(ret, eMesageText, &dmsgtext->ptr, dmsgtext->len);
+                       CM_SetAsField(ret, eMesageText, &dmsgtext->ptr, dmsgtext->len - 1);
                        cdb_free(dmsgtext);
                }
        }
                        cdb_free(dmsgtext);
                }
        }