From fce26238c489db149f63164f13adf4bdb83d6062 Mon Sep 17 00:00:00 2001 From: Miguel de Icaza Date: Thu, 15 Jul 1999 00:11:56 +0000 Subject: Implemented base64 encoder based on CamelStreams. Should the 1999-07-13 Miguel de Icaza * camel/gmime-base64.c (gmime_encode_base64): Implemented base64 encoder based on CamelStreams. Should the encoder/decoder be a Stream itself? * camel/gmime-utils.c: include config.h here. * camel/url-util.c: ditto. * camel/gstring-util.c: ditto. * camel/gmime-content-field.c: ditto. * camel/camel-stream.c: ditto. * camel/camel-stream-fs.c: ditto. * camel/camel-store.c: ditto. * camel/camel-simple-data-wrapper.c: ditto. * camel/camel-session.c: ditto. * camel/camel-service.c: ditto. * camel/camel-mime-part.c: ditto. * camel/camel-mime-message.c: ditto. * camel/camel-log.c: ditto. * camel/camel-data-wrapper.c: ditto * camel/camel-folder.c: ditto. * camel/camel-stream.c (camel_stream_write): Moved api documentation to the places that they document. (camel_stream_class_init): Virtual classes do not need to have a default implementation. So null them all. (camel_stream_write): Return value from write. (camel_stream_available): implement. (camel_stream_write_strings): documented. * devel-docs/query/virtual-folder-in-depth.sgml: Small reformatting 1999-06-28 bertrand * tests/test2.c (main): now use CamelDataWrapper::contruct_form_stream to test svn path=/trunk/; revision=1024 --- camel/camel-stream-fs.c | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) (limited to 'camel/camel-stream-fs.c') diff --git a/camel/camel-stream-fs.c b/camel/camel-stream-fs.c index 09b193b229..0b70802943 100644 --- a/camel/camel-stream-fs.c +++ b/camel/camel-stream-fs.c @@ -21,7 +21,7 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * USA */ - +#include #include "camel-stream-fs.h" #include #include @@ -32,7 +32,7 @@ static CamelStreamClass *parent_class=NULL; -/* Returns the class for a CamelMimeMessage */ +/* Returns the class for a CamelStreamFS */ #define CS_CLASS(so) CAMEL_STREAM_FS_CLASS (GTK_OBJECT(so)->klass) static gint _read (CamelStream *stream, gchar *buffer, gint n); @@ -101,13 +101,17 @@ camel_stream_fs_new_with_name (GString *name, CamelStreamFsMode mode) CAMEL_LOG (FULL_DEBUG, "Entering CamelStream::new_with_name, name=\"%s\", mode=%d\n", name->str, mode); v = stat (name->str, &s); - if (mode & CAMEL_STREAM_FS_READ) - if (mode & CAMEL_STREAM_FS_WRITE) flags = O_RDWR | O_CREAT; - else flags = O_RDONLY; - else - if (mode & CAMEL_STREAM_FS_WRITE) flags = O_WRONLY | O_CREAT; - else return NULL; - + if (mode & CAMEL_STREAM_FS_READ){ + if (mode & CAMEL_STREAM_FS_WRITE) + flags = O_RDWR | O_CREAT; + else + flags = O_RDONLY; + } else { + if (mode & CAMEL_STREAM_FS_WRITE) + flags = O_WRONLY | O_CREAT; + else + return NULL; + } if ( (mode & CAMEL_STREAM_FS_READ) && !(mode & CAMEL_STREAM_FS_WRITE) ) if (v == -1) return NULL; -- cgit v1.2.3