platform/upstream/evolution-data-server.git
12 years agoUpdated POTFILES.in
Piotr Drąg [Fri, 27 Jan 2012 22:39:21 +0000 (23:39 +0100)]
Updated POTFILES.in

12 years agoCamelIMAPXCommandFunc: Add a GError parameter.
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.

12 years agoAdd camel_imapx_command_set_error_if_failed().
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.

12 years agoCamelIMAPXCommand: Lose the GCancellable member.
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.

12 years agoimapx_command_run_sync(): Take a GCancellable and GError explicitly.
Matthew Barnes [Fri, 27 Jan 2012 18:22:50 +0000 (13:22 -0500)]
imapx_command_run_sync(): Take a GCancellable and GError explicitly.

12 years agoCamelIMAPXCommand: Encapsulate some struct members.
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.

12 years agoCamelIMAPXCommand: Use a GString.
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).

12 years agoimapx_command_start(): Take a GCancellable and GError explicitly.
Matthew Barnes [Fri, 27 Jan 2012 18:13:43 +0000 (13:13 -0500)]
imapx_command_start(): Take a GCancellable and GError explicitly.

12 years agocamel_imapx_run(): 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.

12 years agoSplit off CamelIMAPXCommand to a separate file.
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.

12 years agoCamelIMAPXServer: Coding style fix.
Matthew Barnes [Fri, 27 Jan 2012 17:52:19 +0000 (12:52 -0500)]
CamelIMAPXServer: Coding style fix.

12 years agostore_get_inbox_folder_sync: Add a NULL check.
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.

12 years agoCamelStoreSummary: Schedule save rather than save immediately
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.

12 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Tue, 24 Jan 2012 09:46:33 +0000 (10:46 +0100)]
Updated Norwegian bokmål translation

12 years agoCamelIMAPXConnManager: Add a parting thought.
Matthew Barnes [Mon, 23 Jan 2012 21:40:42 +0000 (16:40 -0500)]
CamelIMAPXConnManager: Add a parting thought.

12 years agoCamelIMAPXConnManager: Use a reader/writer lock.
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.

12 years agoCamelIMAPXConnManager: Similarly for connection list operations.
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.)

12 years agoCamelIMAPXConnManager: Give ConnectionInfo its own mutex.
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

12 years agoCamelIMAPXConnManager: Give ConnectionInfo a reference count.
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.

12 years agoCamelIMAPXConnManager: Miscellaneous cleanups.
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.

12 years agoCamelIMAPXJob: Clarify 'with_operation_msg' field.
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.

12 years agoRemove imapx_job_can_operation_msg().
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.

12 years agoCamelIMAPXServer: Use g_list_free_full().
Matthew Barnes [Sun, 22 Jan 2012 00:00:13 +0000 (19:00 -0500)]
CamelIMAPXServer: Use g_list_free_full().

12 years agoUse a consistent variable name for CamelIMAPXServer.
Matthew Barnes [Sat, 21 Jan 2012 23:34:01 +0000 (18:34 -0500)]
Use a consistent variable name for CamelIMAPXServer.

12 years agoimapx: Simplify parse_contents().
Matthew Barnes [Sat, 21 Jan 2012 23:03:19 +0000 (18:03 -0500)]
imapx: Simplify parse_contents().

12 years agoimapx_step: Return a success boolean.
Matthew Barnes [Sat, 21 Jan 2012 22:59:09 +0000 (17:59 -0500)]
imapx_step: Return a success boolean.

12 years agoimapx_continuation: Return a success boolean.
Matthew Barnes [Sat, 21 Jan 2012 22:57:21 +0000 (17:57 -0500)]
imapx_continuation: Return a success boolean.

12 years agoimapx_untagged: Return a success boolean.
Matthew Barnes [Sat, 21 Jan 2012 22:54:12 +0000 (17:54 -0500)]
imapx_untagged: Return a success boolean.

12 years agoimapx_completion: Return a success boolean.
Matthew Barnes [Sat, 21 Jan 2012 22:48:57 +0000 (17:48 -0500)]
imapx_completion: Return a success boolean.

