Commit Graph

14 Commits

Author SHA1 Message Date
f5ed342cd3 #include camel-file-utils.h for camel_read()
* camel-block-file.c: #include camel-file-utils.h for camel_read()

	* camel-uid-cache.c (camel_uid_cache_save): Remove unused variable
	and label.

	* camel-url.c: #include camel-string-utils.h for camel_strdown

	* providers/pop3/camel-pop3-store.c (pop3_try_authenticate): Cast
	an (unsigned char *) to (char *) to fix a warning

svn path=/trunk/; revision=21902
2003-07-23 14:57:22 +00:00
2bd47d3cda Get rid of the #ifdef ENABLE_THREADS since we no longer plan to
2003-07-09  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-block-file.c: Get rid of the #ifdef ENABLE_THREADS since
	we no longer plan to support/maintain this.

	* camel.c: Same.

	* camel-certdb.c: Here too.

	* camel-charset-map.c: And here.

	* camel-cipher-context.c: "

	* camel-data-wrapper.c: "

	* camel-digest-folder.c: "

	* camel-exception.c: "

	* camel-folder.c: "

	* camel-folder-summary.c: "

	* camel-lock-client.c: "

	* camel-mime-utils.c: "

	* camel-object.c: "

	* camel-operation.c: "

	* camel-partition-table.c: "

	* camel-sasl-popb4smtp.c: "

	* camel-service.c: "

	* camel-session.c: "

	* camel-store.c: "

	* camel-store-summary.c: "

	* camel-text-index.c: "

	* camel-transport.c: "

	* camel-vee-folder.c: "

	* camel-tcp-stream-openssl.c: Removed pthread.h, it isn't needed.

svn path=/trunk/; revision=21777
2003-07-09 19:05:13 +00:00
11b8f83aad Updated (new copy/paste from e-iconv).
2003-07-08  Jeffrey Stedfast  <fejj@ximian.com>

	* camel-iconv.c: Updated (new copy/paste from e-iconv).

	* camel-block-file.c (camel_block_file_get_block): Use
	camel_read() rather than libc read.

	* camel-tcp-stream-raw.c (stream_read): Use camel_read().
	(stream_write): Use camel_write().

	* camel-stream-fs.c (stream_read): Use camel_read().
	(stream_write): Use camel_write().

svn path=/trunk/; revision=21759
2003-07-08 18:36:40 +00:00
c8de5a0059 Ensure cmdbuf is initialized to avoid compiler warning.
2003-05-16  Jeremy Katz  <katzj@redhat.com>

 	* providers/smtp/camel-smtp-transport.c (smtp_helo): Ensure cmdbuf
 	is initialized to avoid compiler warning.

 	* providers/local/camel-mbox-summary.c (summary_header_load): Cast
 	folder_size to uint32 to fix warning.
 	(camel_mbox_summary_sync_mbox): Update for new API.

 	* providers/imap/camel-imap-utils.c (parse_params):
 	imap_parse_nstring expects size_t, not int
 	(imap_body_decode): Likewise.

 	* camel-stream-filter.c (do_read): presize needs to be size_t
 	instead of int.
 	(do_write): Likewise.

 	* camel-seekable-substream.c (stream_read): Return ssize_t instead
 	of int to match prototypes.
 	(stream_write): Likewise.

 	* camel-mime-part.c (construct_from_parser): len needs to be
 	size_t instead of int.

 	* camel-mime-parser.c (folder_scan_step): datalength needs to be a
 	size_t* instead of an int* to make dependent APIs safe.
 	(camel_mime_parser_step): Likewise.
 	(folder_scan_content): Likewise.
 	* camel-mime-parser.h: Likewise.

 	* camel-mime-message.c (camel_mime_message_class_init): Use glib
 	macro for pointer/int conversions.
 	(construct_from_parser): Update for new API.

 	* camel-folder-summary.c
 	(camel_folder_summary_info_new_from_parser): Update len to be
 	size_t for new API.
 	(summary_build_content_info): Likewise.
 	* camel-http-stream.c (http_get_headers): Likewise.
 	* camel-mime-part-utils.c
 	(simple_data_wrapper_construct_from_parser): Likewise.
 	* camel-multipart-signed.c (signed_construct_from_parser): Likewise.
 	* camel-multipart.c (construct_from_parser): Likewise.

 	* camel-folder-search.c (match_words_index): Use glib macros for
 	pointer/int conversions.
 	* camel-html-parser.c (tokenise_setup): Likewise.
 	(convert_entity): Likewise.
 	* camel-block-file.c (block_hash_func): Likewise.
 	(camel_block_file_get_block): Likewise.
 	(camel_block_file_get_block): Likewise.
 	(camel_block_file_detach_block): Likewise.
 	* camel-session.c (session_thread_msg_new): Likewise.
 	(session_thread_msg_free): Likewise.
 	(session_thread_wait): Likewise.
 	* camel-text-index.c (text_index_compress_nosync): Likewise.
 	(text_index_compress_nosync): Likewise.
 	(camel_text_index_validate): Likewise.
 	* camel-vee-folder.c (vee_folder_remove_folder): Likewise.
 	(unmatched_check_uid): Likewise.
 	(folder_added_uid): Likewise.
 	(vee_folder_build_folder): Likewise.
 	(folder_changed_add_uid): Likewise.
 	(folder_changed_remove_uid): Likewise.
 	* providers/imap/camel-imap-search.c (imap_body_contains): Likewise.
 	* providers/pop3/camel-pop3-folder.c (cmd_list): Likewise.
 	(cmd_uidl): Likewise.

 	* camel-data-cache.c (data_cache_init): Cast to CamelCopyFunc.
 	Fixes a warning.

