NeoMutt  2025-12-11-911-gd8d604
Teaching an old dog new tricks
DOXYGEN
Loading...
Searching...
No Matches
msg_commit()

Save changes to an email. More...

+ Collaboration diagram for msg_commit():

Functions

static int comp_msg_commit (struct Mailbox *m, struct Message *msg)
 Save changes to an email - Implements MxOps::msg_commit() -.
 
int imap_msg_commit (struct Mailbox *m, struct Message *msg)
 Save changes to an email - Implements MxOps::msg_commit() -.
 
int maildir_msg_commit (struct Mailbox *m, struct Message *msg)
 Save changes to an email - Implements MxOps::msg_commit() -.
 
static int mbox_msg_commit (struct Mailbox *m, struct Message *msg)
 Save changes to an email - Implements MxOps::msg_commit() -.
 
static int mmdf_msg_commit (struct Mailbox *m, struct Message *msg)
 Save changes to an email - Implements MxOps::msg_commit() -.
 
static int mh_msg_commit (struct Mailbox *m, struct Message *msg)
 Save changes to an email - Implements MxOps::msg_commit() -.
 
static int nm_msg_commit (struct Mailbox *m, struct Message *msg)
 Save changes to an email - Implements MxOps::msg_commit() -.
 

Detailed Description

Save changes to an email.

Parameters
mMailbox
msgMessage to commit
Return values
0Success
-1Failure
Precondition
m is not NULL
msg is not NULL

Function Documentation

◆ comp_msg_commit()

static int comp_msg_commit ( struct Mailbox * m,
struct Message * msg )
static

Save changes to an email - Implements MxOps::msg_commit() -.

Definition at line 759 of file compress.c.

760{
761 if (!m->compress_info)
762 return -1;
763
764 struct CompressInfo *ci = m->compress_info;
765
766 const struct MxOps *ops = ci->child_ops;
767 if (!ops)
768 return -1;
769
770 /* Delegate */
771 return ops->msg_commit(m, msg);
772}
Private data for compress.
Definition lib.h:61
const struct MxOps * child_ops
callbacks of de-compressed file
Definition lib.h:66
void * compress_info
Compressed mbox module private data.
Definition mailbox.h:123
Definition mxapi.h:98
int(* msg_commit)(struct Mailbox *m, struct Message *msg)
Definition mxapi.h:254

◆ imap_msg_commit()

int imap_msg_commit ( struct Mailbox * m,
struct Message * msg )

Save changes to an email - Implements MxOps::msg_commit() -.

Note
May also return EOF Failure, see errno

Definition at line 2202 of file message.c.

2203{
2204 int rc = mutt_file_fclose(&msg->fp);
2205 if (rc != 0)
2206 return rc;
2207
2208 return imap_append_message(m, msg);
2209}
#define mutt_file_fclose(FP)
Definition file.h:144
int imap_append_message(struct Mailbox *m, struct Message *msg)
Write an email back to the server.
Definition message.c:1555
FILE * fp
pointer to the message data
Definition message.h:35
+ Here is the call graph for this function:

◆ maildir_msg_commit()

int maildir_msg_commit ( struct Mailbox * m,
struct Message * msg )

Save changes to an email - Implements MxOps::msg_commit() -.

Definition at line 628 of file message.c.

629{
630 return maildir_commit_message(m, msg, NULL);
631}
static int maildir_commit_message(struct Mailbox *m, struct Message *msg, struct Email *e)
Commit a message to a maildir folder.
Definition message.c:364
+ Here is the call graph for this function:

◆ mbox_msg_commit()

static int mbox_msg_commit ( struct Mailbox * m,
struct Message * msg )
static

Save changes to an email - Implements MxOps::msg_commit() -.

Definition at line 1529 of file mbox.c.

1530{
1531 if (fputs(MBOX_SEP, msg->fp) == EOF)
1532 return -1;
1533
1534 if ((fflush(msg->fp) == EOF) || (fsync(fileno(msg->fp)) == -1))
1535 {
1536 mutt_perror(_("Can't write message"));
1537 return -1;
1538 }
1539
1540 return 0;
1541}
#define mutt_perror(...)
Definition logging2.h:95
#define _(a)
Definition message.h:28
#define MBOX_SEP
Definition mx.h:69

◆ mmdf_msg_commit()

static int mmdf_msg_commit ( struct Mailbox * m,
struct Message * msg )
static

Save changes to an email - Implements MxOps::msg_commit() -.

Definition at line 1650 of file mbox.c.

1651{
1652 if (fputs(MMDF_SEP, msg->fp) == EOF)
1653 return -1;
1654
1655 if ((fflush(msg->fp) == EOF) || (fsync(fileno(msg->fp)) == -1))
1656 {
1657 mutt_perror(_("Can't write message"));
1658 return -1;
1659 }
1660
1661 return 0;
1662}
#define MMDF_SEP
Definition lib.h:63

◆ mh_msg_commit()

static int mh_msg_commit ( struct Mailbox * m,
struct Message * msg )
static

Save changes to an email - Implements MxOps::msg_commit() -.

Definition at line 1174 of file mh.c.

1175{
1176 return mh_commit_msg(m, msg, NULL, true);
1177}
static int mh_commit_msg(struct Mailbox *m, struct Message *msg, struct Email *e, bool updseq)
Commit a message to an MH folder.
Definition mh.c:243
+ Here is the call graph for this function:

◆ nm_msg_commit()

static int nm_msg_commit ( struct Mailbox * m,
struct Message * msg )
static

Save changes to an email - Implements MxOps::msg_commit() -.

Return values
-1Always

Definition at line 2460 of file notmuch.c.

2461{
2462 mutt_error(_("Can't write to virtual folder"));
2463 return -1;
2464}
#define mutt_error(...)
Definition logging2.h:94