12 years agoUpdated Spanish translation
Daniel Mustieles [Sun, 22 Jan 2012 19:57:01 +0000 (20:57 +0100)]
Updated Spanish translation

12 years agoUpdated Slovenian translation
Matej Urbančič [Sat, 21 Jan 2012 20:01:52 +0000 (21:01 +0100)]
Updated Slovenian translation

12 years agoCamelSession: Avoid spurious "notify::online" signals.
Matthew Barnes [Sat, 21 Jan 2012 15:53:52 +0000 (10:53 -0500)]
CamelSession: Avoid spurious "notify::online" signals.

12 years agoimapx_refresh_finfo: Push a status message.
Matthew Barnes [Sat, 21 Jan 2012 15:19:03 +0000 (10:19 -0500)]
imapx_refresh_finfo: Push a status message.

12 years agoUpdated Spanish translation
Daniel Mustieles [Sat, 21 Jan 2012 10:54:56 +0000 (11:54 +0100)]
Updated Spanish translation

12 years agoCamelVeeFolder: Process folder changes more efficiently.
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.

12 years agoCamelVeeFolder: Push a status message while updating.
Matthew Barnes [Sat, 21 Jan 2012 03:42:40 +0000 (22:42 -0500)]
CamelVeeFolder: Push a status message while updating.

12 years agoBug #666764 - SQL error migrating folders
Milan Crha [Fri, 20 Jan 2012 10:33:20 +0000 (11:33 +0100)]
Bug #666764 - SQL error migrating folders

12 years agoCamel: Clarify ownership of returned CamelProviders.
Matthew Barnes [Tue, 17 Jan 2012 17:34:07 +0000 (12:34 -0500)]
Camel: Clarify ownership of returned CamelProviders.

12 years agoCamelStoreSummary: Save count changes from CamelFolderSummary immediately
Milan Crha [Tue, 17 Jan 2012 13:33:55 +0000 (14:33 +0100)]
CamelStoreSummary: Save count changes from CamelFolderSummary immediately

12 years agoPost-release version bump.
Matthew Barnes [Mon, 16 Jan 2012 15:26:21 +0000 (10:26 -0500)]
Post-release version bump.

12 years agoNEWS update for 3.3.4 release.
Matthew Barnes [Mon, 16 Jan 2012 15:10:51 +0000 (10:10 -0500)]
NEWS update for 3.3.4 release.

12 years agoUpdated Galician translations
Fran Diéguez [Sat, 14 Jan 2012 23:21:56 +0000 (00:21 +0100)]
Updated Galician translations

12 years agoBug 667388 — Introspection annotation fixes for nullable return types
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

12 years agoBug 667698: vapigen: fix builddir != srcdir issue
Ryan Lortie [Wed, 11 Jan 2012 14:56:51 +0000 (09:56 -0500)]
Bug 667698: vapigen: fix builddir != srcdir issue

12 years agoUpdated Belarusian translation.
Ihar Hrachyshka [Mon, 9 Jan 2012 21:46:48 +0000 (00:46 +0300)]
Updated Belarusian translation.

12 years agoBug #644817 - Slow addressbook cache
Milan Crha [Mon, 9 Jan 2012 17:52:33 +0000 (18:52 +0100)]
Bug #644817 - Slow addressbook cache

12 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Fri, 6 Jan 2012 19:37:56 +0000 (20:37 +0100)]
Updated Norwegian bokmål translation

12 years agoUpdated Spanish translation
Daniel Mustieles [Fri, 6 Jan 2012 19:31:12 +0000 (20:31 +0100)]
Updated Spanish translation

12 years agoBug #638810 - Crash in camel_folder_search_set_folder with IMAP account
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

12 years agoimap_folder_dispose(): Disconnect the summary first.
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.

12 years agoCamelFolderSearch: Add argument guards to set() functions.
Matthew Barnes [Fri, 6 Jan 2012 17:12:53 +0000 (12:12 -0500)]
CamelFolderSearch: Add argument guards to set() functions.

12 years agoBug #666757 - [CalDAV] Manage authentication requests even after open
Milan Crha [Fri, 6 Jan 2012 12:48:12 +0000 (13:48 +0100)]
Bug #666757 - [CalDAV] Manage authentication requests even after open

