don't store 'shared' and 'other' namespaces

they are never used anyway, and aren't going to be (because configuring
that would be more annoying than just specifying Path manually).
This commit is contained in:
Oswald Buddenhagen 2019-11-10 17:13:41 +01:00
parent c391b06b07
commit 6fd4e8de24

View File

@ -108,7 +108,7 @@ struct imap_store {
uint got_namespace:1; uint got_namespace:1;
uint has_forwarded:1; uint has_forwarded:1;
char delimiter[2]; /* hierarchy delimiter */ char delimiter[2]; /* hierarchy delimiter */
list_t *ns_personal, *ns_other, *ns_shared; /* NAMESPACE info */ list_t *ns_personal; /* NAMESPACE info */
string_list_t *boxes; // _list results string_list_t *boxes; // _list results
char listed; // was _list already run with these flags? char listed; // was _list already run with these flags?
// note that the message counts do _not_ reflect stats from msgs, // note that the message counts do _not_ reflect stats from msgs,
@ -936,16 +936,14 @@ parse_namespace_rsp( imap_store_t *ctx, list_t *list, char *s )
static int static int
parse_namespace_rsp_p2( imap_store_t *ctx, list_t *list, char *s ) parse_namespace_rsp_p2( imap_store_t *ctx, list_t *list, char *s )
{ {
if (parse_namespace_check( (ctx->ns_other = list) )) free_list( list );
return LIST_BAD;
return parse_list( ctx, s, parse_namespace_rsp_p3 ); return parse_list( ctx, s, parse_namespace_rsp_p3 );
} }
static int static int
parse_namespace_rsp_p3( imap_store_t *ctx, list_t *list, char *s ATTR_UNUSED ) parse_namespace_rsp_p3( imap_store_t *ctx ATTR_UNUSED, list_t *list, char *s ATTR_UNUSED )
{ {
if (parse_namespace_check( (ctx->ns_shared = list) )) free_list( list );
return LIST_BAD;
return LIST_OK; return LIST_OK;
} }
@ -1611,8 +1609,6 @@ imap_cancel_store( store_t *gctx )
cancel_sent_imap_cmds( ctx ); cancel_sent_imap_cmds( ctx );
cancel_pending_imap_cmds( ctx ); cancel_pending_imap_cmds( ctx );
free_list( ctx->ns_personal ); free_list( ctx->ns_personal );
free_list( ctx->ns_other );
free_list( ctx->ns_shared );
free_string_list( ctx->auth_mechs ); free_string_list( ctx->auth_mechs );
free_generic_messages( ctx->msgs ); free_generic_messages( ctx->msgs );
free_string_list( ctx->boxes ); free_string_list( ctx->boxes );