Matthew Barnes [Thu, 15 Aug 2013 19:30:54 +0000 (15:30 -0400)]
EDataCalFactory: Always watch sender's bus name.
Watch the sender's bus name on every new connection so we can clean up
its connections if the bus name vanishes (e.g. client program crashes).
Previously we were only watching the sender's bus name if the backend
instance was created for that connection, but that was unintentional.
Matthew Barnes [Thu, 15 Aug 2013 20:14:56 +0000 (16:14 -0400)]
EDataBookFactory: Work around a GDBus name watching bug.
Calling g_bus_unwatch_name() from a GBusNameVanished callback will
corrupt the function arguments. Work around this GDBus bug [1] by
unwatching the bus name last in the callback.
[1] https://bugzilla.gnome.org/706088
Matthew Barnes [Thu, 15 Aug 2013 19:23:20 +0000 (15:23 -0400)]
EDataBookFactory: Always watch sender's bus name.
Watch the sender's bus name on every new connection so we can clean up
its connections if the bus name vanishes (e.g. client program crashes).
Previously we were only watching the sender's bus name if the backend
instance was created for that connection, but that was unintentional.
Matthew Barnes [Thu, 15 Aug 2013 14:04:12 +0000 (10:04 -0400)]
Rename imapx_select() to imapx_maybe_select().
Just for readability, since the function only actually issues a
SELECT command if it deems it necessary given the current state.
Matthew Barnes [Thu, 15 Aug 2013 13:13:57 +0000 (09:13 -0400)]
GOA: Honor GoaMail's "smtp-use-auth" setting.
Matthew Barnes [Thu, 15 Aug 2013 13:11:58 +0000 (09:11 -0400)]
GOA: Handle IMAP/SMTP settings before handling OAuth settings.
To make sure IMAP/SMTP settings don't override OAuth settings.
Matthew Barnes [Thu, 15 Aug 2013 02:06:31 +0000 (22:06 -0400)]
sync_folders: Return FALSE on error.
Matthew Barnes [Wed, 14 Aug 2013 11:22:52 +0000 (07:22 -0400)]
CamelIMAPXCommandFunc: Remove GError parameter and boolean return.
Callbacks should allocate a GError on the frame stack and hand it to
camel_imapx_job_take_error() before calling imapx_unregister_job().
Matthew Barnes [Tue, 13 Aug 2013 19:21:29 +0000 (15:21 -0400)]
Return a GError in camel_imapx_job_wait().
Despite the improvements in commit dacf161, there is still a disconnect
in error propagation between CamelIMAPXCommand and CamelIMAPXJob in that
completed jobs are still not aware of whether they failed.
This commit lays the foundations for another attempt to bridge the gap,
this time by adding a means of setting an error on a CamelIMAPXJob with
camel_imapx_job_take_error(). We also break API in order to return the
error through camel_imapx_job_wait().
New functions:
camel_imapx_job_take_error()
Matthew Barnes [Wed, 14 Aug 2013 17:10:51 +0000 (13:10 -0400)]
IMAPX: Don't pass GError when not checking for error.
Error checking around CamelDB and CamelFolderSummary calls are virtually
non-existent, but that's a mess for another day. In the meantime, avoid
blindly passing GErrors where we don't bother checking for errors, since
that leads to GError overwrite warnings.
Matthew Barnes [Wed, 14 Aug 2013 12:30:07 +0000 (08:30 -0400)]
IMAPX: duplicate_fetch_or_refresh() cleanups.
Matthew Barnes [Wed, 14 Aug 2013 16:46:43 +0000 (12:46 -0400)]
imapx_command_queue() should not be failable.
Same rationale as the previous commit; that merely submitting a command
should always work from the caller's point-of-view, even if it triggers
an out-of-band error in the parser thread.
Matthew Barnes [Wed, 14 Aug 2013 14:56:26 +0000 (10:56 -0400)]
imapx_command_start_next() should not be failable.
If we fail to stop an in-progress IDLE command, the parser thread and
all unfinished commands will terminate on their own. Don't propagate
back a GError for this particular failure, because the caller is just
trying to enqueue a new CamelIMAPXCommand and doesn't really know how
to handle the error.
Matthew Barnes [Wed, 14 Aug 2013 13:30:25 +0000 (09:30 -0400)]
imapx_select() should not be failable.
imapx_select() either does nothing or starts a new SELECT command. But
as per the previous commit, imapx_command_start() is no longer failable,
therefore imapx_select() is also no longer failable.
Matthew Barnes [Wed, 14 Aug 2013 13:19:57 +0000 (09:19 -0400)]
imapx_command_start() should not be failable.
This might by why error handling in CamelIMAPXServer is so confusing.
The imapx_command_start() function itself should not be failable. If an
error occurs while starting the given command, stop the parser thread so
it disconnects from the IMAP server, and embed the GError in the command
structure with camel_imapx_command_failed().
I suspect this will simplify the IMAPX dispatching logic significantly.
Matthew Barnes [Wed, 14 Aug 2013 12:16:51 +0000 (08:16 -0400)]
CamelIMAPXCommandFunc: Remove the GCancellable parameter.
No longer needed.
Matthew Barnes [Wed, 14 Aug 2013 12:01:40 +0000 (08:01 -0400)]
imapx_command_queue: Remove the GCancellable parameter.
No longer needed.
Matthew Barnes [Wed, 14 Aug 2013 11:57:52 +0000 (07:57 -0400)]
imapx_command_start_next: Remove the GCancellable parameter.
No longer needed.
Matthew Barnes [Wed, 14 Aug 2013 11:53:48 +0000 (07:53 -0400)]
imapx_stop_idle: Remove the GCancellable parameter.
No longer needed.
Matthew Barnes [Wed, 14 Aug 2013 11:50:26 +0000 (07:50 -0400)]
imapx_command_idle_stop: Remove the GCancellable parameter.
Use the parser thread's GCancellable, not one from some CamelIMAPXJob.
Matthew Barnes [Wed, 14 Aug 2013 11:41:07 +0000 (07:41 -0400)]
imapx_select: Remove the "forced" parameter.
Only ever TRUE in a chunk of disabled code.
Remove the parameter until we actually need it.
Matthew Barnes [Wed, 14 Aug 2013 11:36:54 +0000 (07:36 -0400)]
imapx_select: Remove the GCancellable parameter.
No longer needed.
Matthew Barnes [Wed, 14 Aug 2013 11:33:55 +0000 (07:33 -0400)]
imapx_command_start: Remove the GCancellable parameter.
Use the parser thread's GCancellable, not one from some CamelIMAPXJob.
Matthew Barnes [Wed, 14 Aug 2013 10:23:16 +0000 (06:23 -0400)]
CamelIMAPXServer: Parser cleanups.
Move public parser-related members to the private section.
Also, use a GWeakRef to share the parser thread's GCancellable.
Kjartan Maraas [Wed, 14 Aug 2013 13:17:57 +0000 (15:17 +0200)]
Updated Norwegian bokmål translation
Daniel Mustieles [Wed, 14 Aug 2013 12:08:02 +0000 (14:08 +0200)]
Updated Spanish translation
Matthew Barnes [Mon, 12 Aug 2013 19:58:22 +0000 (15:58 -0400)]
CamelIMAPXServer: Silence a debugging message.
Matthew Barnes [Mon, 12 Aug 2013 17:50:02 +0000 (13:50 -0400)]
CamelIMAPXServer: Simplify CamelIMAPXCommand reference counting.
This makes CamelIMAPXCommand reference counting a bit less confusing.
CamelIMAPXJob start() callbacks tend to create a new CamelIMAPXCommand,
hand it off to imapx_command_queue() or imapx_command_run(), but do not
unreference the command before returning. The callback leaves behind an
unowned CamelIMAPXCommand reference until camel_imapx_command_unref() is
called from the command's own finish() method.
This usage pattern still reflects the time before CamelIMAPXCommand had
a reference count, and was explicitly freed in the finish() method.
To help clarify ownership transfer, the start() callback should release
its CamelIMAPXCommand reference after handing it to imapx_command_queue()
or imapx_command_done() -- each of which takes a new reference -- and the
command's own finish() method should leave the reference count alone.
The CamelIMAPXCommand will finalize itself once it's discarded from the
IMAPX dispatching queue(s).
Matthew Barnes [Mon, 12 Aug 2013 13:09:19 +0000 (09:09 -0400)]
imapx_completion() reference counting cleanups.
Keep a reference on the CamelIMAPXCommand being completed to ensure it's
not accidentally finalized while still being processed.
Matthew Barnes [Mon, 12 Aug 2013 13:43:56 +0000 (09:43 -0400)]
Add camel_imapx_command_queue_ref_by_tag().
Returns a new reference to the CamelIMAPXCommand in the queue with a
matching tag, or NULL if no match is found.
Matthew Barnes [Mon, 12 Aug 2013 10:45:41 +0000 (06:45 -0400)]
IMAPX: Abort commands instead of cancelling jobs on error.
In IMAPX terminology, a "job" executes one or more "commands" on behalf
of an application to accomplish some task on the IMAP server. Each job
has only one active command at a time.
When the parser loop breaks with an error, distribute the error to all
active and pending commands using camel_imapx_command_failed() instead
of just cancelling their respective jobs. This allows the commands to
fail gracefully, which will in turn allow the jobs to fail gracefully.
Prior to this, the GError passed to cancel_all_jobs() was simply being
discarded. The jobs were all cancelled but the commands were allowed to
continue. This resulted in misinterpreted server responses, local cache
corruption, and all sorts of fun misbehaviors.
Matthew Barnes [Mon, 12 Aug 2013 10:26:24 +0000 (06:26 -0400)]
Add camel_imapx_command_failed().
Sets an error to return in camel_imapx_command_set_error_if_failed().
Call this function if a networking or parsing error occurred to force
all active IMAP commands to abort processing.
Matthew Barnes [Mon, 12 Aug 2013 10:03:49 +0000 (06:03 -0400)]
imapx_step: Add a CamelIMAPXStream parameter.
Matthew Barnes [Mon, 12 Aug 2013 09:56:29 +0000 (05:56 -0400)]
imapx_parse_contents: Add a CamelIMAPXStream parameter.
Matthew Barnes [Mon, 12 Aug 2013 09:48:35 +0000 (05:48 -0400)]
imapx_parser_thread: Reacquire the stream on every loop iteration.
Set an error if we fail to acquire a CamelIMAPXStream reference.
Once we have a reference, keep it until the next loop iteration.
Milan Crha [Mon, 12 Aug 2013 08:21:08 +0000 (10:21 +0200)]
[Maildir] Create the 'tmp' directory, if missing
If a folder's directory is missing 'tmp' sub-directory, but it has
all the other 'cur' and 'new' directories, then try to create
the 'tmp' to get all three required directories.
It's because some backup tools can drop the 'tmp' directories.
This was reported as: https://bugzilla.redhat.com/show_bug.cgi?id=995702
Milan Crha [Mon, 12 Aug 2013 07:02:13 +0000 (09:02 +0200)]
Bug #705814 - Crash in certificate_viewer_new()
Piotr Drąg [Fri, 9 Aug 2013 20:58:26 +0000 (22:58 +0200)]
Updated POTFILES.in
Milan Crha [Fri, 9 Aug 2013 16:49:49 +0000 (18:49 +0200)]
Bug #700895 - Decode header's value before comparing with RegEx
Milan Crha [Fri, 9 Aug 2013 08:10:11 +0000 (10:10 +0200)]
Bug #704688 - HTTP Backend: Don't authenticate unnecessarily
Matthew Barnes [Fri, 9 Aug 2013 05:15:44 +0000 (07:15 +0200)]
Remove unused CamelOfflineJournal.
Kjartan Maraas [Thu, 8 Aug 2013 19:25:59 +0000 (21:25 +0200)]
Updated Norwegian bokmål translation
Kjartan Maraas [Thu, 8 Aug 2013 19:23:38 +0000 (21:23 +0200)]
Fix build
Milan Crha [Thu, 8 Aug 2013 15:07:32 +0000 (17:07 +0200)]
Bug #705288 - Custom header search produces error
Matthew Barnes [Thu, 8 Aug 2013 13:12:42 +0000 (15:12 +0200)]
Add camel_imapx_folder_process_status_response().
Updates the folder's local status information from the STATUS response.
Matthew Barnes [Thu, 8 Aug 2013 08:46:34 +0000 (10:46 +0200)]
Add CamelIMAPXStatusResponse.
Represents an IMAP STATUS response.
Replaces the "state_info" struct and associated functions.
New functions:
camel_imapx_status_response_new()
camel_imapx_status_response_get_mailbox()
camel_imapx_status_response_get_messages()
camel_imapx_status_response_get_recent()
camel_imapx_status_response_get_uidnext()
camel_imapx_status_response_get_uidvalidity()
camel_imapx_status_response_get_unseen()
camel_imapx_status_response_get_highestmodseq()
Removed functions:
imapx_parse_status_info()
Milan Crha [Thu, 8 Aug 2013 12:36:10 +0000 (14:36 +0200)]
[Camel] Disable SSL v2 and weak ciphers by default
The change for disabled weak ciphers require at least NSS 3.14, thus
weak ciphers are enabled, if it's compiled with older NSS. In case
any server will require either weak ciphers or SSL v2 (while there
really should not anyone use it these days), then two environment
variables were added:
CAMEL_SSL_V2_ENABLE=1 - to have SSL v2 enabled, otherwise it's disabled,
regardless what camel providers request (they usually request v2 and
v3 together)
CAMEL_SSL_WEAK_CIPHERS=1 - to enable weak ciphers, almost the same as
before; otherwise these are disabled and only those covered by
NSS_SetDomesticPolicy() are enabled
These are added to the group of one for SSL V2 compatible hello:
CAMEL_SSL_V2_HELLO=1 - to force SSL v2 compatible hello on SSL connections
Milan Crha [Thu, 8 Aug 2013 11:46:44 +0000 (13:46 +0200)]
Bug #705617 - Failed connection hides offline data in online mode
Do not call "connect" when changing online state in 'connecting' state,
and similar for "disconnect", to prevent a deadlock, if this change is
called within "connect" or "disconnect" function itself.
Daniel Mustieles [Thu, 8 Aug 2013 09:13:30 +0000 (11:13 +0200)]
Updated Spanish translation
Milan Crha [Thu, 8 Aug 2013 05:46:17 +0000 (07:46 +0200)]
Bug #705446 - Old POP3 mails can be removed before getting them
Matthew Barnes [Wed, 7 Aug 2013 15:27:11 +0000 (17:27 +0200)]
CamelIMAPXListResponse: Fix some macro typos.
Matthew Barnes [Wed, 7 Aug 2013 15:19:19 +0000 (17:19 +0200)]
Remove CAMEL_IMAPX_DEBUG_conman.
CamelIMAPXConnManager is gone.
Matthew Barnes [Wed, 7 Aug 2013 15:04:47 +0000 (17:04 +0200)]
CamelIMAPXServer: Handle unsolicited VANISHED responses.
By "unsolicited" here I mean there are no commands in progress which
would otherwise emit the folder change notification when the command
completes. In that situation, emit the change notification directly
from imapx_untagged_vanished() rather than holding it until the next
command completes.
Matthew Barnes [Wed, 7 Aug 2013 14:39:45 +0000 (16:39 +0200)]
CamelIMAPXServer: Remove "expunged" list.
The "expunged" list is populated with message UIDs and occasionally
cleared, but CamelIMAPXServer does not actually use it for anything.
Matthew Barnes [Wed, 7 Aug 2013 14:19:48 +0000 (16:19 +0200)]
imapx_update_store_summary() cleanups.
Matthew Barnes [Wed, 7 Aug 2013 11:29:29 +0000 (13:29 +0200)]
Add camel_imapx_list_response_ref_extended_item().
Returns the extended item value for the given tag as a GVariant.
The type of the GVariant depends on the extended item. If no value
for the given tag exists, the function returns NULL.
Matthew Barnes [Wed, 7 Aug 2013 11:28:38 +0000 (13:28 +0200)]
CamelIMAPXListResponse: Parse extended items.
Parse extended items in LIST responses. The extended item grammer is
rather open-ended, so rather than try to parse all possible extended
items, just parse the items with tags we understand and try to skip
the rest. Currently those tags are CHILDINFO and OLDNAME.
Matthew Barnes [Wed, 7 Aug 2013 12:54:04 +0000 (14:54 +0200)]
CamelIMAPXStore: Folder rename refactoring.
Break some logic out so it can be reused for unsolicited LIST responses.
Milan Crha [Wed, 7 Aug 2013 09:08:55 +0000 (11:08 +0200)]
Bug #705444 - Can not create contact lists in LDAP address book
Milan Crha [Wed, 7 Aug 2013 07:55:37 +0000 (09:55 +0200)]
Missing mutex initialization in EDataBook/CalFactory
Chao-Hsiung Liao [Wed, 7 Aug 2013 04:39:34 +0000 (12:39 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Matthew Barnes [Tue, 6 Aug 2013 07:45:42 +0000 (09:45 +0200)]
Add camel_imapx_mailbox_is_inbox().
Returns whether a mailbox name is the special mailbox INBOX. The
function just performs a case-insensitive string comparison; it's
more for readability.
Matthew Barnes [Tue, 6 Aug 2013 06:34:23 +0000 (08:34 +0200)]
CamelDiscoStore: Fix CamelServiceConnectionStatus tracking.
Do not set CAMEL_DISCO_STORE_OFFLINE when the CamelService reports
something other than CAMEL_SERVICE_CONNECTED. That would lock the
store into offline mode such that further connection attempts will
simply invoke connect_offline() and never actually establish a new
server connection.
Matthew Barnes [Mon, 5 Aug 2013 13:53:01 +0000 (15:53 +0200)]
Bug 705493 - Wrong default in configure help for --enable-largefile
Matthew Barnes [Sun, 4 Aug 2013 22:10:08 +0000 (00:10 +0200)]
CamelIMAPXStore: Remove NOINFERIORS -> NOCHILDREN hack.
CamelFolderListResponse already takes care of adding the implicit
/HasNoChildren attribute when /NoInferiors is seen.
Matthew Barnes [Mon, 29 Jul 2013 14:40:44 +0000 (10:40 -0400)]
Add CamelIMAPXListResponse.
Represents an IMAP LIST response, including LIST-EXTENDED information.
Replaces the "list_info" struct and associated functions.
New functions:
camel_imapx_list_response_new()
camel_imapx_list_response_hash()
camel_imapx_list_response_equal()
camel_imapx_list_response_compare()
camel_imapx_list_response_get_mailbox()
camel_imapx_list_response_get_separator()
camel_imapx_list_response_add_flag()
camel_imapx_list_response_has_flag()
camel_imapx_list_response_get_childinfo()
camel_imapx_list_response_get_summary_flags()
Removed functions:
imapx_parse_list()
imapx_list_get_path()
imapx_free_list()
Matthew Barnes [Mon, 29 Jul 2013 14:22:50 +0000 (10:22 -0400)]
Add camel_imapx_parse_mailbox().
Parses a "mailbox" token, with the special case for "INBOX".
Chao-Hsiung Liao [Sat, 3 Aug 2013 13:05:19 +0000 (21:05 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)
Matthew Barnes [Sat, 3 Aug 2013 07:55:41 +0000 (09:55 +0200)]
Bug 704871 - Fails to manage subscription on an NNTP account
Matthew Barnes [Fri, 2 Aug 2013 19:09:41 +0000 (21:09 +0200)]
Bug 704885 - "Unknown background operation" when syncing spamassassin
The "spamassassin" Evolution module makes use of CamelJunkFilter's
synchronize() method, during which time we didn't have a status message
pushed on the CamelOperation (other than the default "Unknown background
operation", which users should never see). This commit pushes a message.
Matthew Barnes [Fri, 2 Aug 2013 14:31:20 +0000 (16:31 +0200)]
Bug 705206 - Stale "Retrieving message xxx" in preview panel
A client application cancelling an operation should not terminate the
parser thread. The parser thread completes the operation even if the
client is no longer interested in the result. The parser thread loop
must only be broken out of on an I/O error, parsing error, the server
hanging up, or application shutdown.
Fran Diéguez [Fri, 2 Aug 2013 11:10:31 +0000 (13:10 +0200)]
Updated Galician translations
Milan Crha [Thu, 1 Aug 2013 11:18:20 +0000 (13:18 +0200)]
Bug #705273 - Leaked sockets after failed authentication
Yosef Or Boczko [Wed, 31 Jul 2013 23:15:02 +0000 (02:15 +0300)]
drop GtkStock
https://bugzilla.gnome.org/show_bug.cgi?id=705010
Milan Crha [Tue, 30 Jul 2013 14:58:05 +0000 (16:58 +0200)]
NNTP: Authentication requires nntp_stream set
Once again, the code expected the opposite, which led to runtime
warnings and failed connection to the server.
Milan Crha [Tue, 30 Jul 2013 12:22:01 +0000 (14:22 +0200)]
[NNTP] Fails to get list of folders, if not connected already
The code, incorrectly, assumed that the store is always connected
when a list of folders is requested, but the actual connection
happens only during command invocation, after whose successful
finish it's ensured that there is defined also a stream.
This can be reproduced by creating a new NNTP account and trying
to manage subscription. The first try fails, console is filled with
runtime warnings, the second try shows list of available folders.
Milan Crha [Tue, 30 Jul 2013 09:35:21 +0000 (11:35 +0200)]
[Google book] Implement EBookBackend::refresh and advertise its support
Milan Crha [Tue, 30 Jul 2013 09:21:30 +0000 (11:21 +0200)]
(Follow-up of bug #704895) [Google book] Removal of a nickname throws an error
Milan Crha [Tue, 30 Jul 2013 09:10:24 +0000 (11:10 +0200)]
Bug #704895 - Nicknames for Google Contacts not synced
Milan Crha [Mon, 29 Jul 2013 14:00:51 +0000 (16:00 +0200)]
Bug #672899 - Renaming Google book group doesn't propagate to category
Victor Ibragimov [Mon, 29 Jul 2013 15:05:57 +0000 (16:05 +0100)]
Tajik translation added
Matthew Barnes [Sun, 28 Jul 2013 14:40:19 +0000 (10:40 -0400)]
Post-release version bump.
Matthew Barnes [Sun, 28 Jul 2013 14:18:48 +0000 (10:18 -0400)]
NEWS update for 3.9.5 release.
Matthew Barnes [Sun, 28 Jul 2013 14:23:40 +0000 (10:23 -0400)]
Update API documentation.
Matthew Barnes [Sun, 28 Jul 2013 13:54:47 +0000 (09:54 -0400)]
Miscellaneous cleanups.
Matthew Barnes [Sun, 28 Jul 2013 03:15:51 +0000 (23:15 -0400)]
camel_store_get_folder_info_sync() cleanups.
Milan Crha [Thu, 25 Jul 2013 06:07:12 +0000 (08:07 +0200)]
Bug #704740 - WebDAV - Do not store ETag into REV attribute
Christian Kirbach [Wed, 24 Jul 2013 14:01:16 +0000 (16:01 +0200)]
Updated German translation
Milan Crha [Mon, 22 Jul 2013 16:03:00 +0000 (18:03 +0200)]
Bug #704618 - Missing detached instances in get_object() response
Fabiano Fidêncio [Mon, 22 Jul 2013 12:59:33 +0000 (14:59 +0200)]
Bug #386113 - show custom alarm message in pop-up alerts
Enable this feature only for backends we are completely sure it works.
Only enabled for local calendars (file backend) for now.
Fabiano Fidêncio [Mon, 22 Jul 2013 13:51:54 +0000 (15:51 +0200)]
Fix typo in e_cal_backend_file_get_backend_property()
https://bugzilla.gnome.org/show_bug.cgi?id=386113
Milan Crha [Mon, 22 Jul 2013 09:57:07 +0000 (11:57 +0200)]
Do not use generic error codes in camel_getaddrinfo()/camel_getnameinfo()
It's too hard to distinguish from other provider errors when using
general error codes here, thus rather use CAMEL_SERVICE_ERROR_URL_INVALID.
Marek Černocký [Sun, 21 Jul 2013 19:19:18 +0000 (21:19 +0200)]
Updated Czech translation
Matthew Barnes [Sat, 20 Jul 2013 22:45:46 +0000 (18:45 -0400)]
Fix memory leak in camel_imapx_command_add_qresync_parameter().
Matthew Barnes [Sat, 20 Jul 2013 18:20:16 +0000 (14:20 -0400)]
Bug 704003 - IMAPX: Untagged BYE message while connecting is lost
Do not disconnect the service in imapx_untagged_bye() if we're still
connecting. camel_service_disconnect_sync() will cancel the connect
operation and the server message will get replaced with a generic
"Operation was cancelled" message.
Also, check for and handle errors when calling imapx_untagged() from
imapx_connect_to_server().
Matthew Barnes [Sat, 20 Jul 2013 17:03:24 +0000 (13:03 -0400)]
CamelGpgContext: Enclose email addresses in brackets.
The recipient list for encrypting can be specified by either key ID or
email address. Enclose email addresses in brackets to ensure an exact
match, as per the gpg man page:
HOW TO SPECIFY A USER ID
...
By exact match on an email address.
This is indicated by enclosing the email address in the
usual way with left and right angles.
<heinrichh@uni-duesseldorf.de>
Without the brackets gpg uses a substring match, which risks selecting
the wrong recipient.
Milan Crha [Fri, 19 Jul 2013 10:06:48 +0000 (12:06 +0200)]
Bug #692904 - Do not call camel_service_disconnect during connection phase
Milan Crha [Thu, 18 Jul 2013 16:53:26 +0000 (18:53 +0200)]
Bug #704181 - Froze while filtering messages
Milan Crha [Thu, 18 Jul 2013 16:31:52 +0000 (18:31 +0200)]
Bug #691526 - Memory corruption under e_book_backend_google_start_book_view()
Kjartan Maraas [Thu, 18 Jul 2013 12:25:13 +0000 (14:25 +0200)]
Updated Norwegian bokmål translation