Piotr Drąg [Fri, 27 Jan 2012 22:39:21 +0000 (23:39 +0100)]
Updated POTFILES.in
Matthew Barnes [Fri, 27 Jan 2012 21:31:06 +0000 (16:31 -0500)]
CamelIMAPXCommandFunc: Add a GError parameter.
Completion callbacks now get passed a GError and return a boolean.
In most cases calling camel_imapx_command_set_error_if_failed() is
sufficient. The GError pointer passed to the callback may be NULL
if the server already knows an error occurred.
Matthew Barnes [Fri, 27 Jan 2012 19:46:10 +0000 (14:46 -0500)]
Add camel_imapx_command_set_error_if_failed().
If the CamelIMAPXCommand's status indicates failure, set the given
GError and return TRUE. If no status is present (e.g. command not
complete) or the status is "OK", return FALSE.
This also drops the GError member from CamelIMAPXCommand, so that all
GErrors are now set on the command's CamelIMAPXJob.
Matthew Barnes [Fri, 27 Jan 2012 18:42:23 +0000 (13:42 -0500)]
CamelIMAPXCommand: Lose the GCancellable member.
Pass it around explicitly, or use the one in CamelIMAPXJob.
Matthew Barnes [Fri, 27 Jan 2012 18:22:50 +0000 (13:22 -0500)]
imapx_command_run_sync(): Take a GCancellable and GError explicitly.
Matthew Barnes [Fri, 27 Jan 2012 17:16:56 +0000 (12:16 -0500)]
CamelIMAPXCommand: Encapsulate some struct members.
Use a private CamelIMAPXRealCommand struct to keep some members hidden.
Add functions as necessary to interact with private struct members.
Matthew Barnes [Fri, 27 Jan 2012 16:12:08 +0000 (11:12 -0500)]
CamelIMAPXCommand: Use a GString.
The TODO comment was right: building the command part with a GString
instead of a CamelMemStream is much easier (and probably faster, not
that it matters).
Matthew Barnes [Fri, 27 Jan 2012 18:13:43 +0000 (13:13 -0500)]
imapx_command_start(): Take a GCancellable and GError explicitly.
Matthew Barnes [Fri, 27 Jan 2012 17:49:11 +0000 (12:49 -0500)]
camel_imapx_run(): Take a GCancellable and GError explicitly.
Matthew Barnes [Fri, 27 Jan 2012 15:04:30 +0000 (10:04 -0500)]
Split off CamelIMAPXCommand to a separate file.
camel-imapx-server.c is too large for anyone to fully grok.
Matthew Barnes [Fri, 27 Jan 2012 17:52:19 +0000 (12:52 -0500)]
CamelIMAPXServer: Coding style fix.
Matthew Barnes [Wed, 25 Jan 2012 15:43:40 +0000 (10:43 -0500)]
store_get_inbox_folder_sync: Add a NULL check.
Verify the get_folder_sync() method is implemented before invoking it.
Milan Crha [Wed, 25 Jan 2012 10:27:56 +0000 (11:27 +0100)]
CamelStoreSummary: Schedule save rather than save immediately
There was a regression from commit
5c52fe678f6d, marking multiple
messages read/unread invoked save on each single message change, which
had a) performance impact, b) did unnecessary disk writes (with fsync()
calls). This change fixes it by scheduling save, postponing it
by 5 seconds from the last connected CamelFolderSummary's count change.
Kjartan Maraas [Tue, 24 Jan 2012 09:46:33 +0000 (10:46 +0100)]
Updated Norwegian bokmål translation
Matthew Barnes [Mon, 23 Jan 2012 21:40:42 +0000 (16:40 -0500)]
CamelIMAPXConnManager: Add a parting thought.
Matthew Barnes [Mon, 23 Jan 2012 18:42:58 +0000 (13:42 -0500)]
CamelIMAPXConnManager: Use a reader/writer lock.
Replace CamelIMAPXConnManager's recursive lock with a reader/writer
lock. Read operations should be short and simple, write operations
may be long and complex.
Also check for cancellation in camel_imapx_conn_manager_get_connection()
after acquiring the writer lock but before attempting to requisition a
CamelIMAPXServer.
Matthew Barnes [Mon, 23 Jan 2012 18:11:13 +0000 (13:11 -0500)]
CamelIMAPXConnManager: Similarly for connection list operations.
Define a bunch of simple thread-safe operations for the list:
imapx_conn_manager_list_info
imapx_conn_manager_lookup_info
imapx_conn_manager_remove_info
* Note: lookup_info() returns a new ConnectionInfo reference, and
list_info() returns a new GList of ConnectionInfo structs,
each with a new reference
Also rewrite imapx_find_connection() to make the logic clearer.
(Had to stare at that function for a long time to understand it.)
Matthew Barnes [Mon, 23 Jan 2012 16:31:33 +0000 (11:31 -0500)]
CamelIMAPXConnManager: Give ConnectionInfo its own mutex.
Define a bunch of simple thread-safe operations for it:
connection_info_is_available
connection_info_has_folder_name
connection_info_insert_folder_name
connection_info_remove_folder_name
connection_info_dup_selected_folder
connection_info_set_selected_folder
Matthew Barnes [Mon, 23 Jan 2012 15:25:01 +0000 (10:25 -0500)]
CamelIMAPXConnManager: Give ConnectionInfo a reference count.
Add lifecycle functions for it:
ConnectionInfo * connection_info_new (CamelIMAPXServer *is)
ConnectionInfo * connection_info_ref (ConnectionInfo *cinfo)
void connection_info_unref (ConnectionInfo *cinfo)
Now we can perform list operations without holding CON_LOCK for so long.
Matthew Barnes [Mon, 23 Jan 2012 15:11:47 +0000 (10:11 -0500)]
CamelIMAPXConnManager: Miscellaneous cleanups.
Always name CamelIMAPXServer variables 'is', to be consistent with
CamelIMAPXServer itself.
Matthew Barnes [Sun, 22 Jan 2012 16:53:46 +0000 (11:53 -0500)]
CamelIMAPXJob: Clarify 'with_operation_msg' field.
Rename it 'pop_operation_msg' and add a comment.
Matthew Barnes [Sun, 22 Jan 2012 16:48:52 +0000 (11:48 -0500)]
Remove imapx_job_can_operation_msg().
Not needed. camel_operation_push_message() already gracefully handles
'cancellable' being either NULL or a plain GCancellable.
Matthew Barnes [Sun, 22 Jan 2012 00:00:13 +0000 (19:00 -0500)]
CamelIMAPXServer: Use g_list_free_full().
Matthew Barnes [Sat, 21 Jan 2012 23:34:01 +0000 (18:34 -0500)]
Use a consistent variable name for CamelIMAPXServer.
Matthew Barnes [Sat, 21 Jan 2012 23:03:19 +0000 (18:03 -0500)]
imapx: Simplify parse_contents().
Matthew Barnes [Sat, 21 Jan 2012 22:59:09 +0000 (17:59 -0500)]
imapx_step: Return a success boolean.
Matthew Barnes [Sat, 21 Jan 2012 22:57:21 +0000 (17:57 -0500)]
imapx_continuation: Return a success boolean.
Matthew Barnes [Sat, 21 Jan 2012 22:54:12 +0000 (17:54 -0500)]
imapx_untagged: Return a success boolean.
Matthew Barnes [Sat, 21 Jan 2012 22:48:57 +0000 (17:48 -0500)]
imapx_completion: Return a success boolean.
Daniel Mustieles [Sun, 22 Jan 2012 19:57:01 +0000 (20:57 +0100)]
Updated Spanish translation
Matej Urbančič [Sat, 21 Jan 2012 20:01:52 +0000 (21:01 +0100)]
Updated Slovenian translation
Matthew Barnes [Sat, 21 Jan 2012 15:53:52 +0000 (10:53 -0500)]
CamelSession: Avoid spurious "notify::online" signals.
Matthew Barnes [Sat, 21 Jan 2012 15:19:03 +0000 (10:19 -0500)]
imapx_refresh_finfo: Push a status message.
Daniel Mustieles [Sat, 21 Jan 2012 10:54:56 +0000 (11:54 +0100)]
Updated Spanish translation
Matthew Barnes [Sat, 21 Jan 2012 05:33:40 +0000 (00:33 -0500)]
CamelVeeFolder: Process folder changes more efficiently.
CamelVeeFolder submits a new background job every time it receives a
CamelFolder::changed signal. So the background jobs tend to pile up,
and there's no guarantee the jobs will be dispatched in the order
they were submitted since they're dispatched from a thread pool.
Instead, run one background job at a time, and have the job process
FolderChangedData from a queue until the queue is empty. If another
CamelFolder::changed signal is received while the background job is
still running, the changes are simply be appended to the queue.
Matthew Barnes [Sat, 21 Jan 2012 03:42:40 +0000 (22:42 -0500)]
CamelVeeFolder: Push a status message while updating.
Milan Crha [Fri, 20 Jan 2012 10:33:20 +0000 (11:33 +0100)]
Bug #666764 - SQL error migrating folders
Matthew Barnes [Tue, 17 Jan 2012 17:34:07 +0000 (12:34 -0500)]
Camel: Clarify ownership of returned CamelProviders.
Milan Crha [Tue, 17 Jan 2012 13:33:55 +0000 (14:33 +0100)]
CamelStoreSummary: Save count changes from CamelFolderSummary immediately
Matthew Barnes [Mon, 16 Jan 2012 15:26:21 +0000 (10:26 -0500)]
Post-release version bump.
Matthew Barnes [Mon, 16 Jan 2012 15:10:51 +0000 (10:10 -0500)]
NEWS update for 3.3.4 release.
Fran Diéguez [Sat, 14 Jan 2012 23:21:56 +0000 (00:21 +0100)]
Updated Galician translations
Philip Withnall [Thu, 5 Jan 2012 22:27:02 +0000 (22:27 +0000)]
Bug 667388 — Introspection annotation fixes for nullable return types
Add some missing (allow-none) annotations, as well as some (transfer full)
annotations, to libebook and libedataserver. Update the documentation to
match, and to be a little more descriptive in places.
Closes: https://bugzilla.gnome.org/show_bug.cgi?id=667388
Ryan Lortie [Wed, 11 Jan 2012 14:56:51 +0000 (09:56 -0500)]
Bug 667698: vapigen: fix builddir != srcdir issue
Ihar Hrachyshka [Mon, 9 Jan 2012 21:46:48 +0000 (00:46 +0300)]
Updated Belarusian translation.
Milan Crha [Mon, 9 Jan 2012 17:52:33 +0000 (18:52 +0100)]
Bug #644817 - Slow addressbook cache
Kjartan Maraas [Fri, 6 Jan 2012 19:37:56 +0000 (20:37 +0100)]
Updated Norwegian bokmål translation
Daniel Mustieles [Fri, 6 Jan 2012 19:31:12 +0000 (20:31 +0100)]
Updated Spanish translation
Milan Crha [Fri, 6 Jan 2012 17:57:35 +0000 (18:57 +0100)]
Bug #638810 - Crash in camel_folder_search_set_folder with IMAP account
Matthew Barnes [Fri, 6 Jan 2012 17:16:57 +0000 (12:16 -0500)]
imap_folder_dispose(): Disconnect the summary first.
Disconnect the folder summary before destroying any internal members,
since disconnecting may take awhile to run.
Matthew Barnes [Fri, 6 Jan 2012 17:12:53 +0000 (12:12 -0500)]
CamelFolderSearch: Add argument guards to set() functions.
Milan Crha [Fri, 6 Jan 2012 12:48:12 +0000 (13:48 +0100)]
Bug #666757 - [CalDAV] Manage authentication requests even after open
Milan Crha [Wed, 4 Jan 2012 13:52:36 +0000 (14:52 +0100)]
Bug #665036 - Memory leaks spot in Contacts view
Matthew Barnes [Tue, 3 Jan 2012 14:25:27 +0000 (09:25 -0500)]
Camel: Use thread-safe accessors for string settings.
Matthew Barnes [Tue, 3 Jan 2012 05:34:11 +0000 (00:34 -0500)]
Camel: Add thread-safe accessors for string settings
Milan Crha [Mon, 2 Jan 2012 18:22:19 +0000 (19:22 +0100)]
Bug #661743 - Return maildir Inbox sibling folders only when requested
OKANO Takayoshi [Sun, 25 Dec 2011 14:53:14 +0000 (23:53 +0900)]
Updated Japanese translation
Matthew Barnes [Fri, 23 Dec 2011 17:38:34 +0000 (12:38 -0500)]
Bug 666770 - Add gmodule-2.0 to libedataserver.pc
Milan Crha [Fri, 23 Dec 2011 17:34:31 +0000 (18:34 +0100)]
Bug #592906 - Birthdays from WebDAV contacts do not show up in calendar
Daniel Mustieles [Fri, 23 Dec 2011 13:25:50 +0000 (14:25 +0100)]
Updated Spanish translation
Colin Walters [Fri, 23 Dec 2011 05:42:01 +0000 (00:42 -0500)]
Bug 662888 - Use --include-uninstalled for internal .gir files
Otherwise we end up with a dependency on an installed pkg-config file.
Matthew Barnes [Fri, 23 Dec 2011 04:28:03 +0000 (23:28 -0500)]
imapx_run_job(): Initialize cancel_id.
Milan Crha [Thu, 22 Dec 2011 19:06:43 +0000 (20:06 +0100)]
Bug #482171 - IMAP warnings are presented without folder context
Milan Crha [Thu, 22 Dec 2011 18:43:29 +0000 (19:43 +0100)]
Bug #357175 - IMAP alerts still too intrusive
Kjartan Maraas [Wed, 21 Dec 2011 20:57:54 +0000 (21:57 +0100)]
Updated Norwegian bokmål translation
Alban Browaeys [Wed, 21 Dec 2011 08:47:08 +0000 (09:47 +0100)]
Bug #666327 - [IMAP] Missing unlock in camel_imap_folder_fetch_data
Add misssing service unlock in the case of fast switch between folders
with non cached messages. Missed from previous commit:
74fcab535c0f50a27742c05e94036b8370ea9173 .
Jeffrey Stedfast [Tue, 20 Dec 2011 16:07:42 +0000 (11:07 -0500)]
...And another iconv flush fix
Jeffrey Stedfast [Tue, 20 Dec 2011 15:41:05 +0000 (10:41 -0500)]
Fixed another iconv() flush case.
Alban Browaeys [Tue, 20 Dec 2011 13:59:16 +0000 (14:59 +0100)]
Bug #666327 - IMAP deadlock when moving message and checking new mail
Jeffrey Stedfast [Tue, 20 Dec 2011 01:08:42 +0000 (20:08 -0500)]
Grow the output buffer as needed when flushing iconv
Daniel Mustieles [Mon, 19 Dec 2011 16:12:53 +0000 (17:12 +0100)]
Updated Spanish translation
Chenthill Palanisamy [Mon, 19 Dec 2011 15:19:21 +0000 (20:49 +0530)]
post release version bump
Chenthill Palanisamy [Mon, 19 Dec 2011 13:56:16 +0000 (19:26 +0530)]
News update for 3.3.3 release
Milan Crha [Mon, 19 Dec 2011 10:13:24 +0000 (11:13 +0100)]
Bug #331361 - Allow GPG decryption with anonymous recipient set
Gabor Kelemen [Sat, 17 Dec 2011 12:37:59 +0000 (13:37 +0100)]
Updated Hungarian translation
Milan Crha [Fri, 16 Dec 2011 08:14:10 +0000 (09:14 +0100)]
Bug #665253 - "New folder" dialog does not show IMAP accounts
Milan Crha [Wed, 14 Dec 2011 16:36:53 +0000 (17:36 +0100)]
Bug #662068 - Crash in e-cal-backend-http.c:retrieval_done
Milan Crha [Wed, 14 Dec 2011 12:06:22 +0000 (13:06 +0100)]
Fix leaks around categories editing
Milan Crha [Wed, 14 Dec 2011 11:54:07 +0000 (12:54 +0100)]
e_categories_selector_get_checked: Return them always in the same order
Milan Crha [Wed, 14 Dec 2011 10:52:03 +0000 (11:52 +0100)]
Bug #666106 - libical 0.47 handles CATEGORIES as multiple parameters
Milan Crha [Wed, 14 Dec 2011 09:19:24 +0000 (10:19 +0100)]
Revert patch for bug #514041
See the bug for more information:
https://bugzilla.gnome.org/show_bug.cgi?id=514041#c9
Milan Crha [Tue, 13 Dec 2011 12:23:25 +0000 (13:23 +0100)]
Contacts calendar - consider also other than only file-as field
Milan Crha [Tue, 13 Dec 2011 12:05:49 +0000 (13:05 +0100)]
Bug #652173 - EContact's file-as getter doesn't populate empty value
Matthew Barnes [Sun, 11 Dec 2011 18:32:54 +0000 (13:32 -0500)]
Add CamelSession.remove_service() method.
So subclasses can be notified when a service is removed.
Changes camel_session_remove_service() slightly. Now takes a
CamelService instead of a UID, and does not return a gboolean.
Minor ABI + API break; soname bumped.
Matej Urbančič [Thu, 8 Dec 2011 21:16:59 +0000 (22:16 +0100)]
Updated Slovenian translation
Matthew Barnes [Fri, 2 Dec 2011 20:15:33 +0000 (14:15 -0600)]
Fix glib-gen.mak rules.
The %-enumtypes.h pattern causes problems when an "*-enumtypes.h"
from elsewhere (e.g. Camel) is found in the preprocessor search path.
Instead specify the output filename explicitly through a new variable:
glib_enum_output. (e.g. glib_enum_output=e-data-book-enumtypes)
Gabor Kelemen [Fri, 2 Dec 2011 18:30:01 +0000 (19:30 +0100)]
Call gettext on the short descriptions of port numbers.
https://bugzilla.gnome.org/show_bug.cgi?id=665421
Daniel Mustieles [Fri, 2 Dec 2011 17:22:27 +0000 (18:22 +0100)]
Updated Spanish translation
Milan Crha [Fri, 2 Dec 2011 13:08:13 +0000 (14:08 +0100)]
Add --wait-for-client factory processes command line option
This is much better than --keep-running for cases when debugger
needs to be sure that everything opened is freed (the factory
closes itself automatically), while client's run takes longer
than 10 seconds (which is easy when running both/all under
valgrind, especially with evolution as the client).
Srinivasa Ragavan [Thu, 17 Nov 2011 06:51:40 +0000 (12:21 +0530)]
Fix a bug in camel
Matthew Barnes [Fri, 2 Dec 2011 06:44:33 +0000 (00:44 -0600)]
imapx_command_run_sync(): Set a GError if cancelled.
Getting segfaults on cancellation without this...
Matthew Barnes [Fri, 2 Dec 2011 06:26:04 +0000 (00:26 -0600)]
Small correction to imapx_command_run_sync().
Matthew Barnes [Fri, 2 Dec 2011 04:50:59 +0000 (22:50 -0600)]
CamelIMAPXCommand: Make imapx_command_run_sync() more responsive to cancellations.
Connect a GCancellable::cancelled signal handler that broadcasts the
GCond that imapx_command_run_sync() is waiting on so it can proceed
immediately.
If imapx_command_complete() is called sometime later by the thread
executing the command, the GCond will broadcast again but no one will
be listening for it.
Matthew Barnes [Fri, 2 Dec 2011 04:43:30 +0000 (22:43 -0600)]
CamelIMAPXCommand: Reference the command when running synchronously.
Reference is dropped in imapx_command_complete().
Matthew Barnes [Fri, 2 Dec 2011 04:25:04 +0000 (22:25 -0600)]
CamelIMAPXCommand: Remove imapx_command_free() with imapx_command_unref().
Matthew Barnes [Fri, 2 Dec 2011 04:12:00 +0000 (22:12 -0600)]
CamelIMAPXCommand: Add imapx_command_ref().
Matthew Barnes [Fri, 2 Dec 2011 04:07:20 +0000 (22:07 -0600)]
CamelIMAPXCommand: Make IMAPX command functions static.
Matthew Barnes [Fri, 2 Dec 2011 03:51:44 +0000 (21:51 -0600)]
CamelIMAPXCommand: Add a reference count.
Matthew Barnes [Fri, 2 Dec 2011 03:49:29 +0000 (21:49 -0600)]
CamelIMAPXCommand: Allocate with g_slice_new().
Slab allocator is more efficient for fixed-size structs.
Matthew Barnes [Fri, 2 Dec 2011 03:00:16 +0000 (21:00 -0600)]
CamelIMAPXJob: Make imapx_job_run() more responsive to cancellations.
Connect a GCancellable::cancelled signal handler that broadcasts the
GCond that imapx_job_run() is waiting on so it can proceed immediately.
If imapx_job_done() is called sometime later by the thread executing the
job, the GCond will broadcast again but no one will be listening for it.
Giving CamelIMAPXJob a reference count allows the imapx_job_run() caller
to drop its job reference and proceed without worrying about whether the
job is still active in the parser thread, since the parser thread will
have its own job reference.