platform/upstream/evolution-data-server.git
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

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

12 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.

12 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.

12 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

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

12 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()

12 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

12 years agoBug #655190 - Sluggish performance interacting with calendar/tasks
Milan Crha [Tue, 2 Aug 2011 13:12:14 +0000 (15:12 +0200)]
Bug #655190 - Sluggish performance interacting with calendar/tasks

12 years agoReplace alarm by reminder for UI consistency. Fixes bug #340614
Andre Klapper [Tue, 2 Aug 2011 09:14:43 +0000 (11:14 +0200)]
Replace alarm by reminder for UI consistency. Fixes bug #340614

12 years agoBug 619135 — Add photo support to Google Contacts backend
Philip Withnall [Sun, 5 Jun 2011 14:58:08 +0000 (15:58 +0100)]
Bug 619135 — Add photo support to Google Contacts backend

Add support for getting and setting photos on contacts from Google Contacts,
including caching support.

Closes: bgo#619135

13 years agoUpdated Swedish translation
Daniel Nylander [Mon, 1 Aug 2011 16:43:41 +0000 (18:43 +0200)]
Updated Swedish translation

13 years agoBug #655499 - Don't crash when getting contacts before backend is opened
Milan Crha [Mon, 1 Aug 2011 13:58:35 +0000 (15:58 +0200)]
Bug #655499 - Don't crash when getting contacts before backend is opened

13 years agoUpdated Russian translation
Yuri Kozlov [Sun, 31 Jul 2011 09:16:10 +0000 (13:16 +0400)]
Updated Russian translation

13 years agoUpdated Spanish translation
Daniel Mustieles [Fri, 29 Jul 2011 17:58:54 +0000 (19:58 +0200)]
Updated Spanish translation

13 years agoMerge same backtraces into one e_pointer_tracker report
Milan Crha [Fri, 29 Jul 2011 16:54:45 +0000 (18:54 +0200)]
Merge same backtraces into one e_pointer_tracker report

13 years agoBe able to provide backtraces for e_ptr_tracker* functions
Milan Crha [Fri, 29 Jul 2011 15:06:16 +0000 (17:06 +0200)]
Be able to provide backtraces for e_ptr_tracker* functions

The e_ptr_tracker* functions from e-data-server-util.h track
pointers and reports those left in the queue at the end of
the application. With this change, when evolution-data-server
is configured with --enable-backtraces and required tools are
available, then also a backtrace when the pointer was added
to the queue is shown.

Thanks to Jan Kratochvil for his help with the dwfl part.

13 years agoIntrospection: state the element-type when using GSLists
Raul Gutierrez Segales [Fri, 29 Jul 2011 11:44:28 +0000 (12:44 +0100)]
Introspection: state the element-type when using GSLists

13 years agoUpdated Traditional Chinese translation(Hong Kong and Taiwan)
Chao-Hsiung Liao [Fri, 29 Jul 2011 08:07:36 +0000 (16:07 +0800)]
Updated Traditional Chinese translation(Hong Kong and Taiwan)

13 years agoIntrospection: fix annotation in e_client_get_capabilities
Raul Gutierrez Segales [Thu, 28 Jul 2011 18:15:55 +0000 (19:15 +0100)]
Introspection: fix annotation in e_client_get_capabilities

13 years agoFix stray unref of server in imapx add_folders_to_summary()
David Woodhouse [Thu, 28 Jul 2011 16:25:38 +0000 (17:25 +0100)]
Fix stray unref of server in imapx add_folders_to_summary()

This was causing a double (well, multiple) free and use-after-free of the
server; it has no business here.

It was actually seen when a broken Yahoo server gave a namespace with NIL
for the dir_sep, thus causing problems with subfolders.

13 years agoMake e-{addressbook,calendar}-factory supersede old factory at startup.
David Woodhouse [Thu, 28 Jul 2011 16:19:00 +0000 (17:19 +0100)]
Make e-{addressbook,calendar}-factory supersede old factory at startup.

I've lost count of the number of times I've run a factory for debugging
purposes but actually discovered that there's another one already running,
so my new one isn't being used. It's particularly likely because when you
*kill* an existing factory Evolution will bitch about how calendars will
never work again until you restart Evolution... but it *will* restart the
factory automatically!

So make the new factory supersede an old one, and make the old one quit
when it's superseded. This will make debugging a whole lot saner.