12 years agoBug #665036 - Memory leaks spot in Contacts view
Milan Crha [Wed, 4 Jan 2012 13:52:36 +0000 (14:52 +0100)]
Bug #665036 - Memory leaks spot in Contacts view

12 years agoCamel: Use thread-safe accessors for string settings.
Matthew Barnes [Tue, 3 Jan 2012 14:25:27 +0000 (09:25 -0500)]
Camel: Use thread-safe accessors for string settings.

12 years agoCamel: Add 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

12 years agoBug #661743 - Return maildir Inbox sibling folders only when requested
Milan Crha [Mon, 2 Jan 2012 18:22:19 +0000 (19:22 +0100)]
Bug #661743 - Return maildir Inbox sibling folders only when requested

12 years agoUpdated Japanese translation
OKANO Takayoshi [Sun, 25 Dec 2011 14:53:14 +0000 (23:53 +0900)]
Updated Japanese translation

12 years agoBug 666770 - Add gmodule-2.0 to libedataserver.pc
Matthew Barnes [Fri, 23 Dec 2011 17:38:34 +0000 (12:38 -0500)]
Bug 666770 - Add gmodule-2.0 to libedataserver.pc

12 years agoBug #592906 - Birthdays from WebDAV contacts do not show up in calendar
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

12 years agoUpdated Spanish translation
Daniel Mustieles [Fri, 23 Dec 2011 13:25:50 +0000 (14:25 +0100)]
Updated Spanish translation

12 years agoBug 662888 - Use --include-uninstalled for internal .gir files
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.

12 years agoimapx_run_job(): Initialize cancel_id.
Matthew Barnes [Fri, 23 Dec 2011 04:28:03 +0000 (23:28 -0500)]
imapx_run_job(): Initialize cancel_id.

12 years agoBug #482171 - IMAP warnings are presented without folder context
Milan Crha [Thu, 22 Dec 2011 19:06:43 +0000 (20:06 +0100)]
Bug #482171 - IMAP warnings are presented without folder context

12 years agoBug #357175 - IMAP alerts still too intrusive
Milan Crha [Thu, 22 Dec 2011 18:43:29 +0000 (19:43 +0100)]
Bug #357175 - IMAP alerts still too intrusive

12 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Wed, 21 Dec 2011 20:57:54 +0000 (21:57 +0100)]
Updated Norwegian bokmål translation

12 years agoBug #666327 - [IMAP] Missing unlock in camel_imap_folder_fetch_data
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 .

12 years ago...And another iconv flush fix
Jeffrey Stedfast [Tue, 20 Dec 2011 16:07:42 +0000 (11:07 -0500)]
...And another iconv flush fix

12 years agoFixed another iconv() flush case.
Jeffrey Stedfast [Tue, 20 Dec 2011 15:41:05 +0000 (10:41 -0500)]
Fixed another iconv() flush case.

12 years agoBug #666327 - IMAP deadlock when moving message and checking new mail
Alban Browaeys [Tue, 20 Dec 2011 13:59:16 +0000 (14:59 +0100)]
Bug #666327 - IMAP deadlock when moving message and checking new mail

12 years agoGrow the output buffer as needed when flushing iconv
Jeffrey Stedfast [Tue, 20 Dec 2011 01:08:42 +0000 (20:08 -0500)]
Grow the output buffer as needed when flushing iconv

12 years agoUpdated Spanish translation
Daniel Mustieles [Mon, 19 Dec 2011 16:12:53 +0000 (17:12 +0100)]
Updated Spanish translation

12 years agopost release version bump
Chenthill Palanisamy [Mon, 19 Dec 2011 15:19:21 +0000 (20:49 +0530)]
post release version bump

12 years agoNews update for 3.3.3 release
Chenthill Palanisamy [Mon, 19 Dec 2011 13:56:16 +0000 (19:26 +0530)]
News update for 3.3.3 release

12 years agoBug #331361 - Allow GPG decryption with anonymous recipient set
Milan Crha [Mon, 19 Dec 2011 10:13:24 +0000 (11:13 +0100)]
Bug #331361 - Allow GPG decryption with anonymous recipient set

