platform/upstream/evolution-data-server.git
12 years agoPost-release version bump.
Matthew Barnes [Sun, 28 Aug 2011 17:30:40 +0000 (13:30 -0400)]
Post-release version bump.

12 years agoNEWS update for 3.1.90 release.
Matthew Barnes [Sun, 28 Aug 2011 17:28:23 +0000 (13:28 -0400)]
NEWS update for 3.1.90 release.

12 years agoUpdate API documentation.
Matthew Barnes [Sun, 28 Aug 2011 14:28:43 +0000 (10:28 -0400)]
Update API documentation.

12 years ago[l10n] Updated German translation
Mario Blättermann [Sun, 28 Aug 2011 12:24:13 +0000 (14:24 +0200)]
[l10n] Updated German translation

12 years agoAdd E_TYPE_CAL_CLIENT_SOURCE_TYPE macro.
Matthew Barnes [Fri, 26 Aug 2011 14:10:51 +0000 (10:10 -0400)]
Add E_TYPE_CAL_CLIENT_SOURCE_TYPE macro.

12 years agoCheck ic->status is not NULL imapx_command_select_done ()
Raul Gutierrez Segales [Fri, 26 Aug 2011 09:36:02 +0000 (10:36 +0100)]
Check ic->status is not NULL imapx_command_select_done ()

There are ocassions (are they even valid?) in which ic->status
might be NULL, so we check for that before trying to access
ic->status->text when calling g_set_error ().

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=639717

12 years agoUse cached value in e_cal_client_get_default_object()
Milan Crha [Fri, 26 Aug 2011 11:55:46 +0000 (13:55 +0200)]
Use cached value in e_cal_client_get_default_object()

12 years agoAvoid use-after-free by unsetting open_finished flag sooner
Milan Crha [Thu, 25 Aug 2011 11:32:15 +0000 (13:32 +0200)]
Avoid use-after-free by unsetting open_finished flag sooner

12 years agoUpdated Russian translation
Yuri Myasoedov [Thu, 25 Aug 2011 06:11:56 +0000 (10:11 +0400)]
Updated Russian translation

12 years agoUpdated Spanish translation
Jorge González [Wed, 24 Aug 2011 19:12:43 +0000 (21:12 +0200)]
Updated Spanish translation

12 years agoUpdated Galician translations
Fran Dieguez [Wed, 24 Aug 2011 18:55:59 +0000 (20:55 +0200)]
Updated Galician translations

12 years agoCamel: Fix linking issue.
Matthew Barnes [Wed, 24 Aug 2011 18:16:28 +0000 (14:16 -0400)]
Camel: Fix linking issue.

camel-enumtypes.c is linked into libcamel.so, but is needed by
camel-network-settings.c which is part of libcamel-provider.so,
and libcamel-provider.so is lower in the dependency chain.

Move camel-enumtypes.c into libcamel-provider.so.

ed. I don't understand why libcamel-provider.so even exists as a
    separate library, unless there's some hidden circular dependency
    I haven't tripped over yet.  Tempted to merge it into libcamel.so
    and see how it goes...

12 years agoUpdated Spanish translation
Daniel Mustieles [Wed, 24 Aug 2011 17:54:34 +0000 (19:54 +0200)]
Updated Spanish translation

12 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Wed, 24 Aug 2011 16:51:00 +0000 (18:51 +0200)]
Updated Norwegian bokmål translation

12 years agoAdd Google Talk field to the list of IM information
Raul Gutierrez Segales [Wed, 24 Aug 2011 14:42:31 +0000 (15:42 +0100)]
Add Google Talk field to the list of IM information

12 years agoBug #657181 - Backends can be left half-opened when using ECal
Milan Crha [Wed, 24 Aug 2011 15:02:05 +0000 (17:02 +0200)]
Bug #657181 - Backends can be left half-opened when using ECal

12 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Wed, 24 Aug 2011 13:23:20 +0000 (15:23 +0200)]
Updated Norwegian bokmål translation

12 years agoBug #652914 - IMAP: moving mail puts a copy into real Trash too
Milan Crha [Wed, 24 Aug 2011 11:38:14 +0000 (13:38 +0200)]
Bug #652914 - IMAP: moving mail puts a copy into real Trash too

