Commit Graph

17 Commits

Author SHA1 Message Date
08fb7329cb Fixing the license text.
svn path=/trunk/; revision=14212
2001-10-27 16:59:46 +00:00
02dcd0aadf Update the licensing information to require version 2 of the GPL
(instead of version 2 or any later version).

svn path=/trunk/; revision=14190
2001-10-27 00:25:49 +00:00
91cc026904 Update the copyrights, replacing Helix Code with Ximian and
helixcode.com with ximian.com all over the place.

svn path=/trunk/; revision=10440
2001-06-23 08:52:02 +00:00
fe962a2055 Big header cleanups and nntp compile fix
svn path=/trunk/; revision=9024
2001-03-29 20:31:40 +00:00
d39149c579 New file - utility functions for locking using different strategies and/or
2000-11-16  Not Zed  <NotZed@HelixCode.com>

        * camel-lock.c: New file - utility functions for locking using
        different strategies and/or for locking folders safely.

        * Makefile.am (libcamel_la_SOURCES): Adde camel-lock.[ch]

svn path=/trunk/; revision=6590
2000-11-16 08:36:39 +00:00
65ec43cb55 Use CamelException to signal failure. (camel_stream_write_strings):
* camel-stream.c (camel_stream_read, camel_stream_write,
	camel_stream_flush, camel_stream_reset, camel_stream_printf,
	camel_stream_write_to_stream): Use CamelException to signal
	failure.
	(camel_stream_write_strings): Remove. camel_stream_printf is more
	useful in most of the places that used this.
	(camel_stream_write_string): Change from macro to function to
	prevent problems with double-evaluation.

	* camel-seekable-stream.c (camel_seekable_stream_seek,
	camel_seekable_stream_set_bounds): Use CamelException.
	(reset): Update.

	* camel-seekable-substream.c, camel-stream-buffer.c,
	camel-stream-filter.c, camel-stream-fs.c, camel-stream-mem.c:
	Update.

	* camel-stream-fs.c: Remove the virtual init functions and move
	the code into the creator functions. Add CamelExceptions to
	creation functions that could fail.

	* camel-data-wrapper.c (camel_data_wrapper_write_to_stream): Use
	CamelException.
	* camel-mime-message.c, camel-mime-part.c, camel-multipart.c
	(write_to_stream): Update.

	* camel-mime-parser.c: add an exception to the mime parser private
	data and pass that to stream functions as needed.

	* gmime-content-field.c, md5-utils.c: Update (badly) for stream
	changes.

	* camel-exception.h (camel_exception_is_set): convenience macro.

	* providers/Makefile.am: disable SMTP for now

	* providers/mbox/camel-mbox-folder.c (mbox_append_message): Pass
	CamelException to the functions that now need it. Check the
	exception after calling camel_stream_flush, and fail if it fails.
	(mbox_get_message_by_uid): More updates.

	* providers/pop/camel-pop3-folder.c,
	providers/pop/camel-pop3-store.c,
	providers/sendmail/camel-sendmail/transport.c: Update.

svn path=/trunk/; revision=2924
2000-05-08 22:27:59 +00:00
580d885820 Make camel not leak like a sieve.
* camel-object.c: New subclass of GtkObject which is now the base
	of the Camel object hierarchy. Currently the only difference
	between CamelObject and GtkObject is that CamelObjects don't start
	out floating.

	* *.h: Move a bunch of typedefs to camel-types.h. Standardize on
	using <camel/foo.h> in header files rather than <foo.h>, "foo.h",
	or "camel/foo.h". Remove some unneeded includes.

	* camel-address.c, camel-data-wrapper.c, camel-folder-search.c,
	camel-folder-summary.c, camel-folder.c, camel-mime-filter.c,
	camel-mime-parser.c, camel-service.c, camel-session.c,
	camel-stream.c: These are now subclasses of CamelObject.

	* camel-data-wrapper.c (set_output_stream):
	* camel-medium.c (set_content_object):
	* camel-seekable-substream.c
	(init_with_seekable_stream_and_bounds):
	* providers/mbox/camel-mbox-folder.c (mbox_get_message_by_uid):
	remove gtk_object_sink calls.

	* camel-stream-buffer.c (init_vbuf):
	* camel-stream-filter.c (camel_stream_filter_new_with_stream):
	ref the original stream.

	* camel-folder-summary.c (camel_folder_summary_finalise): unref
	the filters when finalizing.

	* camel-mime-part-utils.c
	(simple_data_wrapper_construct_from_parser,
	camel_mime_part_construct_content_from_parser):
	* camel-mime-part.c (camel_mime_part_set_content): Unref objects
	that are created only to be handed off to other objects. If
	they're going to be needed later, they will have been additionally
	ref'ed by the object that needs them.

	* providers/pop3/camel-pop3-folder.c (get_message_by_number):
	unref the message stream after creating the data from it.

	* camel-stream.c, camel-stream-buffer.c, camel-stream-filter.c,
	camel-stream-fs.c, camel-stream-mem.c: Remove camel_stream_close,
	since its semantics are dubious (what happens when you close a
	stream other people still have references on?).

	* providers/nntp/camel-nntp-store.c:
	* providers/smtp/camel-smtp-transport.c:
	* providers/pop3/camel-pop3-store.c:
	replace camel_stream_close calls with gtk_object_unref.

	* providers/mbox/camel-mbox-folder.c:
	* providers/nntp/camel-nntp-folder.c:
	* providers/sendmail/camel-sendmail-transport.c:
	replace camel_stream_close with camel_stream_flush +
	gtk_object_unref

