else if (r == -1) {  return (-1); }
int imap_open_mailbox_append (CONTEXT *ctx){  CONNECTION *conn;  char host[SHORT_STRING];  char buf[LONG_STRING], mbox[LONG_STRING];  char seq[16];  char *pc;  if (imap_parse_path (ctx->path, host, sizeof (host), &pc))    return (-1);  /* create IMAP-specific state struct */  ctx->data = safe_malloc (sizeof (IMAP_DATA));  memset (ctx->data, 0, sizeof (IMAP_DATA));  ctx->magic = M_IMAP;  CTX_DATA->mailbox = pc;  conn = mutt_socket_select_connection (host, IMAP_PORT, 0);  CTX_DATA->conn = conn;  if (conn->uses == 0)    if (imap_open_connection (ctx, conn))      return (-1);  conn->uses++;  /* check mailbox existance */  imap_quote_string (mbox, sizeof (mbox), CTX_DATA->mailbox);  imap_make_sequence (seq, sizeof (seq));  snprintf (buf, sizeof (buf), "%s STATUS %s (UIDVALIDITY)\r\n", seq, mbox);        if (imap_exec (buf, sizeof (buf), ctx, seq, buf, IMAP_OK_FAIL) != 0)  {    if (option (OPTCONFIRMCREATE))    {      snprintf (buf, sizeof (buf), _("Create %s?"), CTX_DATA->mailbox);      if (mutt_yesorno (buf, 1) < 1)	return (-1);      if (imap_create_mailbox (ctx) < 0)	return (-1);    }  }  return 0;}