Also fixes issue when CamelSettings are populated too late for
the initable.

12 years agoUpdated Swedish translation
Daniel Nylander [Wed, 24 Aug 2011 06:41:21 +0000 (08:41 +0200)]
Updated Swedish translation

12 years agoAvoid a crash in gdata_goa_authorizer_get_parameters().
Matthew Barnes [Tue, 23 Aug 2011 14:54:45 +0000 (10:54 -0400)]
Avoid a crash in gdata_goa_authorizer_get_parameters().

I had assumed the SoupURI always has a query part, which is wrong,
and soup_form_decode() chokes on NULL strings.

12 years agoUpdated Serbian translation
Мирослав Николић [Tue, 23 Aug 2011 13:54:38 +0000 (15:54 +0200)]
Updated Serbian translation

12 years agoBug #655997 - Unneeded context specifiers
Milan Crha [Tue, 23 Aug 2011 14:03:06 +0000 (16:03 +0200)]
Bug #655997 - Unneeded context specifiers

12 years agoRemove more similar strings from translation
Milan Crha [Tue, 23 Aug 2011 13:56:33 +0000 (15:56 +0200)]
Remove more similar strings from translation

I forgot of these in the previous commit.

12 years agoBug #651849 - Remove string from translation
Milan Crha [Tue, 23 Aug 2011 13:51:59 +0000 (15:51 +0200)]
Bug #651849 - Remove string from translation

12 years agoBug #576398 - vfolder not showing new messages from nntp group
Milan Crha [Tue, 23 Aug 2011 12:38:25 +0000 (14:38 +0200)]
Bug #576398 - vfolder not showing new messages from nntp group

12 years agoBug #562912 - Unread vfolder marks unread messages as read
Milan Crha [Tue, 23 Aug 2011 11:19:30 +0000 (13:19 +0200)]
Bug #562912 - Unread vfolder marks unread messages as read

12 years agoBug #652437 - NNTP messages is sometimes displayed as grey
Milan Crha [Mon, 22 Aug 2011 17:19:53 +0000 (19:19 +0200)]
Bug #652437 - NNTP messages is sometimes displayed as grey

12 years ago[IMAPX] Do not overwrite errors on reconnect
Milan Crha [Mon, 22 Aug 2011 11:51:28 +0000 (13:51 +0200)]
[IMAPX] Do not overwrite errors on reconnect

12 years agoPretend successful read when skipping 3+ part of multipart/signed
Milan Crha [Mon, 22 Aug 2011 09:17:01 +0000 (11:17 +0200)]
Pretend successful read when skipping 3+ part of multipart/signed

12 years agoIncorrect message signature verification failure
Milan Crha [Mon, 22 Aug 2011 09:07:32 +0000 (11:07 +0200)]
Incorrect message signature verification failure

12 years agoUpdated Bulgarian translation
Alexander Shopov [Mon, 22 Aug 2011 04:45:08 +0000 (07:45 +0300)]
Updated Bulgarian translation

12 years agoUpdated Bulgarian translation
Alexander Shopov [Sun, 21 Aug 2011 21:07:52 +0000 (00:07 +0300)]
Updated Bulgarian translation

12 years agoUpdated Indonesian translation
Andika Triwidada [Sun, 21 Aug 2011 04:24:27 +0000 (11:24 +0700)]
Updated Indonesian translation

12 years agoBug #651693 - Decode QP encoded names when invoking 'Expand list Inline'
Ritesh Khadgaray [Fri, 19 Aug 2011 07:18:31 +0000 (09:18 +0200)]
Bug #651693 - Decode QP encoded names when invoking 'Expand list Inline'

12 years agoUpdated Dutch translation by Wouter Bolsterlee
Wouter Bolsterlee [Thu, 18 Aug 2011 20:19:31 +0000 (22:19 +0200)]
Updated Dutch translation by Wouter Bolsterlee

12 years agoUpdated Dutch translation by Wouter Bolsterlee
Wouter Bolsterlee [Thu, 18 Aug 2011 20:11:51 +0000 (22:11 +0200)]
Updated Dutch translation by Wouter Bolsterlee

