[Citadel Development] Apply patch sent by UFarx to support CPPFLAGS
[Citadel Development] (null)
UFarx: the formatter messed up that patch, I think. just remove the br tags I ended up having to apply your changes manually. Thank you for the patch, but in the future please either post it as an attachment (good) or upload it to our gitlab as a merge request (better). And thank you for the clarification about CPPFLAGS ... somehow after all these decades I never realized that CPP stood for "C PreProcessor" and not "C Plus Plus".
[Citadel Development] cdb_fetch()/cdb_next_item() return immutable data
Before now, the Berkeley DB back end was supplied the DB_DBT_MALLOC flag and it became the caller's responsibility to handle any memory allocated and returned by cdb_fetch() and cdb_next_item(). These heuristics are not expected to be compatible with new back ends currently in planning. cdb_fetch() and cdb_next_item() now return data that is to be considered immutable (don't write to it or you'll segfault). The caller must still call cdb_free() to free the `struct cdbdata` itself, but the pointers inside it point to buffers that the back end will reuse. After a call to cdb_fetch() or cdb_next_item(), the buffers are guaranteed to be readable until the next call to one of those functions on the same table.
[Citadel Development] serv_imap.c: moved to new CtdlFetchMsgList() API.
This should be the last of them. Next step is to audit all other use of cdb_free().