svn path=/trunk/; revision=2882
2000-05-07 21:56:32 +00:00
1e7ab47d26 fix the name of "Helix Code, Inc." in all the copyrights
svn path=/trunk/; revision=2091
2000-03-09 19:52:48 +00:00
f65a2d78c6 fix to show a sample correct implementation.
2000-02-22  bertrand  <Bertrand.Guiheneuf@aful.org>

	* message-list.c (message_list_set_folder):
	fix to show a sample correct implementation.

	* camel-folder.c (camel_folder_get_subfolder):
	(camel_folder_create):
	(camel_folder_delete):
	(camel_folder_delete_messages):
	(camel_folder_list_subfolders):
	(camel_folder_expunge):
	(camel_folder_get_message_by_number):
	(camel_folder_get_message_count):
	(camel_folder_append_message):
	(camel_folder_copy_message_to):
	(camel_folder_get_summary):
	(camel_folder_get_message_uid):
	(camel_folder_get_message_by_uid):
	(camel_folder_get_uid_list):
	Check folder state (open/close) and raise an
	exception if it is not ok.

	* providers/mbox/camel-mbox-folder.c (_create):
	create the file and the path with two different
	names.

	* camel-folder.c (_create): handle the case
	when the folder name starts with '/'

	* camel-exception.c (camel_exception_new): use
	(void) instead of () in decl.

	* camel-exception.h: cosmetic fixes.

	* camel-exception.c (camel_exception_init): new routine.
	Fix a bug in mail/message-list.c


	* camel-folder.h: cosmetic changes.

	* camel-stream-b64.c (reset__static): added a
	reset method. Thanks message-browser to find
	so much bugs :)

	* providers/mbox/Makefile.am (libcamelmbox_la_LIBADD): readd
	Unicode libs.

Fixes and exception handling in camel-folder.
Fixes in mail/evolution-mail to make it not
segfault and to demonstrate a correct implementation.

svn path=/trunk/; revision=1902
2000-02-22 11:16:36 +00:00
e72c45d304 New header with the typedefs for all camel classes. Now the class headers
* camel/camel-types.h: New header with the typedefs for all camel
	classes. Now the class headers can just include this and the
	header for the parent type. This makes it possible for
	CamelService to include a CamelSession without creating an
	#include loop.

	* camel/*:
	* composer/e-msg-composer-attachment-bar.h:
	* mail/folder-browser.c:
	* mail/message-list.c: frob #includes to match the new reality

svn path=/trunk/; revision=1850
2000-02-19 01:40:57 +00:00
316a4c47ff Updated my e-mail address to reflect my new employment
svn path=/trunk/; revision=1533
2000-01-03 23:05:55 +00:00
23185a2546 Backup sync.
svn path=/trunk/; revision=1520
1999-12-27 09:25:21 +00:00
0c6cc80cdf use exception mechanism. (camel_folder_set_name): idem.
1999-12-17  bertrand  <Bertrand.Guiheneuf@aful.org>

	* camel/camel-folder.c (_set_name):
	use exception mechanism.
	(camel_folder_set_name): idem.
	(camel_folder_set_full_name): idem.
	(_get_name): idem.
	(camel_folder_get_name): idem.
	(_get_full_name): idem.
	(camel_folder_get_full_name): idem.
	(_can_hold_folders): idem.
	(_can_hold_messages): idem.
	(_exists): idem.
	(camel_folder_exists): idem.
	(_is_open): idem.
	(_get_subfolder): idem.
	(camel_folder_get_subfolder): idem.

	* camel/camel-exception.c (camel_exception_clear):
	New function. Clear an exception.
	(camel_exception_get_id):
	New function.
	(camel_exception_get_description):
	New function.

	* camel/camel-folder.c (_set_name):
	Use the exception system. When the folder
	has no parent, don't set its full name
	field.

svn path=/trunk/; revision=1499
1999-12-17 19:19:59 +00:00
331335d12c Fix copyright informations once again
svn path=/trunk/; revision=1489
1999-12-14 22:40:38 +00:00
8fe1aa5f41 Copyright change
svn path=/trunk/; revision=1348
1999-10-23 15:19:51 +00:00
bf9f54f961 A lot of changes. The thread proxy mechanism
is now functional. The signal proxy needs to be tested
though. The thread proxy folder is being implemented.
A rough summary :

1999-10-13  bertrand <Bertrand.Guiheneuf@aful.org>

	* camel/camel-folder.c (camel_folder_close): the
	folder->close method is now asynchronous.

	* camel/camel-folder-pt-proxy.c (_folder_open_cb):
	(_open):
	(_folder_open_cb):
	(_open):
	open/close method implemented in the thread proxy
	folder. More to come.

	* camel/camel-exception.c (camel_exception_xfer):
	new utility func.

	* camel/camel-marshal-utils.c: some new marshallers

	* camel/camel-folder-pt-proxy.c: Some explanations
	on the thread proxy system.

1999-10-11  bertrand <Bertrand.Guiheneuf@aful.org>

	* camel/camel-marshal-utils.c:
	camel/camel-marshal-utils.h:
	Handles operation marshalling.

	* camel/camel-thread-proxy.c:
	camel/camel-thread-proxy.h:
	new files. Generic proxy system.

	* camel/camel-folder-pt-proxy.c
	moved all proxy related code in dedicated files.

	(camel_folder_pt_proxy_init):
	removed proxy initialisation code
	(_finalize):
	removed proxy finalization code


	* camel/camel-exception.c
	(camel_exception_new):
	(camel_exception_set):
	(camel_exception_free):
	New funcs.

svn path=/trunk/; revision=1328
1999-10-13 21:16:55 +00:00
6d24357f78 sync
svn path=/trunk/; revision=1255
1999-09-23 15:15:40 +00:00