12 years agogoogle: Fix various data loss bugs with organisations/jobs
Philip Withnall [Thu, 18 Aug 2011 18:43:53 +0000 (19:43 +0100)]
google: Fix various data loss bugs with organisations/jobs

For example:
 • Failing to save if an organisation department isn't entered (but a
   company name is).
 • Losing organisation department if no company name is entered.
 • Losing all details except title and role from the primary organisation.

Closes: bgo#651451

12 years agoAdded UG translation
Abduxukur Abdurixit [Fri, 19 Aug 2011 17:37:08 +0000 (19:37 +0200)]
Added UG translation

12 years agoBug #651469 - Folders don't update after moving mails in maildir
Milan Crha [Thu, 18 Aug 2011 14:14:07 +0000 (16:14 +0200)]
Bug #651469 - Folders don't update after moving mails in maildir

12 years agoCamel: Add CAMEL_STORE_CAN_EDIT_FOLDERS flag.
Matthew Barnes [Wed, 17 Aug 2011 23:52:25 +0000 (19:52 -0400)]
Camel: Add CAMEL_STORE_CAN_EDIT_FOLDERS flag.

Basically for the NNTP provider to clear, or I suppose if you're
proxying someone else's account.  Evolution can check for this flag
and disable folder create/delete/rename actions in the context of a
newsgroup server.

Related to bug 656720.

12 years agoCamelService: Add a "display-name" property.
Matthew Barnes [Thu, 18 Aug 2011 00:49:02 +0000 (20:49 -0400)]
CamelService: Add a "display-name" property.

Mostly as a convenience to clients.  Camel itself doesn't use this for
anything at present, although I suppose it could come in handy for some
error messages or user prompts.

12 years agoDon't use our own DISABLE_DEPRECATED macros in .c files.
Matthew Barnes [Wed, 17 Aug 2011 18:27:23 +0000 (14:27 -0400)]
Don't use our own DISABLE_DEPRECATED macros in .c files.

Those macros are meant for E-D-S -client- programs, not for E-D-S
itself.  As such, they should only appear in public header files.

12 years agogoogle: Tidy up finish_operation()
Philip Withnall [Wed, 17 Aug 2011 16:38:39 +0000 (17:38 +0100)]
google: Tidy up finish_operation()

Merge on_sequence_complete() into it and ensure that all errors get
propagated. See: bgo#619135

12 years agogoogle: Fix cancellation and progress reporting for cold-cache queries
Philip Withnall [Tue, 16 Aug 2011 23:41:10 +0000 (00:41 +0100)]
google: Fix cancellation and progress reporting for cold-cache queries

See: https://bugzilla.gnome.org/show_bug.cgi?id=619135#c3

Closes: bgo#619135

12 years agoBug #656051 - Preserve mbox file attributes after rewrite
Milan Crha [Wed, 17 Aug 2011 14:03:41 +0000 (16:03 +0200)]
Bug #656051 - Preserve mbox file attributes after rewrite

12 years agoBug #655272 - IMAPX: Leaking file descriptors from open pipes
Milan Crha [Wed, 17 Aug 2011 13:02:26 +0000 (15:02 +0200)]
Bug #655272 - IMAPX: Leaking file descriptors from open pipes

12 years agoBug #655121 - CalDAV: Can't reopen attachments saved on a server
Milan Crha [Wed, 17 Aug 2011 12:22:17 +0000 (14:22 +0200)]
Bug #655121 - CalDAV: Can't reopen attachments saved on a server

12 years agoDo not keep Google progress notifications in book view forever
Milan Crha [Wed, 17 Aug 2011 07:07:38 +0000 (09:07 +0200)]
Do not keep Google progress notifications in book view forever

12 years agoBug 655833 — Mailing addresses for Google Contacts not saving if PO Box…
Philip Withnall [Tue, 16 Aug 2011 22:26:28 +0000 (23:26 +0100)]
Bug 655833 — Mailing addresses for Google Contacts not saving if PO Box…

Fix editing postal addresses of contacts where the PO box field is not
filled in.

Closes: bgo#655833