svn path=/trunk/; revision=21220
2003-05-16 18:47:59 +00:00
04ccbdd8e8 ** for #40989
2003-04-17  Not Zed  <NotZed@Ximian.com>

        ** for #40989

        * camel-text-index.c (text_index_delete): delete the block
        file/key file directly, not just its files.

        * providers/local/camel-local-folder.c (local_delete): implement,
        just delete the index file if it exists.
        camel-store-delete-folder will delete other data (maybe it all
        should be done here).

        * camel-block-file.c (camel_key_file_finalise): keep lock around
        decrementing key file use count.
        (camel_key_file_delete): new function to delete the key file (&
        close it off).
        (key_file_use): if we've been deleted, always fail.
        (camel_block_file_finalise): only close the file if its a valid
        fd.
        (block_file_use): if we've been deleted, always fail.
        (camel_block_file_delete): delete the block file & close.
        (struct _CamelBlockFilePrivate): fix the !ENABLE_THREADS case to
        still compile this.

svn path=/trunk/; revision=20894
2003-04-19 03:15:54 +00:00
a65c7bb476 If we have no data written to a key, dont add it, or its partition header.
2002-09-24  Not Zed  <NotZed@Ximian.com>

        * camel-text-index.c (text_index_compress_nosync): If we have no
        data written to a key, dont add it, or its partition header.

2002-09-23  Not Zed  <NotZed@Ximian.com>

        * camel-block-file.c (sync_nolock): Mark root block dirty if we're
        going to sync it.
        (camel_key_file_finalise): de-count the active list if we close
        it.

        * camel-text-index.c (text_index_delete): Implement.
        (text_index_compress_nosync): Use index_delete when we're finished
        with the old one, so it is properly deactivated.

        * camel-index.c (camel_index_delete): Remove api call.  Mark index
        deleted in new state variable.
        (camel_index_*): Wrap all calls in check for deleted state.

