aboutsummaryrefslogtreecommitdiffstats
path: root/camel/providers/local/camel-spool-summary.c
Commit message (Collapse)AuthorAgeFilesLines
* If the last message(s) were deleted, and we had any messages output,Not Zed2002-04-111-0/+7
| | | | | | | | | | | | | | | | | 2002-04-11 Not Zed <NotZed@Ximian.com> * providers/local/camel-spool-summary.c (spool_summary_sync_full): If the last message(s) were deleted, and we had any messages output, account for the lost \n of the following From line by adding an extra \n. fix for #8214. 2002-04-10 Not Zed <NotZed@Ximian.com> * camel-mime-part-utils.c (convert_buffer): If we get a 0 length input, return a 0 lenght output as valid - fixes bugs with some iconv impl and its simpler anyway. svn path=/trunk/; revision=16438
* When we add a new name, up all of the cache limits, because we're probablyNot Zed2002-03-251-1/+4
| | | | | | | | | | | | | | | | | | | 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
* The day number has to be 2 chars wide, space filled to work properly withNot Zed2002-02-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2002-02-08 Not Zed <NotZed@Ximian.com> * providers/local/camel-spool-summary.c (camel_spool_summary_build_from): The day number has to be 2 chars wide, space filled to work properly with pine, etc. * providers/local/camel-spoold-store.[ch]: new type of provider 'spool directory', which lets you view external mbox dirs without adding any extra cruft. Perhaps it should use . files to store summaries? Still a bit experimental, there's a warning when you select it in the account editor. Finished off most of #1185. Can't rename or move folders. * camel-mime-utils.c (header_decode_date): If the date is 100->1900 then we actually want to use it as the year in the tm struct, not year+100. e.g. year 102 -> 2002, not 2102. 2002-02-07 Not Zed <NotZed@Ximian.com> * providers/local/camel-spool-store.c (get_folder): Pass path into spool_folder_new. * providers/local/camel-spool-folder.c (camel_spool_folder_new): (camel_spool_folder_construct): Take the full path to the folder and use that as the file path, independent of the full_name we use. 2002-02-07 Not Zed <NotZed@Ximian.com> * providers/local/camel-local-provider.c: Added new type, spoold provider, spoold: for local directories. * providers/imap/camel-imap-store.c (get_one_folder_offline): Create offline uri's in a compatible manner to online ones. svn path=/trunk/; revision=15606
* More fixing of the license texts.Ettore Perazzoli2001-10-281-12/+11
| | | | svn path=/trunk/; revision=14217
* No, use Storing, as the other code does :p (spool_summary_check): Check22001-10-231-3/+3
| | | | | | | | | | 2001-10-22 <NotZed@Ximian.com> * providers/local/camel-spool-summary.c (summary_rebuild): No, use Storing, as the other code does :p (spool_summary_check): Check for consistency. svn path=/trunk/; revision=13904
* s/summarising/summarizing/. (spool_summary_check): s/summarise/summarize/.Jon Trowbridge2001-10-231-3/+3
| | | | | | | | | | 2001-10-22 Jon Trowbridge <trow@ximian.com> * providers/local/camel-spool-summary.c (summary_rebuild): s/summarising/summarizing/. (spool_summary_check): s/summarise/summarize/. svn path=/trunk/; revision=13902
* General cleanup of camel debug printfs.92001-09-191-1/+1
| | | | | | | | | | | | | | | | | 2001-09-19 <NotZed@Ximian.com> * General cleanup of camel debug printfs. * camel-lock.c (camel_lock_fcntl): Changed to return 'success' if the error indicates file locking isn't supported on this filesystem. Still return a warning just incase (if its the first time). Might fix a lot of reported bugs. * providers/local/camel-spool-store.c (get_folder_info): Dont include the empty // host part in the uri. This 'breaks' the service lookup. svn path=/trunk/; revision=12973
* If filter inbox is set on the store, and we're opening inbox '', then82001-09-191-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-09-18 <NotZed@Ximian.com> * providers/local/camel-maildir-folder.c (camel_maildir_folder_new): If filter inbox is set on the store, and we're opening inbox '', then enable filtering on new messages. * providers/local/camel-local-folder.c (camel_local_folder_construct): After loading the summary, check it, and only abort if that fails. Also maintain the changes count. * providers/local/camel-local-summary.c (camel_local_summary_load): Remove summary_check code from here. (camel_local_summary_check): Sync index/summary here, if we were successful. * providers/local/camel-spool-folder.c (camel_spool_folder_new): If we have filter-new-messages-on-inbox set and we just opened inbox, turn on filtering on this folder. (camel_spool_folder_construct): Keep track of changes for the folder, so that filter-new-messages works right (?) * providers/local/camel-spool-store.c (get_folder): Pass 'INBOX' as the folder name, not the path. * camel-folder-search.c (search_not): Modified patch from <peterw@ximian.com> since the summary is messageinfo's, not strings. ** Ok so the problem with the stuff below is that maildir/spool 'summary_load' throws away all events, including recents, joy eh? * providers/local/camel-maildir-summary.c (maildir_summary_check): Add new messages to the recent changeinfo. * providers/local/camel-spool-summary.c: Mark 'new' message as recent, for later processing if required (i.e. 'filter new messages'). * camel-store.c (construct): new function, cascade up construct method and check for 'filter' param, and set accordingly for any one that might want it. * providers/imap/camel-imap-store.c (construct): map the param_filter_inbox flag to the store->flags as CAMEL_STORE_FILTER_INBOX. * camel-store.h (CAMEL_STORE_FILTER_INBOX): new flag to tell it to filter inbox. * providers/imap/camel-imap-folder.h: Removed do_filtering flag from CamelImapFolder. * providers/imap/camel-imap-folder.c (imap_update_summary): Remove the 'recents' parameter, use the 'changes' parameter instead to convey this info. (camel_imap_folder_changed): Changed for update_summary api change. Now always just emit the changed event if we have any changes to report, filtering code removed, handled upstream. (filter_proc): (filter_free): Removed old filtering code. (camel_imap_folder_new): Set the filter_recent flag on the folder if we're the inbox and filtering of inbox is enabled. * camel-folder.c (folder_changed): If we have 'recent' messages, and are set to filter recents, then freeze the folder and launch a thread to do the processing (or similar if threading not enabled). (thaw): Make sure we emit the changed signal outside of owning the lock and if things have changed. Also, no longer bother downgrading folder_changed events to message_changed events. * camel-folder.h (struct _CamelFolder): Added filter_recent flag -> signifies all recent messages in folder should be filtered. * camel-session.c: (camel_session_thread_msg_new, camel_session_thread_msg_free, camel_session_thread_queue, camel_session_thread_wait): code to handle async operations as part of camel processing. (camel_session_finalise): free thread_lock, destroy thread, active hash, etc. (camel_session_init): init thread, active hash, etc. (camel_session_class_init): Init virtual functions. (session_thread_msg_new, session_thread_msg_free, session_thread_destroy, session_thread_received, session_thread_queue, session_thread_wait): default implementation of session threads stuff. 2001-09-17 <NotZed@Ximian.com> * camel-folder.c (camel_folder_change_info_recent_uid): New function to add a 'recent' uid to the change info. (camel_folder_change_info_clear): Clear recent list. (camel_folder_change_info_free): Free recent list. (camel_folder_change_info_new): Setup recent list. * camel-folder.h: Added a uid_recent item to the folder_changed event data. * providers/local/camel-maildir-store.c (scan_dir): Free new in the right block. * providers/local/camel-local-provider.c: Add local config entries to filter on new messages in spool and maildir provider. * camel-vee-folder.c (vee_folder_construct): Remove the assertion which stops ? in names from being allowed. svn path=/trunk/; revision=12956
* Likewise.Not Zed2001-09-081-4/+4
| | | | | | | | | | | | | | | 2001-09-08 Not Zed <NotZed@Ximian.com> * providers/local/camel-spool-summary.c (spool_summary_sync_full): Likewise. * providers/local/camel-mbox-summary.c (mbox_summary_sync_full): Fix the wording. * camel-tcp-stream-raw.c (stream_read): Save errno around fcntl call in cancellable read case. Also, loop while we get EINTR. This might fix some weird reconnect behaviour with pop. (stream_write): " svn path=/trunk/; revision=12700
* ["Summarising" and "Synchronising" are spelt with a "s" in ENGLISH]Not Zed2001-08-251-4/+4
| | | | | | | | | | | | | | | 2001-08-25 Not Zed <NotZed@Ximian.com> ["Summarising" and "Synchronising" are spelt with a "s" in ENGLISH] * providers/local/camel-mbox-summary.c (mbox_summary_sync_quick): s/Synchronizing/Synchronising/. * providers/local/camel-mbox-summary.c (summary_rebuild): s/Summarizing/Summarising/ svn path=/trunk/; revision=12470
* Revert Not Zed's previous commits as they apparently can cause seriousPeter Williams2001-08-251-4/+4
| | | | | | | | | 2001-08-24 Peter Williams <peterw@ximian.com> * Revert Not Zed's previous commits as they apparently can cause serious data loss for POP3 users. svn path=/trunk/; revision=12461
* Likewise.Not Zed2001-08-241-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-08-24 Not Zed <NotZed@Ximian.com> * providers/local/camel-spool-summary.c (summary_rebuild): Likewise. * providers/local/camel-mbox-summary.c (summary_rebuild): Summarising is spelt with an s. 2001-08-23 Not Zed <NotZed@Ximian.com> * camel-mime-part.c (write_to_stream): If we have rawtext, then dont do any charset conversion, only encoding/crlf conversion. * camel-data-wrapper.h (struct _CamelDataWrapper): Added 'rawtext' member, says the character encoding is raw, not utf8. * providers/local/camel-spool-summary.c (spool_summary_sync_quick): Synchronising is spelt with an s, not a z. (spool_summary_sync_full): " * providers/local/camel-mbox-summary.c (mbox_summary_sync_full): No, synchronising is spelt with an s. (mbox_summary_sync_quick): " * camel-mime-part-utils.c (camel_mime_part_construct_content_from_parser): Remove the warnings which aren't going anywhere fast. (convert_buffer): Function to convert a bytearray of textual content from one charset to another. If the charset doesn't exist or fails, then do no conversion. (simple_data_wrapper_construct_from_parser): First, read in data, then try and convert it using the specified charset if supplied. If that fails, then dont do any conversion, and leave as raw. Also, if we have any x-* charsets, then dont do any processing. svn path=/trunk/; revision=12429
* Add a missing \n to the end of a printf.Peter Williams2001-08-241-1/+1
| | | | | | | | | | | 2001-08-23 Peter Williams <peterw@ximian.com> * providers/local/camel-mbox-summary.c (summary_rebuild): Add a missing \n to the end of a printf. * providers/local/camel-spool-summary.c (summary_rebuild): Same. svn path=/trunk/; revision=12421
* s/Synchronising/Synchronizing/. (mbox_summary_sync_quick): Likewise.Ettore Perazzoli2001-08-201-2/+2
| | | | | | | | | | | * providers/local/camel-mbox-summary.c (mbox_summary_sync_full): s/Synchronising/Synchronizing/. (mbox_summary_sync_quick): Likewise. * providers/local/camel-spool-summary.c (spool_summary_sync_full): Likewise. (spool_summary_sync_quick): Likewise. svn path=/trunk/; revision=12269
* s/summarising/summarizing/. (summary_rebuild): Likewise.Ettore Perazzoli2001-08-121-2/+2
| | | | | | | | | | | | | | * providers/local/camel-spool-summary.c (summary_rebuild): s/summarising/summarizing/. (summary_rebuild): Likewise. * providers/local/camel-mbox-summary.c (mbox_summary_sync_full): s/summarise/summarize/. (mbox_summary_sync_quick): Likewise. (summary_rebuild): Likewise. (mbox_summary_check): Likewise. svn path=/trunk/; revision=11919
* Update the copyrights, replacing Helix Code with Ximian andEttore Perazzoli2001-06-231-1/+1
| | | | | | helixcode.com with ximian.com all over the place. svn path=/trunk/; revision=10440
* Only create a missing uid if we have indexing turned on.Not Zed2001-06-181-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2001-06-18 Not Zed <NotZed@Ximian.com> * camel-folder-summary.c (camel_folder_summary_info_new_from_parser): Only create a missing uid if we have indexing turned on. * camel-lock-helper.c (setup_process): Function to setup process/sanity/security checks. Change to the real uid as soon as we can. (lock_path): First try to lock as the real uid, if that fails, try the root uid. (unlock_id): Unlock as the uid we created the lock as. * Makefile.am (INCLUDES): Added -DCAMEL_SBINDIR for lock helper location. * providers/local/camel-spool-folder.c (spool_lock): Implemented, using lock helper locking. Need to work out if the locking requires a root created lock? (spool_unlock): Likewise. 2001-06-15 Not Zed <NotZed@Ximian.com> * camel-lock-helper.c: Setuid Lock helper process. Creates and manages .locks, keeping them active, removing them, etc. What real perms it needs is a little system dependent. 2001-06-14 Not Zed <NotZed@Ximian.com> * providers/local/camel-maildir-store.c (get_folder_info): Implement. (scan_dir): Does the work of scanning for maildir directories. 2001-06-13 Not Zed <NotZed@Ximian.com> * providers/local/camel-spool-store.c (get_folder_info): Implemented, just returns a hardcoded INBOX folder. (free_folder_info): implemented, free's the 1 possible level of folder info. * providers/local/camel-spool-folder.c (camel_spool_folder_construct): Set the real unread message count on the folder_created thing. svn path=/trunk/; revision=10261
* A new provider, for spool mailboxes. Mostly a cut and paste of the mboxNot Zed2001-06-121-0/+1273
2001-06-12 Not Zed <NotZed@Ximian.com> * providers/local/camel-spool-*.[ch]: A new provider, for spool mailboxes. Mostly a cut and paste of the mbox code, but not a subclass CamelLocal*. Not tested a lot, doesn't lock yet, use with extreme caution. * tests/lib/folders.c (test_folder_message_ops): Added spool arg, spool folders can't be deleted, renamed, etc. (test_folder_basic): Same. * tests/folder/test2.c (main): Added checks for spool type. * tests/[message|stream|folder|misc|smime]/Makefile.am (LDADD): Added db3 flags, so make check compiles, doesn't run though. 2001-05-24 Not Zed <NotZed@Ximian.com> * providers/local/camel-local-provider.c (camel_provider_module_init): Added spool provider. svn path=/trunk/; revision=10198