12 years agoUpdated Spanish translation
Daniel Mustieles [Tue, 16 Aug 2011 23:35:36 +0000 (01:35 +0200)]
Updated Spanish translation

12 years agogoogle: Add a missing NULL pointer check
Philip Withnall [Tue, 16 Aug 2011 22:25:12 +0000 (23:25 +0100)]
google: Add a missing NULL pointer check

This fixes a crash when editing contacts without avatars (and not adding an
avatar).

12 years agoUpdated Norwegian bokmål translation.
Kjartan Maraas [Tue, 16 Aug 2011 14:35:49 +0000 (16:35 +0200)]
Updated Norwegian bokmål translation.

12 years agoUpdated Galician translations
Fran Dieguez [Tue, 16 Aug 2011 11:27:24 +0000 (13:27 +0200)]
Updated Galician translations

12 years agoCamel: Remove unused CAMEL_STORE_ASYNC flag.
Matthew Barnes [Tue, 16 Aug 2011 02:37:40 +0000 (22:37 -0400)]
Camel: Remove unused CAMEL_STORE_ASYNC flag.

12 years agoCamelStore: Split subscription API into a separate interface.
Matthew Barnes [Mon, 15 Aug 2011 20:40:55 +0000 (16:40 -0400)]
CamelStore: Split subscription API into a separate interface.

The CAMEL_STORE_SUBSCRIPTIONS flag basically means the CamelStore
instance supports the folder subscription portion of its API.  This
would be better handled by splitting the subscription portion of its
API into a separate GTypeInterface for providers to implement.  Then
we don't need the subscriptions flag.

The CamelSubscribable interface does exactly that.  To check if a
CamelStore supports folder subscriptions, just do:

   if (CAMEL_IS_SUBSCRIBABLE (store)) ...

Implement CamelSubscribable in the IMAP, IMAPX and NNTP providers.

12 years agoAdd CamelSmtpSettings.
Matthew Barnes [Thu, 21 Jul 2011 16:29:56 +0000 (11:29 -0500)]
Add CamelSmtpSettings.

CamelSmtpSettings replaces the various URL parameters used in
CamelSmtpTransport with equivalent GObject properties.

Adapt the smtp provider to use CamelSmtpSettings.

12 years agoAdd CamelPOP3Settings.
Matthew Barnes [Thu, 21 Jul 2011 16:29:17 +0000 (11:29 -0500)]
Add CamelPOP3Settings.

CamelPOP3Settings replaces the various URL parameters used in
CamelPOP3Store with equivalent GObject properties.

Adapt the pop3 provider to use CamelPOP3Settings.

12 years agoAdd CamelNNTPSettings.
Matthew Barnes [Fri, 15 Jul 2011 17:59:30 +0000 (13:59 -0400)]
Add CamelNNTPSettings.

CamelNNTPSettings replaces the various URL parameters used in
CamelNNTPStore with equivalent GObject properties.

Adapt the nntp provider to use CamelNNTPSettings.

12 years agoAdd CamelSpoolSettings.
Matthew Barnes [Sat, 9 Jul 2011 16:25:29 +0000 (12:25 -0400)]
Add CamelSpoolSettings.

CamelSpoolSettings replaces the various URL parameters used in
CamelSpoolStore with equivalent GObject properties.

Adapt the spool provider to use CamelSpoolSettings.

12 years agoAdd CamelMhSettings.
Matthew Barnes [Sat, 9 Jul 2011 15:31:44 +0000 (11:31 -0400)]
Add CamelMhSettings.

CamelMhSettings replaces the various URL parameters used in CamelMhStore
with equivalent GObject properties.

Adapt the mh provider to use CamelMhSettings.

12 years agoCamelLocalStore: Add a "need-summary-check" property.
Matthew Barnes [Sat, 9 Jul 2011 14:45:38 +0000 (10:45 -0400)]
CamelLocalStore: Add a "need-summary-check" property.

Use g_object_set() instead of camel_url_set_param() to change the
need-summary-check flag common to all local store types.

12 years agoAdd CamelIMAPXSettings.
Matthew Barnes [Mon, 4 Jul 2011 04:13:19 +0000 (00:13 -0400)]
Add CamelIMAPXSettings.