svn path=/trunk/; revision=18189
2002-09-24 01:16:12 +00:00
6b132fe48a Change the case sensitive search of subject to expect case insensitive
2002-08-29  Not Zed  <NotZed@Ximian.com>

        * tests/folder/test3.c: Change the case sensitive search of
        subject to expect case insensitive results, as the behaviour has
        changed.
        (main): Made the search content before sync nonfatal.  its
        something that needs to be fixed but not practical concern in
        evolution.

        * camel-block-file.c (block_file_validate_root): Only spit out the
        invalid root warnings if the file isn't empty.

        * camel-text-index.c (text_index_compress_nosync): Swap the path
        as well when we compress.

        * camel-mime-parser.c (folder_scan_content): Treat the end of file
        as a boundary if we're scanning From lines, and drop the last \n.
        (folder_scan_init_with_fd): Dont pre-read from the fd, and init eof.
        (folder_scan_init_with_stream): Similar.
        (folder_read): Handle eof, and set eof on 0 read.
        (folder_seek): Dont pre-read after a seek, and reset eof flag.
        (camel_mime_parser_init_with_fd): Fix doco, no pre-read occurs
        anymore.
        (camel_mime_parser_init_with_stream): Same.

        * providers/local/camel-mbox-summary.c
        (camel_mbox_summary_sync_mbox): Add a \n to end of content of each
        message, not at start.

        * providers/local/camel-mbox-folder.c (mbox_append_message):
        Instead of appending "\nFrom " to a mailbox, start with "From ",
        and append a \n after the message always.  For better mutt/elm
        compatability.  Also, unlock after we've stat'd.
        (mbox_append_message): Set the message's from_pos exactly as the
        mbox size.

svn path=/trunk/; revision=17921
2002-08-29 12:04:34 +00:00
74ae9178ab Free the response before checking for errors. I'm not sure this'll
2002-05-30  Jeffrey Stedfast  <fejj@ximian.com>

	* providers/imap/camel-imap-folder.c (imap_rescan): Free the
	response before checking for errors. I'm not sure this'll actually
	fix the memory leak here, but it might? Certainly can't hurt.

	* camel-block-file.c (camel_block_file_finalise): Destroy the
	blocks hash table.

