int virtual_search_deinit(struct mail_search_context *ctx)
{
- struct virtual_search_context *vctx = VIRTUAL_CONTEXT(ctx);
+ struct virtual_search_context *vctx = VIRTUAL_CONTEXT_REQUIRE(ctx);
array_free(&vctx->result);
array_free(&vctx->records);
bool virtual_search_next_nonblock(struct mail_search_context *ctx,
struct mail **mail_r, bool *tryagain_r)
{
- struct virtual_search_context *vctx = VIRTUAL_CONTEXT(ctx);
+ struct virtual_search_context *vctx = VIRTUAL_CONTEXT_REQUIRE(ctx);
struct index_search_context *ictx = (struct index_search_context *)ctx;
uint32_t seq;
bool virtual_search_next_update_seq(struct mail_search_context *ctx)
{
- struct virtual_search_context *vctx = VIRTUAL_CONTEXT(ctx);
+ struct virtual_search_context *vctx = VIRTUAL_CONTEXT_REQUIRE(ctx);
const struct virtual_search_record *recs;
unsigned int count;
#define VIRTUAL_DEFAULT_MAX_OPEN_MAILBOXES 64
#define VIRTUAL_BACKEND_CONTEXT(obj) \
- MODULE_CONTEXT(obj, virtual_backend_storage_module)
+ MODULE_CONTEXT_REQUIRE(obj, virtual_backend_storage_module)
struct virtual_backend_mailbox {
union mailbox_module_context module_ctx;
#define VIRTUAL_CONTEXT(obj) \
MODULE_CONTEXT(obj, virtual_storage_module)
+#define VIRTUAL_CONTEXT_REQUIRE(obj) \
+ MODULE_CONTEXT_REQUIRE(obj, virtual_storage_module)
struct virtual_save_context;