From: Art Cancro Date: Thu, 17 Aug 2023 22:20:49 +0000 (-0900) Subject: CtdlSaveMsgPointersInRoom() is now lmdb-safe X-Git-Tag: v989~68 X-Git-Url: https://code.citadel.org/?a=commitdiff_plain;h=0816b560bbded9abd04c739049f445d94b8b7204;p=citadel.git CtdlSaveMsgPointersInRoom() is now lmdb-safe --- diff --git a/citadel/server/msgbase.c b/citadel/server/msgbase.c index d01a50577..6b5aec0e1 100644 --- a/citadel/server/msgbase.c +++ b/citadel/server/msgbase.c @@ -3221,9 +3221,9 @@ int CtdlDeleteMessages(const char *room_name, // which room if (cdbfr != NULL) { dellist = malloc(cdbfr->len); - msglist = (long *) cdbfr->ptr; - cdbfr->ptr = NULL; // CtdlDeleteMessages() now owns this memory (this needs attention if we move to LMDB) num_msgs = cdbfr->len / sizeof(long); + msglist = (long *) malloc(cdbfr->len); + memcpy(msglist, cdbfr->ptr, cdbfr->len); cdb_free(cdbfr); } if (num_msgs > 0) {