13 years agoIntrospection: fix annotation in e_book_client_get_contacts_finish
Raul Gutierrez Segales [Thu, 28 Jul 2011 14:41:35 +0000 (15:41 +0100)]
Introspection: fix annotation in e_book_client_get_contacts_finish

13 years agoIntrospection: fix annotation in e_book_client_get_self
Raul Gutierrez Segales [Thu, 28 Jul 2011 14:21:07 +0000 (15:21 +0100)]
Introspection: fix annotation in e_book_client_get_self

In the previous commit I forgot to annotate the fact that
the EBookClient param is an out param too.

13 years agoIntrospection: fix annotation in e_book_client_get_self
Raul Gutierrez Segales [Thu, 28 Jul 2011 14:08:36 +0000 (15:08 +0100)]
Introspection: fix annotation in e_book_client_get_self

13 years agoAdd missing \n in a debug print
Milan Crha [Thu, 28 Jul 2011 11:22:13 +0000 (13:22 +0200)]
Add missing \n in a debug print

13 years agoIntrospection: fix annotation in e_book_client_get_contacts_sync
Raul Gutierrez Segales [Thu, 28 Jul 2011 11:04:37 +0000 (12:04 +0100)]
Introspection: fix annotation in e_book_client_get_contacts_sync

13 years agoBug #654893 - Fix one missed rename of 'msg_security' to 'dirty'
Sean Finney [Thu, 28 Jul 2011 10:59:45 +0000 (12:59 +0200)]
Bug #654893 - Fix one missed rename of 'msg_security' to 'dirty'

13 years agoBug #655414 - Need translation comments
Milan Crha [Thu, 28 Jul 2011 09:39:51 +0000 (11:39 +0200)]
Bug #655414 - Need translation comments

13 years agoBug #655409 - Extra flags in CamelStoreInfo break folder type check
Milan Crha [Wed, 27 Jul 2011 20:42:43 +0000 (22:42 +0200)]
Bug #655409 - Extra flags in CamelStoreInfo break folder type check

13 years agoBug #654472 - Crash on async error return over GDBus
Milan Crha [Wed, 27 Jul 2011 12:51:00 +0000 (14:51 +0200)]
Bug #654472 - Crash on async error return over GDBus

13 years agoBe able to fetch all vCards/uids from an SQLite book backend cache
Milan Crha [Wed, 27 Jul 2011 09:21:31 +0000 (11:21 +0200)]
Be able to fetch all vCards/uids from an SQLite book backend cache

13 years agoUse same type for fields_of_interest arguments
Milan Crha [Wed, 27 Jul 2011 05:33:07 +0000 (07:33 +0200)]
Use same type for fields_of_interest arguments

The fields_of_interest argument of e_book_backend_sqlitedb_search()
was of a different type than the one provided by EDataBookView.

13 years agoReturn back camel_stream_reset() functionality where required
Milan Crha [Tue, 26 Jul 2011 20:19:58 +0000 (22:19 +0200)]
Return back camel_stream_reset() functionality where required

13 years agoBug #655331 - pgp/gpg signature is not shown
Milan Crha [Tue, 26 Jul 2011 20:14:14 +0000 (22:14 +0200)]
Bug #655331 - pgp/gpg signature is not shown

13 years agoBug 654480 - [imapx] Mark as Junk is not reliable
Matthew Barnes [Sun, 24 Jul 2011 16:34:42 +0000 (11:34 -0500)]
Bug 654480 - [imapx] Mark as Junk is not reliable

When comparing server-side message flags to local flags, disregard
non-permanent flags that appear to have been cleared on the server.

This solves the problem of IMAP servers not storing junk-related flags
permanently, then when we synchronize message flags with the server, our
local junk-related flags (which -are- stored permanently) get clobbered.

13 years agoIMAPX: Delete CamelIMAPXViewSummary.
Matthew Barnes [Sun, 24 Jul 2011 14:12:51 +0000 (09:12 -0500)]
IMAPX: Delete CamelIMAPXViewSummary.

After spending nearly an hour trying to understand how this code is
used... only to realize it's not.

13 years agoPost-release version bump.
Matthew Barnes [Sat, 23 Jul 2011 17:17:57 +0000 (12:17 -0500)]
Post-release version bump.

13 years agoNEWS update for 3.1.4 release.
Matthew Barnes [Sat, 23 Jul 2011 17:13:30 +0000 (12:13 -0500)]
NEWS update for 3.1.4 release.

