balsa r7897 - in trunk: . libbalsa src
- From: pawels svn gnome org
- To: svn-commits-list gnome org
- Subject: balsa r7897 - in trunk: . libbalsa src
- Date: Tue, 25 Mar 2008 19:27:55 +0000 (GMT)
Author: pawels
Date: Tue Mar 25 19:27:55 2008
New Revision: 7897
URL: http://svn.gnome.org/viewvc/balsa?rev=7897&view=rev
Log:
* src/balsa-index.c: pass "peek" parameter to get_message_stream().
* libbalsa/{message,source-viewer}.c: ditto.
* libbalsa/mailbox.[ch]: get_message_stream() has "peek" parameter now.
* libbalsa/mailbox_{mh,mbox,maildir}.c: make related trivial changes.
* libbalsa/mailbox_imap.c: pass "peek" further to save one RTT.
Modified:
trunk/ChangeLog
trunk/libbalsa/mailbox.c
trunk/libbalsa/mailbox.h
trunk/libbalsa/mailbox_imap.c
trunk/libbalsa/mailbox_maildir.c
trunk/libbalsa/mailbox_mbox.c
trunk/libbalsa/mailbox_mh.c
trunk/libbalsa/message.c
trunk/libbalsa/source-viewer.c
trunk/src/balsa-index.c
Modified: trunk/libbalsa/mailbox.c
==============================================================================
--- trunk/libbalsa/mailbox.c (original)
+++ trunk/libbalsa/mailbox.c Tue Mar 25 19:27:55 2008
@@ -918,7 +918,7 @@
*flags |= LIBBALSA_MESSAGE_FLAG_DELETED;
/* Copy stream */
- *stream = libbalsa_mailbox_get_message_stream(mailbox, msgno);
+ *stream = libbalsa_mailbox_get_message_stream(mailbox, msgno, TRUE);
if(!*stream) {
printf("Connection broken for message %u\n",
(unsigned)msgno);
@@ -1866,14 +1866,16 @@
}
GMimeStream *
-libbalsa_mailbox_get_message_stream(LibBalsaMailbox * mailbox, guint msgno)
+libbalsa_mailbox_get_message_stream(LibBalsaMailbox * mailbox, guint msgno,
+ gboolean peek)
{
g_return_val_if_fail(LIBBALSA_IS_MAILBOX(mailbox), NULL);
g_return_val_if_fail(msgno <= libbalsa_mailbox_total_messages(mailbox),
NULL);
return LIBBALSA_MAILBOX_GET_CLASS(mailbox)->get_message_stream(mailbox,
- msgno);
+ msgno,
+ peek);
}
/* libbalsa_mailbox_change_msgs_flags() changes stored message flags
@@ -3825,7 +3827,8 @@
GMimeStream *stream;
GMimeParser *parser;
- stream = libbalsa_mailbox_get_message_stream(mailbox, msg->msgno);
+ stream = libbalsa_mailbox_get_message_stream(mailbox, msg->msgno,
+ TRUE);
parser = g_mime_parser_new_with_stream(stream);
g_object_unref(stream);
mime_msg = g_mime_parser_construct_message(parser);
Modified: trunk/libbalsa/mailbox.h
==============================================================================
--- trunk/libbalsa/mailbox.h (original)
+++ trunk/libbalsa/mailbox.h Tue Mar 25 19:27:55 2008
@@ -296,7 +296,7 @@
LibBalsaMessageBody *part,
GError **err);
GMimeStream *(*get_message_stream) (LibBalsaMailbox * mailbox,
- guint msgno);
+ guint msgno, gboolean peek);
void (*check) (LibBalsaMailbox * mailbox);
@@ -412,7 +412,7 @@
with full RFC822 text of the message.
*/
GMimeStream *libbalsa_mailbox_get_message_stream(LibBalsaMailbox * mailbox,
- guint msgno);
+ guint msgno, gboolean peek);
/** libbalsa_mailbox_sync_storage() asks the mailbox to synchronise
Modified: trunk/libbalsa/mailbox_imap.c
==============================================================================
--- trunk/libbalsa/mailbox_imap.c (original)
+++ trunk/libbalsa/mailbox_imap.c Tue Mar 25 19:27:55 2008
@@ -108,7 +108,8 @@
gboolean expunge);
static GMimeStream *libbalsa_mailbox_imap_get_message_stream(LibBalsaMailbox *
mailbox,
- guint msgno);
+ guint msgno,
+ gboolean peek);
static void libbalsa_mailbox_imap_check(LibBalsaMailbox * mailbox);
static void
@@ -1100,7 +1101,7 @@
}
static FILE*
-get_cache_stream(LibBalsaMailbox *mailbox, guint msgno)
+get_cache_stream(LibBalsaMailbox *mailbox, guint msgno, gboolean peek)
{
unsigned uid = IMAP_MSGNO_UID(mailbox, msgno);
LibBalsaMailboxImap *mimap = LIBBALSA_MAILBOX_IMAP(mailbox);
@@ -1126,7 +1127,7 @@
if(cache) {
II(rc,mimap->handle,
imap_mbox_handle_fetch_rfc822_uid(mimap->handle, uid,
- TRUE, cache));
+ peek, cache));
fclose(cache);
}
@@ -1144,7 +1145,7 @@
*/
static GMimeStream *
libbalsa_mailbox_imap_get_message_stream(LibBalsaMailbox * mailbox,
- guint msgno)
+ guint msgno, gboolean peek)
{
FILE *stream;
@@ -1158,7 +1159,7 @@
return NULL;
}
- stream = get_cache_stream(mailbox, msgno);
+ stream = get_cache_stream(mailbox, msgno, peek);
libbalsa_unlock_mailbox(mailbox);
return stream ? g_mime_stream_file_new(stream) : NULL;
@@ -2098,7 +2099,8 @@
/* we could optimize this part a little bit: we do not need to
* keep reopening the stream. */
GMimeStream *stream =
- libbalsa_mailbox_imap_get_message_stream(mailbox, message->msgno);
+ libbalsa_mailbox_imap_get_message_stream(mailbox, message->msgno,
+ FALSE);
if(!stream) /* oops, connection broken or the message disappeared? */
return FALSE;
g_object_unref(stream);
@@ -2341,7 +2343,7 @@
if (dt.body->octets > 0)
II(rc,mimap->handle,
imap_mbox_handle_fetch_body(mimap->handle, msg->msgno,
- section, TRUE, ifbo, append_str, &dt));
+ section, FALSE, ifbo, append_str, &dt));
libbalsa_unlock_mailbox(msg->mailbox);
if(rc != IMR_OK) {
fprintf(stderr, "Error fetching imap message no %lu section %s\n",
Modified: trunk/libbalsa/mailbox_maildir.c
==============================================================================
--- trunk/libbalsa/mailbox_maildir.c (original)
+++ trunk/libbalsa/mailbox_maildir.c Tue Mar 25 19:27:55 2008
@@ -72,7 +72,8 @@
static GMimeStream *libbalsa_mailbox_maildir_get_message_stream(LibBalsaMailbox *
mailbox,
- guint msgno);
+ guint msgno,
+ gboolean peek);
static gboolean libbalsa_mailbox_maildir_open(LibBalsaMailbox * mailbox,
GError **err);
@@ -311,7 +312,7 @@
static GMimeStream *
libbalsa_mailbox_maildir_get_message_stream(LibBalsaMailbox * mailbox,
- guint msgno)
+ guint msgno, gboolean peek)
{
struct message_info *msg_info;
Modified: trunk/libbalsa/mailbox_mbox.c
==============================================================================
--- trunk/libbalsa/mailbox_mbox.c (original)
+++ trunk/libbalsa/mailbox_mbox.c Tue Mar 25 19:27:55 2008
@@ -69,7 +69,8 @@
static GMimeStream *libbalsa_mailbox_mbox_get_message_stream(LibBalsaMailbox *
mailbox,
- guint msgno);
+ guint msgno,
+ gboolean peek);
static gint lbm_mbox_check_files(const gchar * path, gboolean create);
static void libbalsa_mailbox_mbox_remove_files(LibBalsaMailboxLocal *mailbox);
@@ -281,7 +282,7 @@
static GMimeStream *
libbalsa_mailbox_mbox_get_message_stream(LibBalsaMailbox * mailbox,
- guint msgno)
+ guint msgno, gboolean peek)
{
LibBalsaMailboxMbox *mbox;
struct message_info *msg_info;
@@ -1095,7 +1096,7 @@
GMimeParser *parser;
GMimeMessage *mime_message;
- stream = libbalsa_mailbox_mbox_get_message_stream(mailbox, msgno);
+ stream = libbalsa_mailbox_mbox_get_message_stream(mailbox, msgno, TRUE);
if (!stream)
return NULL;
libbalsa_mime_stream_shared_lock(stream);
Modified: trunk/libbalsa/mailbox_mh.c
==============================================================================
--- trunk/libbalsa/mailbox_mh.c (original)
+++ trunk/libbalsa/mailbox_mh.c Tue Mar 25 19:27:55 2008
@@ -60,7 +60,8 @@
static GMimeStream *libbalsa_mailbox_mh_get_message_stream(LibBalsaMailbox *
mailbox,
- guint msgno);
+ guint msgno,
+ gboolean peek);
static gint lbm_mh_check_files(const gchar * path, gboolean create);
static void lbm_mh_set_path(LibBalsaMailboxLocal * mailbox,
const gchar * path);
@@ -264,7 +265,7 @@
static GMimeStream *
libbalsa_mailbox_mh_get_message_stream(LibBalsaMailbox * mailbox,
- guint msgno)
+ guint msgno, gboolean peek)
{
GMimeStream *stream;
struct message_info *msg_info;
Modified: trunk/libbalsa/message.c
==============================================================================
--- trunk/libbalsa/message.c (original)
+++ trunk/libbalsa/message.c Tue Mar 25 19:27:55 2008
@@ -1268,7 +1268,7 @@
if (mailbox)
return libbalsa_mailbox_get_message_stream(mailbox,
- message->msgno);
+ message->msgno, FALSE);
mime_stream = g_mime_stream_mem_new();
g_mime_object_write_to_stream(GMIME_OBJECT(message->mime_msg),
Modified: trunk/libbalsa/source-viewer.c
==============================================================================
--- trunk/libbalsa/source-viewer.c (original)
+++ trunk/libbalsa/source-viewer.c Tue Mar 25 19:27:55 2008
@@ -156,7 +156,8 @@
_("Mailbox closed"));
return;
}
- msg_stream = libbalsa_mailbox_get_message_stream(msg->mailbox, msg->msgno);
+ msg_stream = libbalsa_mailbox_get_message_stream(msg->mailbox, msg->msgno,
+ TRUE);
if (msg_stream == NULL)
return;
Modified: trunk/src/balsa-index.c
==============================================================================
--- trunk/src/balsa-index.c (original)
+++ trunk/src/balsa-index.c Tue Mar 25 19:27:55 2008
@@ -2252,7 +2252,7 @@
fprintf(stderr, "popen failed for message %d\n", msgno);
} else {
GMimeStream *stream =
- libbalsa_mailbox_get_message_stream(mailbox, msgno);
+ libbalsa_mailbox_get_message_stream(mailbox, msgno, TRUE);
GMimeStream *pipe;
g_return_if_fail(stream);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]