CamelIMAPXSettings replaces the various URL parameters used in
CamelIMAPXStore with equivalent GObject properties.

Adapt the imapx provider to use CamelIMAPXSettings.

12 years agoAdd CamelImapSettings.
Matthew Barnes [Mon, 13 Jun 2011 14:08:58 +0000 (10:08 -0400)]
Add CamelImapSettings.

CamelImapSettings replaces the various URL parameters used in
CamelImapStore with equivalent GObject properties.

Adapt the imap provider to use CamelImapSettings.

12 years agoAdd CamelNetworkSettings.
Matthew Barnes [Wed, 3 Aug 2011 14:58:58 +0000 (09:58 -0500)]
Add CamelNetworkSettings.

Move the "security-method" property from CamelNetworkService to
CamelNetworkSettings.  If a given CamelService subclass implements
CamelNetworkService, its corresponding CamelSettings subclass should
implement CamelNetworkSettings.

12 years agoAdd CamelOfflineSettings.
Matthew Barnes [Fri, 10 Jun 2011 18:05:06 +0000 (14:05 -0400)]
Add CamelOfflineSettings.

CamelOfflineSettings replaces the "sync_offline" URL parameter used in
CamelOfflineStore and the "offline_sync" URL parameter used in
CamelDiscoStore with a "stay-synchronized" GObject boolean property.

Adapt various providers to use CamelOfflineSettings.

12 years agoAdd CamelStoreSettings.
Matthew Barnes [Fri, 10 Jun 2011 14:52:26 +0000 (10:52 -0400)]
Add CamelStoreSettings.

CamelStoreSettings replaces the "filter" URL parameter used in
CamelStore with a with a "filter-inbox" GObject boolean property.
Also remove CAMEL_STORE_FILTER_INBOX flag since it's now redundant.

Adapt various providers to use CamelStoreSettings.

12 years agoAdd CamelSettings.
Matthew Barnes [Fri, 29 Jul 2011 00:37:23 +0000 (19:37 -0500)]
Add CamelSettings.

CamelSettings is an abstract base class for holding settings values for
various CamelService subclasses.  In general each CamelService subclass
should define a custom CamelSettings subclass.  It's critical that all
settings values have a corresponding GObject property.

12 years agoCamel: Fix enumeration regressions.
Matthew Barnes [Fri, 29 Jul 2011 00:40:29 +0000 (19:40 -0500)]
Camel: Fix enumeration regressions.

12 years agopost release version bump
Chenthill Palanisamy [Sun, 14 Aug 2011 17:21:31 +0000 (22:51 +0530)]
post release version bump

12 years agoNews update for 3.1.5 release
Chenthill Palanisamy [Sun, 14 Aug 2011 15:31:21 +0000 (21:01 +0530)]
News update for 3.1.5 release

12 years agoBug 656490 - imapx: Memory leak of stream tokenbuf
David Woodhouse [Sun, 14 Aug 2011 00:10:58 +0000 (01:10 +0100)]
Bug 656490 - imapx: Memory leak of stream tokenbuf

12 years agoBug 656487 - Memory leak in imapx fetch_folders_for_namespaces()
David Woodhouse [Sat, 13 Aug 2011 23:47:48 +0000 (00:47 +0100)]
Bug 656487 - Memory leak in imapx fetch_folders_for_namespaces()

We need to free the GSList but the namespaces themselves are fine.

12 years agoBug #656480 - Memory leak in camel_folder_search_search()
David Woodhouse [Sat, 13 Aug 2011 22:40:18 +0000 (23:40 +0100)]
Bug #656480 - Memory leak in camel_folder_search_search()

We don't unref sexp on failure.

12 years agoUpdated Spanish translation
Jorge González [Sat, 13 Aug 2011 15:35:59 +0000 (17:35 +0200)]
Updated Spanish translation

