aboutsummaryrefslogtreecommitdiffstats
path: root/camel
diff options
context:
space:
mode:
Diffstat (limited to 'camel')
-rw-r--r--camel/ChangeLog10
-rw-r--r--camel/camel-formatter.c79
-rw-r--r--camel/camel-multipart.c1
-rw-r--r--camel/camel-seekable-substream.c28
-rw-r--r--camel/camel-session.c8
-rw-r--r--camel/camel-session.h36
-rw-r--r--camel/camel-stream-fs.c6
-rw-r--r--camel/gmime-utils.c2
8 files changed, 106 insertions, 64 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index 18e245364f..ba5b29d876 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,7 +1,15 @@
+2000-03-06 bertrand <bertrand@helixcode.com>
+
+ * camel-stream-fs.c (_seek): fix a bogus calculation
+ in the return position.
+
2000-03-05 bertrand <bertrand@helixcode.com>
+ * camel-session.h: cosmetic fixes.
+
* camel-stream-fs.c (_read):
- (_seek):
+ (_seek): fixed the current position so that it refers
+ to the current position in the stream, not in its parent.
2000-03-04 NotZed <NotZed@HelixCode.com>
diff --git a/camel/camel-formatter.c b/camel/camel-formatter.c
index 277de3956d..3ab86b7435 100644
--- a/camel/camel-formatter.c
+++ b/camel/camel-formatter.c
@@ -462,20 +462,22 @@ write_field_to_stream (const gchar* description, const gchar* value,
gchar *s;
guint ev_length;
gchar* encoded_value = value?text_to_html (
- value, strlen(value), &ev_length):"";
+ value, strlen(value), &ev_length):g_strdup ("");
int i;
- for (i = 0; i < strlen (value); i++)
- if (!isprint(encoded_value[i]))
- encoded_value[i] = 'Z';
- g_assert (description && value);
+ if (value)
+ for (i = 0; i < strlen (value); i++)
+ if (!isprint(encoded_value[i]))
+ encoded_value[i] = 'Z';
+
+ g_assert (description);
s = g_strdup_printf ("%s<b>%s</b>%s%s%s\n",
as_table_row?"<tr><td>":"",
description,
as_table_row?"</td><td>":" ",
encoded_value,
- as_table_row?"</td></tr>":"<br>");
+ as_table_row?"</td></tr>":"");
camel_stream_write_string (stream, s);
g_free (encoded_value);
@@ -523,45 +525,70 @@ write_header_info_to_stream (CamelMimeMessage* mime_message,
g_assert (mime_message && stream);
- camel_stream_write_string (stream, "<table>");
+ camel_stream_write_string (stream, "<table WIDTH=\"100\%\">");
/* A few fields will probably be available from the mime_message;
for each one that's available, write it to the output stream
with a helper function, 'write_field_to_stream'. */
- if ((s = (gchar*)camel_mime_message_get_subject (mime_message))) {
- write_field_to_stream ("Subject: ", s, stream, TRUE);
- }
-
- if ((s = (gchar*)camel_mime_message_get_from (mime_message))) {
- write_field_to_stream ("From: ", s, stream, TRUE);
- }
- if ((s = (gchar*)camel_mime_message_get_received_date (mime_message))) {
- write_field_to_stream ("Received Date: ", s, stream, TRUE);
- }
+ /* blame me for the bad code - rhon rhon ! */
+ /* first row : "From" and "To" */
+ camel_stream_write_string (stream, "<tr>");
+ camel_stream_write_string (stream, "<td>");
+ s = (gchar*)camel_mime_message_get_from (mime_message);
+ write_field_to_stream ("From: ", s, stream, FALSE);
+
+ camel_stream_write_string (stream, "</td>");
+ camel_stream_write_string (stream, "<td>");
- if ((s = (gchar*)camel_mime_message_get_sent_date (mime_message))) {
- write_field_to_stream ("Sent Date: ", s, stream, TRUE);
- }
-
/* Fill out the "To:" recipients line */
recipients = camel_mime_message_get_recipients (
mime_message, CAMEL_RECIPIENT_TYPE_TO);
if (recipients)
- write_recipients_to_stream ("To:", recipients, stream, TRUE);
+ write_recipients_to_stream ("To:", recipients, stream, FALSE);
+ camel_stream_write_string (stream, "</td>");
+ camel_stream_write_string (stream, "</tr>");
+
+
+
+ /* second row : "Subject" and "CC" */
+ camel_stream_write_string (stream, "<tr>");
+ camel_stream_write_string (stream, "<td>");
+ s = (gchar*)camel_mime_message_get_subject (mime_message);
+ write_field_to_stream ("Subject: ", s, stream, FALSE);
+
+ camel_stream_write_string (stream, "</td>");
+ camel_stream_write_string (stream, "<td>");
+
/* Fill out the "CC:" recipients line */
recipients = camel_mime_message_get_recipients (
mime_message, CAMEL_RECIPIENT_TYPE_CC);
if (recipients)
- write_recipients_to_stream ("CC:", recipients, stream, TRUE);
+ write_recipients_to_stream ("CC:", recipients, stream, FALSE);
+
+ camel_stream_write_string (stream, "</td>");
+ camel_stream_write_string (stream, "</tr>");
+
+
+#if FOR_LATER_EXTENSION
+ if ((s = (gchar*)camel_mime_message_get_received_date (mime_message))) {
+ write_field_to_stream ("Received Date: ", s, stream, TRUE);
+ }
+
+ if ((s = (gchar*)camel_mime_message_get_sent_date (mime_message))) {
+ write_field_to_stream ("Sent Date: ", s, stream, TRUE);
+ }
+
+
/* Fill out the "BCC:" recipients line */
recipients = camel_mime_message_get_recipients (
mime_message, CAMEL_RECIPIENT_TYPE_BCC);
if (recipients)
write_recipients_to_stream ("BCC:", recipients, stream, TRUE);
+#endif
camel_stream_write_string (stream, "</table>");
}
@@ -633,7 +660,7 @@ handle_text_plain (CamelFormatter *formatter, CamelDataWrapper *wrapper)
nb_bytes_read = camel_stream_read (wrapper_output_stream,
tmp_buffer,
4096);
-
+
/* If there's any text, write it to the stream */
if (nb_bytes_read > 0) {
@@ -838,7 +865,9 @@ print_camel_body_part (CamelMimeBodyPart* body_part,
call_handler_function (formatter, contents, MIME_TYPE_WHOLE (body_part),
MIME_TYPE_MAIN (body_part));
- camel_stream_write_string (formatter->priv->stream, "\n<hr>\n");
+ camel_stream_write_string (formatter->priv->stream, "\n\n");
+ /* use this when gtktmhl is fixed */
+ /* camel_stream_write_string (formatter->priv->stream, "\n<hr>\n"); */
}
diff --git a/camel/camel-multipart.c b/camel/camel-multipart.c
index d5c8f383aa..e6dbd40928 100644
--- a/camel/camel-multipart.c
+++ b/camel/camel-multipart.c
@@ -580,6 +580,7 @@ my_set_input_stream (CamelDataWrapper *data_wrapper, CamelStream *stream)
/* add the body part to the multipart object */
camel_multipart_add_part (multipart, body_part);
+ printf ("New Part\n");
}
diff --git a/camel/camel-seekable-substream.c b/camel/camel-seekable-substream.c
index df09e81ba5..b3628fa490 100644
--- a/camel/camel-seekable-substream.c
+++ b/camel/camel-seekable-substream.c
@@ -291,8 +291,6 @@ _read (CamelStream *stream, gchar *buffer, gint n)
and is incompatible with buffering.
*/
- printf ("in CamelSeekable::read stream=(%p) cur position : %d\n", seekable_stream, seekable_stream->cur_pos);
-
parent_stream_current_position =
camel_seekable_stream_get_current_position (seekable_substream->parent_stream);
@@ -307,19 +305,24 @@ _read (CamelStream *stream, gchar *buffer, gint n)
MIN (seekable_substream->sup_bound - position_in_parent, n);
else
nb_to_read = n;
-
+ //printf ("Nb to read = %d\n", n);
if (!nb_to_read) {
+
seekable_substream->eos = TRUE;
return 0;
}
+ /*printf ("In SeekableSubstream(%p)::read, the position has to be changed\n", stream);
+ printf ("--- parent_stream_current_position=%d, position_in_parent=%d\n",
+ parent_stream_current_position, position_in_parent);
+ printf ("--- seekable_substream->inf_bound=%d\n", seekable_substream->inf_bound);
+ printf ("--- seekable_substream->sup_bound=%d\n", seekable_substream->sup_bound);
+ printf ("--- seekable_substream->parent_stream=%p\n", seekable_substream->parent_stream);
+ */
/* go to our position in the parent stream */
if (parent_stream_current_position != position_in_parent) {
- printf ("In SeekableSubstream(%p)::read, the position has to be changed\n", stream);
- printf ("--- parent_stream_current_position=%d, position_in_parent=%d\n", parent_stream_current_position, position_in_parent);
- printf ("--- seekable_substream->inf_bound=%d\n", seekable_substream->inf_bound);
- printf ("--- seekable_substream->sup_bound=%d\n", seekable_substream->sup_bound);
- printf ("--- seekable_substream->parent_stream=%p\n", seekable_substream->parent_stream);
+
+
camel_seekable_stream_seek (seekable_substream->parent_stream,
position_in_parent,
CAMEL_STREAM_SET);
@@ -330,7 +333,6 @@ _read (CamelStream *stream, gchar *buffer, gint n)
camel_seekable_stream_get_current_position (seekable_substream->parent_stream);
if (parent_stream_current_position != position_in_parent) {
- printf ("Unable to set the position in the parent\n");
seekable_substream->eos = TRUE;
return 0;
}
@@ -352,7 +354,7 @@ _read (CamelStream *stream, gchar *buffer, gint n)
seekable_stream->cur_pos += v;
-
+ /* printf ("Nb Bytes Read : %d\n",v); */
/* return the number of bytes read */
return v;
}
@@ -430,7 +432,6 @@ _eos (CamelStream *stream)
g_assert (stream);
- printf ("** %% ** (%p)\n", stream);
if (seekable_substream->eos)
eos = TRUE;
else {
@@ -443,9 +444,7 @@ _eos (CamelStream *stream)
}
}
- if (eos)
- printf (" EOS\n");
-
+
return eos;
}
@@ -514,7 +513,6 @@ _seek (CamelSeekableStream *stream, gint offset, CamelStreamSeekPolicy policy)
seekable_stream->cur_pos = MIN (real_offset, substream_len);
} else
seekable_stream->cur_pos = 0;
- printf ("** set in substream %p, offset=%lld\n", stream, real_offset);
}
diff --git a/camel/camel-session.c b/camel/camel-session.c
index 6b93cc1d3f..b40de13714 100644
--- a/camel/camel-session.c
+++ b/camel/camel-session.c
@@ -23,6 +23,10 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA
*/
+
+
+
+
#include <config.h>
#include "camel-session.h"
#include "camel-store.h"
@@ -32,8 +36,12 @@
#include "url-util.h"
#include "hash-table-utils.h"
+
+
static GtkObjectClass *parent_class=NULL;
+
+
/* Returns the class for a CamelSession */
#define CSS_CLASS(so) CAMEL_SESSION_CLASS (GTK_OBJECT(so)->klass)
diff --git a/camel/camel-session.h b/camel/camel-session.h
index 838731b03c..282af88ffa 100644
--- a/camel/camel-session.h
+++ b/camel/camel-session.h
@@ -72,24 +72,24 @@ typedef struct {
/* public methods */
/* Standard Gtk function */
-GtkType camel_session_get_type (void);
-
-
-CamelSession *camel_session_new (CamelAuthCallback authenticator);
-void camel_session_set_provider (CamelSession *session, CamelProvider *provider);
-CamelStore *camel_session_get_store_for_protocol (CamelSession *session,
- const gchar *protocol,
- CamelException *ex);
-CamelStore *camel_session_get_store (CamelSession *session,
- const char *url_string,
- CamelException *ex);
-CamelTransport *camel_session_get_transport_for_protocol (CamelSession *session,
- const char *protocol,
- CamelException *ex);
-char *camel_session_query_authenticator (CamelSession *session, char *prompt,
- gboolean secret,
- CamelService *service, char *item,
- CamelException *ex);
+GtkType camel_session_get_type (void);
+
+
+CamelSession * camel_session_new (CamelAuthCallback authenticator);
+void camel_session_set_provider (CamelSession *session, CamelProvider *provider);
+CamelStore * camel_session_get_store_for_protocol (CamelSession *session,
+ const gchar *protocol,
+ CamelException *ex);
+CamelStore * camel_session_get_store (CamelSession *session,
+ const char *url_string,
+ CamelException *ex);
+CamelTransport * camel_session_get_transport_for_protocol (CamelSession *session,
+ const char *protocol,
+ CamelException *ex);
+char * camel_session_query_authenticator (CamelSession *session, char *prompt,
+ gboolean secret,
+ CamelService *service, char *item,
+ CamelException *ex);
#ifdef __cplusplus
}
diff --git a/camel/camel-stream-fs.c b/camel/camel-stream-fs.c
index 16c5da2ba6..5f533dad8a 100644
--- a/camel/camel-stream-fs.c
+++ b/camel/camel-stream-fs.c
@@ -161,7 +161,6 @@ static void
_set_bounds (CamelStreamFs *stream_fs, guint32 inf_bound, guint32 sup_bound)
{
- printf ("sup_bounds = %u\n", sup_bound);
/* store the bounds */
stream_fs->inf_bound = inf_bound;
stream_fs->sup_bound = sup_bound;
@@ -529,12 +528,11 @@ _seek (CamelSeekableStream *stream, gint offset, CamelStreamSeekPolicy policy)
- printf ("***** Seeking : real_offset=%d, whence=%d\n", real_offset, whence);
return_position = lseek (stream_fs->fd, real_offset, whence) - stream_fs->inf_bound;
- if (((CAMEL_SEEKABLE_STREAM (stream)->cur_pos + stream_fs->inf_bound) != return_position) && stream_fs->eof)
+ if (((CAMEL_SEEKABLE_STREAM (stream)->cur_pos) != return_position) && stream_fs->eof)
stream_fs->eof = FALSE;
- CAMEL_SEEKABLE_STREAM (stream)->cur_pos = return_position - stream_fs->inf_bound;
+ CAMEL_SEEKABLE_STREAM (stream)->cur_pos = return_position;
return return_position;
diff --git a/camel/gmime-utils.c b/camel/gmime-utils.c
index 69534ebdc0..989364fba9 100644
--- a/camel/gmime-utils.c
+++ b/camel/gmime-utils.c
@@ -271,7 +271,7 @@ gmime_read_line_from_stream (CamelStream *stream)
new_line = g_string_new ("");
do {
nb_char_read = camel_stream_read (stream, &next_char, 1);
- printf ("Nb char read: %d\n", nb_char_read);
+
if (nb_char_read>0) {
switch (next_char) {