12 years agoUpdated Hungarian translation
Gabor Kelemen [Sat, 17 Dec 2011 12:37:59 +0000 (13:37 +0100)]
Updated Hungarian translation

12 years agoBug #665253 - "New folder" dialog does not show IMAP accounts
Milan Crha [Fri, 16 Dec 2011 08:14:10 +0000 (09:14 +0100)]
Bug #665253 - "New folder" dialog does not show IMAP accounts

12 years agoBug #662068 - Crash in e-cal-backend-http.c:retrieval_done
Milan Crha [Wed, 14 Dec 2011 16:36:53 +0000 (17:36 +0100)]
Bug #662068 - Crash in e-cal-backend-http.c:retrieval_done

12 years agoFix leaks around categories editing
Milan Crha [Wed, 14 Dec 2011 12:06:22 +0000 (13:06 +0100)]
Fix leaks around categories editing

12 years agoe_categories_selector_get_checked: Return them always in the same order
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

12 years agoBug #666106 - libical 0.47 handles CATEGORIES as multiple parameters
Milan Crha [Wed, 14 Dec 2011 10:52:03 +0000 (11:52 +0100)]
Bug #666106 - libical 0.47 handles CATEGORIES as multiple parameters

12 years agoRevert patch for bug #514041
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

12 years agoContacts calendar - consider also other than only file-as field
Milan Crha [Tue, 13 Dec 2011 12:23:25 +0000 (13:23 +0100)]
Contacts calendar - consider also other than only file-as field

12 years agoBug #652173 - EContact's file-as getter doesn't populate empty value
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

12 years agoAdd CamelSession.remove_service() method.
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.

12 years agoUpdated Slovenian translation
Matej Urbančič [Thu, 8 Dec 2011 21:16:59 +0000 (22:16 +0100)]
Updated Slovenian translation

12 years agoFix glib-gen.mak rules.
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)

12 years agoCall gettext on the short descriptions of port numbers.
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

12 years agoUpdated Spanish translation
Daniel Mustieles [Fri, 2 Dec 2011 17:22:27 +0000 (18:22 +0100)]
Updated Spanish translation

12 years agoAdd --wait-for-client factory processes command line option
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).

12 years agoFix a bug in camel
Srinivasa Ragavan [Thu, 17 Nov 2011 06:51:40 +0000 (12:21 +0530)]
Fix a bug in camel

12 years agoimapx_command_run_sync(): Set a GError if cancelled.
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...

12 years agoSmall correction to imapx_command_run_sync().
Matthew Barnes [Fri, 2 Dec 2011 06:26:04 +0000 (00:26 -0600)]
Small correction to imapx_command_run_sync().

12 years agoCamelIMAPXCommand: Make imapx_command_run_sync() more responsive to cancellations.
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.

12 years agoCamelIMAPXCommand: Reference the command when running synchronously.
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().

12 years agoCamelIMAPXCommand: Remove imapx_command_free() with imapx_command_unref().
Matthew Barnes [Fri, 2 Dec 2011 04:25:04 +0000 (22:25 -0600)]
CamelIMAPXCommand: Remove imapx_command_free() with imapx_command_unref().

12 years agoCamelIMAPXCommand: Add imapx_command_ref().
Matthew Barnes [Fri, 2 Dec 2011 04:12:00 +0000 (22:12 -0600)]
CamelIMAPXCommand: Add imapx_command_ref().

12 years agoCamelIMAPXCommand: Make IMAPX command functions static.
Matthew Barnes [Fri, 2 Dec 2011 04:07:20 +0000 (22:07 -0600)]
CamelIMAPXCommand: Make IMAPX command functions static.

12 years agoCamelIMAPXCommand: Add a reference count.
Matthew Barnes [Fri, 2 Dec 2011 03:51:44 +0000 (21:51 -0600)]
CamelIMAPXCommand: Add a reference count.

12 years agoCamelIMAPXCommand: Allocate with g_slice_new().
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.

12 years agoCamelIMAPXJob: Make imapx_job_run() more responsive to cancellations.
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.