nostrdb/blocks: add ndb_blocks_free
In some situations we will need to have owned note blocks. For example, when we try to fetch note blocks from the database and it's not there yet. We will need to parse the content on the spot and return an owned copy, since it will not be immediately available in the database. Add a new flag field to note blocks that lets us know if it's owned by malloc or nostrdb. We the add a free function that checks this flag and frees the object if its set. If it is not set then it doesn nothing because it likely came from the database. Signed-off-by: William Casarin <jb55@jb55.com>
This commit is contained in:
committed by
Daniel D’Aquino
parent
c831976078
commit
f2795aa71c
+4
-1
@@ -9,11 +9,14 @@
|
||||
#include "nostrdb.h"
|
||||
#include <inttypes.h>
|
||||
|
||||
#define NDB_BLOCK_FLAG_OWNED 1
|
||||
|
||||
#pragma pack(push, 1)
|
||||
|
||||
struct ndb_blocks {
|
||||
unsigned char version;
|
||||
unsigned char padding[3];
|
||||
unsigned char flags;
|
||||
unsigned char padding[2];
|
||||
|
||||
uint32_t words;
|
||||
uint32_t num_blocks;
|
||||
|
||||
Reference in New Issue
Block a user