http://bugzilla.moblin.org/show_bug.cgi?id=4921

           Summary: syncevo-dbus-server: glib CRITICAL + crash in
                    syncevo_report_array_new()
    Classification: Moblin Projects
           Product: SyncEvolution
           Version: upstream
          Platform: Generic
        OS/Version: Other
            Status: ASSIGNED
          Severity: major
          Priority: P1
         Component: GTK UI
        AssignedTo: [email protected]
        ReportedBy: [email protected]
         QAContact: [email protected]
                CC: [email protected], [email protected]


It happens whenever I want to use a self-compiled syncevo-dbus-server on my
Ubuntu Jaunty machine. Below is what I have from debugging this so far. It's a
bit mysterious. The binary compiled on Ubuntu Hardy works fine on my machine.

If I run syncevo-dbus-server under valgrind, it prints several more GLib-Object
error messages, but runs without crashing and *without* valgrind error
messages.



Error message, repeated four times before crashing:
(process:16854): GLib-CRITICAL **: g_string_append: assertion `val != NULL'
failed

Call stack:

#0  IA__g_log (log_domain=0x7f3d3290a586 "GLib",
log_level=G_LOG_LEVEL_CRITICAL, format=0x7f3d32912d2d "%s: assertion `%s'
failed")
    at /build/buildd/glib2.0-2.20.1/glib/gmessages.c:522
#1  0x00007f3d328f5cba in IA__g_string_append (string=0xce2260, val=<value
optimized out>) at /build/buildd/glib2.0-2.20.1/glib/gstring.c:813
#2  0x00007f3d343a6eee in ?? () from /usr/lib/libdbus-glib-1.so.2
#3  0x00007f3d343a7144 in dbus_g_type_get_struct () from
/usr/lib/libdbus-glib-1.so.2
#4  0x00000000004f854e in syncevo_report_array_new (end_time=1248948991,
reports=0xcde430)
    at /mnt/eeepc/syncevolution/syncevolution/src/syncevo-dbus-server.cpp:383

Caller:

#4  0x00000000004f854e in syncevo_report_array_new (end_time=1248948991,
reports=0xcde430)
    at /mnt/eeepc/syncevolution/syncevolution/src/syncevo-dbus-server.cpp:383
383             g_value_init (&val, SYNCEVO_REPORT_ARRAY_TYPE);
Current language:  auto; currently c++
(gdb) p val
$2 = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0,
v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {
      v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 =
0, v_float = 0, v_double = 0, v_pointer = 0x0}}}

Types:

#define SYNCEVO_REPORT_TYPE (dbus_g_type_get_struct ("GValueArray",
G_TYPE_STRING, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT,
G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT, G_TYPE_INT,
G_TYPE_INT, G_TYPE_INT, G_TYPE_INVALID))
typedef GValueArray SyncevoReport;
#define SYNCEVO_REPORT_ARRAY_TYPE (dbus_g_type_get_struct ("GValueArray",
G_TYPE_INT, dbus_g_type_get_collection ("GPtrArray", SYNCEVO_REPORT_TYPE)))

Segfault (related? Same function!):

Program received signal SIGSEGV, Segmentation fault.
type_get_qdata_L (node=<value optimized out>, quark=1) at
/build/buildd/glib2.0-2.20.1/gobject/gtype.c:3370
3370    /build/buildd/glib2.0-2.20.1/gobject/gtype.c: No such file or
directory.
        in /build/buildd/glib2.0-2.20.1/gobject/gtype.c
(gdb) where
Reading in symbols for /build/buildd/glib2.0-2.20.1/gobject/gvalue.c...done.
#0  type_get_qdata_L (node=<value optimized out>, quark=1) at
/build/buildd/glib2.0-2.20.1/gobject/gtype.c:3370
#1  0x00007f3d33b0ce38 in IA__g_type_check_is_value_type (type=<value optimized
out>) at /build/buildd/glib2.0-2.20.1/gobject/gtype.c:3836
#2  0x00007f3d33b136fa in IA__g_value_init (value=0x7fff3c7ced70,
g_type=139900809550432) at /build/buildd/glib2.0-2.20.1/gobject/gvalue.c:173
#3  0x00007f3d343a8f52 in ?? () from /usr/lib/libdbus-glib-1.so.2
#4  0x00000000004f8609 in syncevo_report_array_new (end_time=1248948991,
reports=0xcde430)
    at /mnt/eeepc/syncevolution/syncevolution/src/syncevo-dbus-server.cpp:384
#5  0x00000000004f9711 in syncevo_get_sync_reports (obj=0xc58400,
server=0xcb87e0 "scheduleworld_1", count=1, reports=0xcd0000,
error=0x7fff3c7cf810)
    at /mnt/eeepc/syncevolution/syncevolution/src/syncevo-dbus-server.cpp:1059
#6  0x00000000004fdb92 in
dbus_glib_marshal_syncevo_BOOLEAN__STRING_INT_POINTER_POINTER
(closure=0x7fff3c7cf6c0, return_value=0x7fff3c7cf7c0, 
    n_param_values=5, param_values=0xc62400, invocation_hint=0x0,
marshal_data=0x4f9101) at dbus/interfaces/syncevo-dbus-glue.h:200

-- 
Configure bugmail: http://bugzilla.moblin.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching someone on the CC list of the bug.
_______________________________________________
Syncevolution-issues mailing list
[email protected]
http://lists.syncevolution.org/listinfo/syncevolution-issues

Reply via email to