commit 608a2863e04c8b14ef9a03e48db4fdd0c55ceaab
Author: Oswald Buddenhagen <[email protected]>
Date: Sat Mar 21 16:05:51 2009 +0000
handle failure to store message. this helps with invalid messages like
0-byte files after crashes.
src/drv_imap.c | 1 +
src/sync.c | 14 ++++++++++++++
2 files changed, 15 insertions(+), 0 deletions(-)
diff --git a/src/drv_imap.c b/src/drv_imap.c
index 9520cdd..dbdb1b1 100644
--- a/src/drv_imap.c
+++ b/src/drv_imap.c
@@ -1586,6 +1586,7 @@ imap_store_msg( store_t *gctx, msg_data_t *data, int *uid
)
}
/* invalid message */
free( fmap );
+ fprintf( stderr, "IMAP warning: storing message with incomplete
header.\n" );
return DRV_MSG_BAD;
mktid:
for (j = 0; j < TUIDL; j++)
diff --git a/src/sync.c b/src/sync.c
index 59035b6..5a5d247 100644
--- a/src/sync.c
+++ b/src/sync.c
@@ -301,6 +301,13 @@ sync_old( int tops, store_t *sctx, store_t *tctx,
store_conf_t *tconf, FILE *jfp
case DRV_OK:
smsg->flags = msgdata.flags;
switch (tdriver->store_msg(
tctx, &msgdata, &uid )) {
+ case DRV_MSG_BAD:
+ warn( pull ?
+ "Warning: Slave
refuses to store message %d from master.\n" :
+ "Warning: Master
refuses to store message %d from slave.\n",
+ smsg->uid );
+ smsg->status |=
M_NOT_SYNCED;
+ break;
case DRV_STORE_BAD: return pull
? SYNC_SLAVE_BAD : SYNC_MASTER_BAD;
default: return SYNC_FAIL;
case DRV_OK:
@@ -399,6 +406,13 @@ sync_new( int tops, store_t *sctx, store_t *tctx,
store_conf_t *tconf, FILE *jfp
}
msg->flags = msgdata.flags;
switch (tdriver->store_msg(
tctx, &msgdata, &uid )) {
+ case DRV_MSG_BAD:
+ warn( pull ?
+ "Warning: Slave
refuses to store message %d from master.\n" :
+ "Warning: Master
refuses to store message %d from slave.\n",
+ msg->uid );
+ msg->status |=
M_NOT_SYNCED;
+ continue;
case DRV_STORE_BAD: return pull
? SYNC_SLAVE_BAD : SYNC_MASTER_BAD;
default: return SYNC_FAIL;
case DRV_OK: break;
------------------------------------------------------------------------------
Developer Access Program for Intel Xeon Phi Processors
Access to Intel Xeon Phi processor-based developer platforms.
With one year of Intel Parallel Studio XE.
Training and support from Colfax.
Order your platform today. http://sdm.link/xeonphi
_______________________________________________
isync-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/isync-devel