On Mon, 2010-05-31 at 21:14 +0100, Patrick Ohly wrote:
> On Mon, 2010-05-31 at 13:38 +0100, Peter Robinson wrote:
> > On Mon, May 31, 2010 at 1:19 PM, Patrick Ohly <[email protected]> 
> > wrote:
> > > On Mon, 2010-05-31 at 12:48 +0100, Peter Robinson wrote:
> > >> Firstly syncevolution doesn't compile against the latest evolution
> > >> 2.31.x releases. I believe this is due to some changes in libcamel in
> > >> preparation for evolution 3.0.
> > >
> > > SyncEvolution doesn't include anything from libcamel. Can you quote an
> > > error message?
> > 
> > Actually on closer look it might be changes in gtk and not evolution.
> > My bad, sorry.
> > 
> > http://koji.fedoraproject.org/koji/getfile?taskID=2210957&name=build.log
> 
> That points towards unistd.h:
> 
>         sync-ui.c:2905: error: conflicting types for 'sync'
>         /usr/include/unistd.h:986: note: previous declaration of 'sync' was 
> here
> 
> What is in line 986?

Eh, "void sync(void)" of course. I've applied the patch.

> > I'll do so as best as I can. The following crash dumps look to be the
> > most complete. If they don't have what's needed I'll look at what I
> > can do to get you a more complete one.
> > 
> > https://bugzilla.redhat.com/attachment.cgi?id=418008
> > https://bugzilla.redhat.com/attachment.cgi?id=418102
> > https://bugzilla.redhat.com/attachment.cgi?id=418228
> 
> All of that confirms that the "error" pointer wasn't set correctly. But
> why? This needs to be checked with valgrind and gdb and looking at the
> dbus library call prior to the failure.

Any update on that?

Note that what I said earlier about "error" not set is not quite right.
It is wrong in internal_bus_get(), but was still sane in
g_dbus_setup_bus():

#1  0x00000033b800b4f7 in internal_bus_get (type=DBUS_BUS_SESSION,
private=0, 
    error=0x1) at dbus-bus.c:435
        address = <value optimized out>
        connection = <value optimized out>
        bd = <value optimized out>
        address_type = <value optimized out>
        __FUNCTION__ = "internal_bus_get"
#2  0x00007f443dd551d1 in g_dbus_setup_bus (type=DBUS_BUS_SYSTEM, name=0x0, 
    error=0x33b802ec98) at mainloop.c:458
        connection = <value optimized out>

This is the source code:

DBusConnection *g_dbus_setup_bus(DBusBusType type, const char *name,
                                                        gboolean unshared,
                                                        DBusError *error)
{
        DBusConnection *connection;

        DBG("type %d name %s error %p", type, name, error);

        connection = unshared ? dbus_bus_get_private(type, error) :
                dbus_bus_get(type, error);

There's really no chance in the C source code to mangle "error". Must
happen inside the compiler generated code or in the dbus functions.
Again, valgrind might show something.


-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.


_______________________________________________
SyncEvolution mailing list
[email protected]
http://lists.syncevolution.org/listinfo/syncevolution

Reply via email to