lp://staging/~jbicha/syncevolution/rebuild-for-eds324

Created by Jeremy Bícha and last modified
Get this branch:
bzr branch lp://staging/~jbicha/syncevolution/rebuild-for-eds324
Only Jeremy Bícha can upload to this branch. If you are Jeremy Bícha please log in for upload directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Jeremy Bícha
Project:
Syncevolution
Status:
Development

Recent revisions

4644. By CI Train Bot Account

Releasing 1.5.1+16.10.20160820-0ubuntu1

4643. By CI Train Bot Account

* Add 0003-Add-missing-casts-from-shared_ptr-to-bool-to-fix-FTB.patch
  to add missing casts from shared_ptr to bool, fixes FTBFS with GCC 6
* Fix remaining FTBFS with GCC 6 by downgrading the C++ dialect to gnu++98
  (Closes: #811624) (LP: #1613405)

4642. By CI Train Bot Account

Releasing 1.5.1+16.10.20160706-0ubuntu1

4641. By CI Train Bot Account

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

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