lp://staging/~ken-vandine/syncevolution/release-1-5-1

Created by Ken VanDine and last modified
Get this branch:
bzr branch lp://staging/~ken-vandine/syncevolution/release-1-5-1
Only Ken VanDine can upload to this branch. If you are Ken VanDine please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Ken VanDine
Project:
Syncevolution
Status:
Development

Recent revisions

4642. By Ken VanDine

set Vcs-Bzr

4641. By Ken VanDine

New upstream release
-debian/patches/Avoid-crash-if-the-g_variant_new_string-fails.patch, merged
upstream

4640. By Ken VanDine

wrap-and-sort

4639. By Ken VanDine

initial packaging branch

4638. By Patrick Ohly <email address hidden>

syncing: avoid segfault for invalid text inside items (FDO #90118)

As reported by Canonical, syncing fails if data items contain
text which is not correct UTF-8 in one of the fields that
SyncEvolution logs in the command line output (like SUMMARY of
a calendar event).

That is because the byte string coming from the item is passed
unchecked to the D-Bus implementation for transmission via D-Bus. But
D-Bus strings must be correct UTF-8, so depending on the D-Bus library
in use, one gets a segfault (GIO D-Bus, due to an unchecked NULL
pointer access) or an "out of memory" error (libdbus, which checks for
NULL).

What the D-Bus bindings now do is checking the string in advance (to
avoid error messages inside the D-Bus implementations) and then
replacing all invalid bytes with question marks. The rest of the
string is preserved.

Handling this inside the D-Bus binding layer is not the "correct"
solution (which would be to check for UTF-8 in the higher layers were
such bad data might get into SyncEvolution), but it is the less
intrusive and more complete one. Changing the bindings such that all
strings must be declared explicitly as "UTF-8 string" would have been
a way to find all places where such checks are missing, but it turned
out to be too complex and requiring too many changes.

4637. By Patrick Ohly <email address hidden>

file backend: log item manipulation

Extracting a meaningful description of each item from the Synthesis
engine when updating and adding items is easy to do for items of
certain known types (contacts and calendar items) and arguably an
improvement; in particular it makes tests like
TestCmdline.testSyncOutput more realistic.

4636. By Patrick Ohly <email address hidden>

D-Bus testing: check sync result on both sides of TestLocalSync.testSync

Checking that the item still exists on the side where it was created
is okay, but it is more important to check that it also reached the
other side.

4635. By Patrick Ohly <email address hidden>

command line: preserve log prefix of target side of local sync

In some cases, the prefix which was supposed to be embedded
in the log messages from the target side of a local sync got
lost on the way to the command line tool.

Primarily this affected the added/updated/deleted messages, as in:

[INFO remote@client] @client/addressbook: started
[INFO remote@client] updating "Joan Doe"
[INFO remote@client] @client/addressbook: received 1/1

This was not caught by automated testing because the corresponding
test (TestCmdline.testSyncOutput and TestCmdline.testSyncOutput2) is
using the file backend, which does not generate such messages at the
moment (to be changed separately).

4634. By Niels Ole Salscheider

Use ${PKG_CONFIG} instead of pkg-config.

This fixes the build on Exherbo that only has prefixed versions of pkg-config.

4633. By Patrick Ohly <email address hidden>

WebDAV: handle 403 during Google OAuth authentication

When sending an access token with insufficient scope (for example,
because the Ubuntu Online Accounts service definition was incomplete,
as documented in FDO #86824), Google responds with a 403 "service
denied" error.

Neon (arguably correctly) treats this as a permanent error and not
as a transient authentication error. Google should better send
a 401 error.

To activate the 401 error handling in SyncEvolution, detect this
special case and turn the general SE_ERROR error into SE_AUTH.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp://staging/syncevolution
This branch contains Public information 
Everyone can see this information.

Subscribers