13 years agoCoding style and whitespace cleanups.
Matthew Barnes [Fri, 22 Jul 2011 15:03:40 +0000 (10:03 -0500)]
Coding style and whitespace cleanups.

13 years agoCamelPOP3Store cleanups.
Matthew Barnes [Tue, 19 Jul 2011 20:02:58 +0000 (15:02 -0500)]
CamelPOP3Store cleanups.

13 years agoUpdate API documentation.
Matthew Barnes [Thu, 21 Jul 2011 15:38:17 +0000 (10:38 -0500)]
Update API documentation.

13 years agoUpdate POTFILES.in for camel-junk-filter.c.
Matthew Barnes [Thu, 21 Jul 2011 12:51:09 +0000 (07:51 -0500)]
Update POTFILES.in for camel-junk-filter.c.

13 years agoAdd CamelNetworkService interface.
Matthew Barnes [Tue, 19 Jul 2011 21:58:23 +0000 (16:58 -0500)]
Add CamelNetworkService interface.

For now this interface is optional for network-based providers.
Eventually I'd like to move the connect() and disconnect() methods
from CamelService to CamelNetworkService entirely, but for now this
interface just collects duplicate code from the imap, imapx, nntp,
pop3 and smtp providers.  The connect_sync() method creates a TCP
stream and configures it to use a SOCKS proxy if available.

13 years agoGenerate GTypes for various Camel enums.
Matthew Barnes [Tue, 19 Jul 2011 17:53:47 +0000 (12:53 -0500)]
Generate GTypes for various Camel enums.

Kind of picking and choosing at this point.  Some enum types must be
renamed to use CamelCase before they can be added to camel-enums.h,
other enum types don't even have a type name.

13 years agoCamelNNTPStore cleanups.
Matthew Barnes [Fri, 15 Jul 2011 17:14:36 +0000 (13:14 -0400)]
CamelNNTPStore cleanups.

13 years agoRevert the previous commit since it seems to be a problem with the build chain
Kjartan Maraas [Mon, 18 Jul 2011 09:38:42 +0000 (11:38 +0200)]
Revert the previous commit since it seems to be a problem with the build chain

13 years agoAdd camel-junk-filter to the provider sources to make it build in recent jhbuild...
Kjartan Maraas [Sun, 17 Jul 2011 18:41:46 +0000 (20:41 +0200)]
Add camel-junk-filter to the provider sources to make it build in recent jhbuild. Also include camel-junk-filter.h in the source files that use the api.

13 years agoCamelIMAPXConnManager: Keep a weak pointer to CamelStore.
Matthew Barnes [Fri, 15 Jul 2011 15:06:43 +0000 (11:06 -0400)]
CamelIMAPXConnManager: Keep a weak pointer to CamelStore.

CamelIMAPXStore owns CamelIMAPXConnManager, so keep only a weak pointer
back to the CamelIMAPXStore to break another reference cycle.

13 years agoBreak reference cycle between CamelStore and CamelFolder.
Matthew Barnes [Fri, 15 Jul 2011 14:21:25 +0000 (10:21 -0400)]
Break reference cycle between CamelStore and CamelFolder.

Now that we've ensured that every CamelFolder instance is cached by its
parent CamelStore, the CamelFolder need only keep a weak pointer to its
parent CamelStore.  This breaks another reference cycle.

13 years agoCamelStore: Folder cache is always present.
Matthew Barnes [Fri, 15 Jul 2011 14:07:37 +0000 (10:07 -0400)]
CamelStore: Folder cache is always present.

I can't find any CamelStore instances with no folder cache, so let's
assert that it's always present and quit checking for NULL everywhere.

13 years agoCamelService: Little typo.
Matthew Barnes [Fri, 15 Jul 2011 13:28:30 +0000 (09:28 -0400)]
CamelService: Little typo.

Didn't set up the weak pointer correctly.

13 years agoCamelSession: Add camel_session_remove_services()
Matthew Barnes [Fri, 15 Jul 2011 12:45:42 +0000 (08:45 -0400)]
CamelSession: Add camel_session_remove_services()

Helps ensure CamelService instances are finalized during application
shutdown, even if CamelSession itself is caught in reference cycles.

13 years agoCamelIMAPXServer: Fix CamelSession reference leak.
Matthew Barnes [Fri, 15 Jul 2011 03:35:35 +0000 (23:35 -0400)]
CamelIMAPXServer: Fix CamelSession reference leak.