12 years agoUpdated Traditional Chinese translation(Hong Kong and Taiwan)
Chao-Hsiung Liao [Sat, 13 Aug 2011 07:17:37 +0000 (15:17 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)

12 years agoCoding style and whitespace cleanup.
Matthew Barnes [Sat, 13 Aug 2011 03:04:52 +0000 (23:04 -0400)]
Coding style and whitespace cleanup.

12 years agoUpdate API docs.
Matthew Barnes [Sat, 13 Aug 2011 03:03:52 +0000 (23:03 -0400)]
Update API docs.

12 years agoBug #656267 - Checking for auth types doesn't work properly
Milan Crha [Fri, 12 Aug 2011 09:29:27 +0000 (11:29 +0200)]
Bug #656267 - Checking for auth types doesn't work properly

12 years agolibecal: e_cal_remove_object() must remove *all* recurrences
Patrick Ohly [Tue, 9 Aug 2011 08:30:14 +0000 (11:30 +0300)]
libecal: e_cal_remove_object() must remove *all* recurrences

Traditionally, e_cal_remove_object() has always removed all
recurrences, despite the use of MOD_THIS underneath. That was due to
the uncertain semantic of MOD_THIS without rid.

Since clarifying that semantic and fixing the (file) backend
accordingly, e_cal_remove_object() started to behave differently: of
an event series with detached recurrences, only the parent event was
removed, which then caused the failures fixed by the previous commits.

This commit fixes that by switching to MOD_ALL, which properly
reflects the semantic of the API call. It was tested successfully with
the file backend.

12 years agocalendar file backend: fixed incomplete sanity check in e_cal_create_object()
Patrick Ohly [Tue, 9 Aug 2011 08:26:16 +0000 (11:26 +0300)]
calendar file backend: fixed incomplete sanity check in e_cal_create_object()

e_cal_create_object() traditionally is used for a new events which are
unrelated to anything in the calendar. Adding detached recurrences
to an existing meeting series has to be done with e_cal_modify_object().

The code did not correctly reject the addition of a parent event for a
previously added child event event because lookup_component() returned
NULL in that case.

This commit renames lookup_component() and redefines the return value
to match what it is used for: checking for the existance of a UID.

12 years agoecal file backend: avoid manipulating the UID inside component_add()
Patrick Ohly [Thu, 4 Aug 2011 15:55:07 +0000 (17:55 +0200)]
ecal file backend: avoid manipulating the UID inside component_add()

This commit fixes the following memory handling problem:
==10069== Invalid read of size 1
==10069==    at 0x4C25812: __GI_strlen (mc_replace_strmem.c:284)
==10069==    by 0x8EF011E: g_strdup (gstrfuncs.c:99)
==10069==    by 0xF4E08B6: e_cal_backend_file_create_object (e-cal-backend-file.c:2363)
==10069==    by 0x93E6061: e_cal_backend_sync_create_object (e-cal-backend-sync.c:214)
==10069==    by 0x93E86D3: _e_cal_backend_create_object (e-cal-backend-sync.c:630)
==10069==    by 0x93DD40B: e_cal_backend_create_object (e-cal-backend.c:1017)
==10069==    by 0x93F0C34: impl_Cal_createObject (e-data-cal.c:401)
==10069==    by 0x4E75383: _e_gdbus_gdbus_cclosure_marshaller_BOOLEAN__OBJECT_STRING (e-gdbus-marshallers.c:377)
==10069==    by 0x820999E: g_closure_invoke (gclosure.c:773)
==10069==    by 0x8225972: signal_emit_unlocked_R (gsignal.c:3256)
==10069==    by 0x82248D0: g_signal_emit_valist (gsignal.c:2997)
==10069==    by 0x8224DBC: g_signal_emit (gsignal.c:3044)
==10069==  Address 0x1499c7b0 is 0 bytes inside a block of size 39 free'd
==10069==    at 0x4C240FD: free (vg_replace_malloc.c:366)
==10069==    by 0x9DE952C: icalvalue_free (in /usr/lib/libical.so.0.44.0)
==10069==    by 0x9DDB796: icalproperty_set_value (in /usr/lib/libical.so.0.44.0)
==10069==    by 0x4E4FFA2: e_cal_component_set_uid (e-cal-component.c:1479)
==10069==    by 0xF4DB8F3: check_dup_uid (e-cal-backend-file.c:498)
==10069==    by 0xF4DBD9B: add_component (e-cal-backend-file.c:614)
==10069==    by 0xF4E0894: e_cal_backend_file_create_object (e-cal-backend-file.c:2356)
==10069==    by 0x93E6061: e_cal_backend_sync_create_object (e-cal-backend-sync.c:214)
==10069==    by 0x93E86D3: _e_cal_backend_create_object (e-cal-backend-sync.c:630)
==10069==    by 0x93DD40B: e_cal_backend_create_object (e-cal-backend.c:1017)
==10069==    by 0x93F0C34: impl_Cal_createObject (e-data-cal.c:401)
==10069==    by 0x4E75383: _e_gdbus_gdbus_cclosure_marshaller_BOOLEAN__OBJECT_STRING (e-gdbus-marshallers.c:377)

This occurs when a client (incorrectly) tries to create a VEVENT with
RECURRENCE-ID for a UID which already exists. The sequence of events is this:
- e_cal_backend_file_create_object() calls lookup_component(),
  which returns NULL because it only checks for the parent event
  (will be fixed separately).
- e_cal_backend_file_create_object() keeps a pointer to the UID.
- check_dup_uid() repeats the UID check, but this time finds that it
  is already taken and replaces the existing UID in the component
  before adding it. The pointer in e_cal_backend_file_create_object()
  points to freed memory.

I've seen cases where the hash ended up using the original UID as key,
with a component inside that had the new, replaced UID. As a result,
retrieving the event as reported by e_cal_get_object_list() (= rewritten UID)
failed in e_cal_get_object() (= original UID).

The UID should not be overwritten. I can't verify it anymore (events where it occured
have already been deleted), but this rewriting might explain why some of my
meeting update emails couldn't be applied to previously imported events.

