NeoMutt  2024-12-12-14-g7b49f7
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 761 of file compress.c.

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

◆ 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 2170 of file message.c.

2171{
2172 int rc = mutt_file_fclose(&msg->fp);
2173 if (rc != 0)
2174 return rc;
2175
2176 return imap_append_message(m, msg);
2177}
#define mutt_file_fclose(FP)
Definition: file.h:138
int imap_append_message(struct Mailbox *m, struct Message *msg)
Write an email back to the server.
Definition: message.c:1529
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 603 of file message.c.

604{
605 return maildir_commit_message(m, msg, NULL);
606}
static int maildir_commit_message(struct Mailbox *m, struct Message *msg, struct Email *e)
Commit a message to a maildir folder.
Definition: message.c:360
+ 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 1502 of file mbox.c.

1503{
1504 if (fputc('\n', msg->fp) == EOF)
1505 return -1;
1506
1507 if ((fflush(msg->fp) == EOF) || (fsync(fileno(msg->fp)) == -1))
1508 {
1509 mutt_perror(_("Can't write message"));
1510 return -1;
1511 }
1512
1513 return 0;
1514}
#define mutt_perror(...)
Definition: logging2.h:93
#define _(a)
Definition: message.h:28

◆ 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 1623 of file mbox.c.

1624{
1625 if (fputs(MMDF_SEP, msg->fp) == EOF)
1626 return -1;
1627
1628 if ((fflush(msg->fp) == EOF) || (fsync(fileno(msg->fp)) == -1))
1629 {
1630 mutt_perror(_("Can't write message"));
1631 return -1;
1632 }
1633
1634 return 0;
1635}
#define MMDF_SEP
Definition: lib.h:62

◆ 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 1172 of file mh.c.

1173{
1174 return mh_commit_msg(m, msg, NULL, true);
1175}
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:246
+ 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 2386 of file notmuch.c.

2387{
2388 mutt_error(_("Can't write to virtual folder"));
2389 return -1;
2390}
#define mutt_error(...)
Definition: logging2.h:92