CamelIMAPXServer was not releasing its CamelSession reference.

Not that it matters much at the moment since CamelIMAPXServer instances
themselves are not getting finalized.  Need to hunt down what's leaking
those now...

13 years agoBreak reference cycle between CamelSession and CamelService.
Matthew Barnes [Fri, 15 Jul 2011 03:20:05 +0000 (23:20 -0400)]
Break reference cycle between CamelSession and CamelService.

CamelService now holds only a weak pointer to CamelSession.

13 years agoUpdated Slovenian translation
Matej Urbančič [Thu, 14 Jul 2011 12:35:11 +0000 (14:35 +0200)]
Updated Slovenian translation

13 years agoRewrite Camel's junk plugin interface.
Matthew Barnes [Mon, 11 Jul 2011 01:49:16 +0000 (21:49 -0400)]
Rewrite Camel's junk plugin interface.

Replace CamelJunkPlugin with a proper GInterface and add a "junk-filter"
property to CamelSession with corresponding get/set functions.  The new
interface includes GCancellable and GError parameters.

13 years agoFix wakeups in imapx parser thread.
David Woodhouse [Thu, 14 Jul 2011 01:52:12 +0000 (18:52 -0700)]
Fix wakeups in imapx parser thread.

There's no need to wake up every 30 seconds. If the parser_quit flag
gets set, our cancellable will be cancelled. Fix a race condition in
imapx_command_idle_stop which was triggering the cancellable and *then*
setting parser_quit.

13 years agoUpdated Lithuanian translation
Aurimas Černius [Tue, 12 Jul 2011 16:02:59 +0000 (19:02 +0300)]
Updated Lithuanian translation

13 years agoUpdated Latvian translation.
Rudolfs Mazurs [Tue, 12 Jul 2011 12:39:05 +0000 (15:39 +0300)]
Updated Latvian translation.

13 years agoMove the "$host" down when $host is actually set and don't set DL_LIB
Antoine Jacoutot [Tue, 12 Jul 2011 11:26:39 +0000 (13:26 +0200)]
Move the "$host" down when $host is actually set and don't set DL_LIB
to libdl which is not available on OpenBSD/FreeBSD.

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

13 years agoUpdated Norwegian bokmål translation
Kjartan Maraas [Tue, 12 Jul 2011 10:43:17 +0000 (12:43 +0200)]
Updated Norwegian bokmål translation

13 years agoUpdated POTFILES.in
Piotr Drąg [Sun, 10 Jul 2011 11:59:52 +0000 (13:59 +0200)]
Updated POTFILES.in

13 years agoRemove G_DISABLE_DEPRECATED.
Matthew Barnes [Sat, 9 Jul 2011 21:23:10 +0000 (17:23 -0400)]
Remove G_DISABLE_DEPRECATED.

ATK headers still use G_CONST_RETURN, which is deprecated.

13 years agoCamelSpoolStore cleanups.
Matthew Barnes [Sat, 9 Jul 2011 15:58:16 +0000 (11:58 -0400)]
CamelSpoolStore cleanups.

13 years agoCamelMhStore cleanups.
Matthew Barnes [Sat, 9 Jul 2011 15:11:07 +0000 (11:11 -0400)]
CamelMhStore cleanups.

13 years agoCamelLocalStore cleanups.
Matthew Barnes [Fri, 8 Jul 2011 19:32:52 +0000 (15:32 -0400)]
CamelLocalStore cleanups.

13 years ago[l10n]Updated Turkish translation
Muhammet Kara [Thu, 7 Jul 2011 21:25:50 +0000 (00:25 +0300)]
[l10n]Updated Turkish translation

13 years agoAdded UG translation
Abduxukur Abdurixit [Thu, 7 Jul 2011 14:27:02 +0000 (16:27 +0200)]
Added UG translation

13 years agoCamelDataWrapper: Keep contents in a GByteArray.
Matthew Barnes [Wed, 6 Jul 2011 18:58:51 +0000 (14:58 -0400)]
CamelDataWrapper: Keep contents in a GByteArray.

Keep CamelDataWrapper contents in an internal GByteArray rather than a
CamelStream.  The CamelStream was causing problems because it now needs
to be seekable, but in some cases we were getting a CamelStreamFilter
which is _not_ seekable.