Therefore this patch moves check_dup_uid() out of component_add(). This check
and rewriting only makes sense when reading the existing calendar file,
as a safe-guard against on-disk corruption. When adding or modifying events
via the API, the right reaction is to add a missing UID or or reject the
operation with an error.

All places where component_add() is used should have the necessary checks
or are preceeded by a remove_component(), which removes the UID first.

12 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Wed, 10 Aug 2011 13:06:29 +0000 (15:06 +0200)]
Updated Norwegian bokmål translation

12 years agocomplete_get_object_master: Fix the NULL recurrence-id check
Christophe Dumez [Tue, 9 Aug 2011 12:22:25 +0000 (15:22 +0300)]
complete_get_object_master: Fix the NULL recurrence-id check

The check was checking that the recurrence-id was valid instead
of making sure that it is NULL (opposite).

12 years agoAdd a bit more type checking in ESourceList
Milan Crha [Tue, 9 Aug 2011 11:25:08 +0000 (13:25 +0200)]
Add a bit more type checking in ESourceList

12 years agoe_client_utils_open_new() could use already freed memory
Milan Crha [Mon, 8 Aug 2011 09:56:28 +0000 (11:56 +0200)]
e_client_utils_open_new() could use already freed memory

Backends can notify that they are "opened" multiple times, but only
the first notification is significant for e_client_utils_open_new().

12 years agoBug #656058 - Improve EBookBackendSqliteDB searching API
Tristan Van Berkom [Mon, 8 Aug 2011 08:49:24 +0000 (10:49 +0200)]
Bug #656058 - Improve EBookBackendSqliteDB searching API

12 years agoUpdated Galician translations
Fran Dieguez [Sun, 7 Aug 2011 13:12:10 +0000 (15:12 +0200)]
Updated Galician translations

12 years agoProperly manage boolean values in SQLite contacts cache
Milan Crha [Fri, 5 Aug 2011 14:50:13 +0000 (16:50 +0200)]
Properly manage boolean values in SQLite contacts cache

12 years agoVala bindings: work around owned not being honored in metadata
Raul Gutierrez Segales [Thu, 4 Aug 2011 21:23:16 +0000 (22:23 +0100)]
Vala bindings: work around owned not being honored in metadata

Works around: https://bugzilla.gnome.org/show_bug.cgi?id=655996

12 years agoBug #652172 - Fix a regression from the previous commit
Milan Crha [Thu, 4 Aug 2011 14:04:00 +0000 (16:04 +0200)]
Bug #652172 - Fix a regression from the previous commit