svn path=/trunk/; revision=17053
2002-05-31 00:00:16 +00:00
4655d88867 Check for LOGIN xxxx as well if debug is on, so we dont print passwords to
2002-05-07  Not Zed  <NotZed@Ximian.com>

        * camel-remote-store.c (remote_send_string): Check for LOGIN xxxx
        as well if debug is on, so we dont print passwords to evolution
        logs.

        * providers/imap/camel-imap-utils.c (imap_is_atom_char): This was
        really broken.  1. isprint() is locale dependent, and 2. it looked
        up an 8 bit value in a 7 bit table without truncating it.  I've
        removed the isprint() stuff and just put it directly into the
        special table, which i've expanded to the right size too.

        * providers/imap/*: Applied patch from Preston Elder
        <prez@magick.tm> to make camel only use literals if it needs to
        for simple strings.  Changed slightly to use imap_is_atom() and
        more consistent formatting.
        providers/imap/camel-imap-utils.c (imap_is_atom): Chagned from
        imap_needs_quoting().

        ** Merged in camel-object2 branch.  Simpler camelobject
        implementation + object args interface.

        * camel.c (camel_init): Call camel_object_get_type() to make sure
        camel_object_type is initialised.

        * camel-object.h (CAMEL_OBJECT_TYPE): Changed to return global
        camel_object_type pointer, not call camel_object_get_type.

svn path=/trunk/; revision=16701
2002-05-07 07:31:26 +00:00
df00976fe4 Remove the excessive \n's, after printfs.
2002-04-26  Not Zed  <NotZed@Ximian.com>

        * camel-block-file.c (block_file_validate_root): Remove the
        excessive \n's, after printfs.

        * camel-text-index.c (text_index_compress_nosync): @!#$@#$!@$#!.
        Since the rename op was fixed, this broke compression's rename,
        resulting in the index 'vanishing' after every compress
        (i.e. after every reindex).  Fix this code to account for the
        fixed rename operation.

svn path=/trunk/; revision=16591
2002-04-26 05:13:45 +00:00
d89f072f8d If we get multiple Content-Type header values, change subsequent headers
2002-04-09  Not Zed  <NotZed@Ximian.com>

        * camel-mime-part.c (construct_from_parser): If we get multiple
        Content-Type header values, change subsequent headers to
        X-Invalid-Content-Type so it doesn't wreck processing.  This fixes
        the reported case in #18929, but i dont know if it fixes the
        original posters problems.

2002-04-08  Not Zed  <NotZed@Ximian.com>

        * camel-vtrash-folder.c (vtrash_move_messages_to): If we find
        we're moving from the vtrash to another folder, we need to convert
        the uid from a vfolder uid to the source uid (+8).  Fix for
        #20886.  Also changed to batch multiple moves to different folders
        so they are done as efficiently as possible rather than one at a
        time.

        * camel-mime-utils.c (base64_decode_step): If we only get passed
        '=', we back track only if we actually output any data.  Fix for
        #21716.
        (quoted_decode): Pass out size_t instead of int, and use 0 instead
        of -1 for error since its not signed.  This will fix similar bug
        to above in different circumstances since the result is taken as
        unsigned.  This is only an internal func.
        (quoted_encode): Return size_t just for consistency.

        * camel-block-file.c (block_file_validate_root): Comment out the
        debug and move it into a warning when the validation fails.

svn path=/trunk/; revision=16394
2002-04-09 13:45:44 +00:00
e9a1f5121d Turn indexing back on, fingers crossed ...
2002-04-03  Not Zed  <NotZed@Ximian.com>

        * providers/local/camel-local-folder.c
        (camel_local_folder_construct): Turn indexing back on, fingers
        crossed ...

        * camel-block-file.c (sync_nolock): #!@$@$#@~#$
        DF@#$!Q@$#!@$#!#%.  Well it helps if we're iterating a list to
        iterate the node pointer ...

        * camel-text-index.c (text_index_sync): Sync the key tables
        explcitly.
        (text_index_sync): Debug out frag info.
        (camel_text_index_dump): Added a (rather large, but optional) raw
        dumping mode for debugging purposes.

        * camel-partition-table.c (camel_key_table_finalise): Sync root
        block when done.

svn path=/trunk/; revision=16329
2002-04-03 13:28:30 +00:00
0b20695032 Sync the key tables explcitly.
2002-04-03  Not Zed  <NotZed@Ximian.com>

        * camel-text-index.c (text_index_sync): Sync the key tables
        explcitly.

        * camel-partition-table.c (camel_key_table_finalise): Sync root
        block when done.
        (camel_key_table_sync): New function, sync key table (root) explicitly.

2002-04-02  Not Zed  <NotZed@Ximian.com>

        * camel-block-file.c (camel_block_file_free_block): Mark root
        block dirty when we change it (this function isn't used yet
        anyway).

        * camel-text-index.c (text_index_add_name_to_word): Touch the root
        block when we modify the counts.  Also, abort processing on any
        errors.
        (text_index_sync): Fix typo in comments.  Sync the block file
        inside the lock.
        (text_index_compress_nosync): Lock the old index while we're
        compressing.
        (text_index_compress_nosync): Remove the bogus while() at the end
        of the while() loops!  Also plug a memleak - records weren't
        freed.
        (text_index_rename): Lock around rename op.
        (text_index_add_name): More typos.
        (text_index_sync): Touch root when changing it.
        (text_index_add_name): "
        (text_index_delete_name): "
        (camel_text_index_new): Touch root if we change it.
        (text_index_cursor_reset): Make sure we NULL pointers after we
        free them (nothing uses this yet).

        * camel-partition-table.c (hash_key): Remove some debug
        accidentally left in.
        (camel_partition_table_add): When linking in the next block list,
        set the right previous pointer.
        (camel_key_table_add): Simplify the 'left' calculation (it was
        already ok though).
        (camel_key_table_next): Initialise returns before processing.
        Broaden the lock slightly, and simplify validity calculations.

svn path=/trunk/; revision=16323
2002-04-02 20:03:42 +00:00
c6fc4e27a9 When we add a new name, up all of the cache limits, because we're probably
2002-03-25  Not Zed  <NotZed@Ximian.com>

        * camel-text-index.c (text_index_add_name): When we add a new
        name, up all of the cache limits, because we're probably going to
        be adding more.
        (text_index_sync): Drop the cache limits back down again, we dont
        need them when looking words up.

        ** MERGE camel_index branch.

        * camel-text-index.[ch]: Added files i forgot to add (eep nearly
        lost all this work!)

        * camel-block-file.c (sync_nolock): Fix an infinite loop in syncing.

svn path=/trunk/; revision=16242
2002-03-25 12:11:44 +00:00