Also add camel_data_wrapper_get_byte_array() for when you need direct
access to the contents.  This is sometimes more convenient than copying
it into a memory stream, but carries a thread-safety risk if you're not
careful.  Only CamelDataWrapper subclasses should really be using it.

This is another API and ABI break since CamelDataWrapper's CamelStream
pointer was a public struct member.

13 years agoRemove camel_stream_printf().
Matthew Barnes [Wed, 6 Jul 2011 11:39:43 +0000 (07:39 -0400)]
Remove camel_stream_printf().

GIO streams have no equivalent method, so removing this function forces
our code to look a bit more like it will when we move to GIO streams.

Also, camel_stream_printf() lacks GCancellable and GError arguments,
which inevitably leads to poor error handling in the providers.

libcamel soname has already been bumped for 3.1.4.

13 years agoAvoid camel_stream_printf().
Matthew Barnes [Tue, 5 Jul 2011 20:43:59 +0000 (16:43 -0400)]
Avoid camel_stream_printf().

camel_stream_printf() is next on the chopping block.

Use g_strdup_printf() or a GString to construct a formatted string in
memory, pass to to camel_stream_write() in one go, and then check for
errors (unless it's a memory stream).

13 years agopost release version bump
Chenthill Palanisamy [Wed, 6 Jul 2011 09:57:01 +0000 (15:27 +0530)]
post release version bump

13 years agoNews update for 3.1.3.1 release
Chenthill Palanisamy [Wed, 6 Jul 2011 09:44:03 +0000 (15:14 +0530)]
News update for 3.1.3.1 release

13 years agoUpdated Spanish translation
Daniel Mustieles [Wed, 6 Jul 2011 07:41:44 +0000 (09:41 +0200)]
Updated Spanish translation

13 years agoUpdate Simplified Chinese translation.
Wylmer Wang [Wed, 6 Jul 2011 07:21:39 +0000 (07:21 +0000)]
Update Simplified Chinese translation.

13 years agoBug#654054 Fix eds build failure
Akhil Laddha [Wed, 6 Jul 2011 04:47:04 +0000 (10:17 +0530)]
Bug#654054 Fix eds build failure

13 years agocamel_stream_vprintf() doesn't exist.
Matthew Barnes [Tue, 5 Jul 2011 15:41:22 +0000 (11:41 -0400)]
camel_stream_vprintf() doesn't exist.

Remove its declaration from camel-stream.h.

13 years agoRemove camel_stream_reset().
Matthew Barnes [Tue, 5 Jul 2011 14:50:11 +0000 (10:50 -0400)]
Remove camel_stream_reset().

All use cases accounted for; they're all seekable streams, so use
g_seekable_seek() instead if you need to reset the cursor position.

Obviously an API break.  The libcamel soname has already been bumped for
3.1.4 so we'll leave it be.

13 years agoPrefer g_seekable_seek() over camel_stream_reset().
Matthew Barnes [Tue, 5 Jul 2011 13:20:47 +0000 (09:20 -0400)]
Prefer g_seekable_seek() over camel_stream_reset().

When a stream is obviously a file or memory stream (both of which
implement the GSeekable interface), use g_seekable_seek() instead of
camel_stream_reset().

This is helping me discover if it's safe to remove camel_stream_reset().
We want to eventually move to GIO streams, which have no reset method.

13 years agoCamel: Remove some unnecessary type casts.
Matthew Barnes [Tue, 5 Jul 2011 13:36:13 +0000 (09:36 -0400)]
Camel: Remove some unnecessary type casts.

13 years agoCamelImapWrapper: Use GError instead of errno.
Matthew Barnes [Tue, 5 Jul 2011 11:07:23 +0000 (07:07 -0400)]
CamelImapWrapper: Use GError instead of errno.

13 years agocamel_stream_process_connect(): Add GError parameter.
Matthew Barnes [Tue, 5 Jul 2011 11:00:48 +0000 (07:00 -0400)]
camel_stream_process_connect(): Add GError parameter.

13 years agoUpdated Galician translations
Fran Dieguez [Tue, 5 Jul 2011 09:29:17 +0000 (11:29 +0200)]
Updated Galician translations

13 years agocamel_tcp_stream_ssl_enable_ssl(): Add GError parameter.
Matthew Barnes [Tue, 5 Jul 2011 04:06:46 +0000 (00:06 -0400)]
camel_tcp_stream_ssl_enable_ssl(): Add GError parameter.