12 years agoCall gtk_init_check() in factories with enabled maintainer mode
Milan Crha [Thu, 4 Aug 2011 09:31:15 +0000 (11:31 +0200)]
Call gtk_init_check() in factories with enabled maintainer mode

That's to have loaded gtk-modules, like gnomesegvhandler
from bug-buddy, if it's possible. Factories can still be
run without gtk environment.

12 years agoAdd missing G_BEGIN_DECLS macro to libedataserver/e-client.h
Christophe Dumez [Wed, 3 Aug 2011 12:59:24 +0000 (15:59 +0300)]
Add missing G_BEGIN_DECLS macro to libedataserver/e-client.h

12 years agoBug #655748 - rdate parsing failure: unknown value for period 20068
Milan Crha [Wed, 3 Aug 2011 10:02:49 +0000 (12:02 +0200)]
Bug #655748 - rdate parsing failure: unknown value for period 20068

13 years agoUpdated Swedish translation
Daniel Nylander [Wed, 3 Aug 2011 06:45:13 +0000 (08:45 +0200)]
Updated Swedish translation

13 years agoAdding test-client-revision-view.c
Tristan Van Berkom [Mon, 25 Jul 2011 23:12:57 +0000 (19:12 -0400)]
Adding test-client-revision-view.c

This test asserts that e_book_client_view_set_fields_of_interest()
is working properly with the local addressbook backend with regards
to views setup to only notify with the UID+REVISION.

13 years agoAdded test-client-uid-only-view.c test case.
Tristan Van Berkom [Sun, 26 Jun 2011 16:14:13 +0000 (12:14 -0400)]
Added test-client-uid-only-view.c test case.

This test case ensures that an EBookClientView with
the e_book_client_view_set_feilds_of_interest() set to
only the E_CONTACT_UID field, notifies with shallow
vcards holding only the contact UID.

13 years agoHandle fields-of-interest for local addressbook backend.
Tristan Van Berkom [Sun, 26 Jun 2011 16:05:54 +0000 (12:05 -0400)]
Handle fields-of-interest for local addressbook backend.

This patch refactors the local addressbook backend to use
the new sqlitedb api instead of the old summary apis.
The result is that vcards are virtually built from the
sqlitedb cache when fields-of-interest is set.

Additionally, the patch adds the EBookBackend->notify_update()
vfunc which can be implemented for e_book_backend_notify_update().
The file backend uses this to notify with virtually created vcards
from the sqlite cache in response to contact additions and modifications.

This patch should address both bugs:
  https://bugzilla.gnome.org/show_bug.cgi?id=652179
  https://bugzilla.gnome.org/show_bug.cgi?id=652172

13 years agoHandle summary fields and fields of interest better in e-book-backend-sqlitedb.c
Tristan Van Berkom [Fri, 29 Jul 2011 23:28:08 +0000 (19:28 -0400)]
Handle summary fields and fields of interest better in e-book-backend-sqlitedb.c

This patch dramatically changes the sqlitedb cache code by introducing
a table (array of structures) describing all of the fields which should
be included in the (summary) cache. Thus, all code that treats the
summary fields by hand previously now consults the cache generically.

The REV field is added to the summary table, the UID is always returned
in any results from e_book_backend_sqlitedb_search() and when
'fields_of_interest' is specified then the sqlite3 db will only
be queried for the fields_of_interest + UID (thus only those fields
will be present in any virtually created vcard objects).

Additionally, e_book_backend_sqlitedb_get_vcard_string() and _get_contact()
take a new 'GHashTable *fields_of_interest' argument for field filtering and
e_book_backend_sqlitedb_is_summary_query() is an exported api which can be
tested before calling e_book_backend_sqlitedb_get_vcard_string().

13 years agoDo not cancel cancellable in free_get_objects_async_data()
Milan Crha [Tue, 2 Aug 2011 14:27:56 +0000 (16:27 +0200)]
Do not cancel cancellable in free_get_objects_async_data()

13 years agoIntrospection: fix annotation in e_vcard_remove_attributes
Raul Gutierrez Segales [Tue, 2 Aug 2011 13:58:01 +0000 (14:58 +0100)]
Introspection: fix annotation in e_vcard_remove_attributes