On Wed, Apr 07, 2010 at 10:01:16 +0200, Patrick Ohly wrote:
[...]
This might be a bug. It indicates that the syncevo-dbus-server quit
unexpectedly.
It does, indeed.
Can you run /usr/libexec/syncevo-dbus-server in a separate shell
manually, then try "syncevolution"? If all works, you should see output
from the server and the command line.
If the server dies, please run under gdb and collect a stack back trace.
No debug symbols, so here is just the strace output.
Regards,
Tino
open("/usr/share/syncevolution/xml/scripting/10newuid.xml", O_RDONLY) = 16
read(16, " <function><![CDATA[\n // create a UID\n string
newuid() {\n return \"syuid\" + NUMFORMAT(RANDOM(1000000),6,\"0\") +
\".\" + (string)MILLISECONDS(NOW());\n }\n ]]></function>\n\n\n",
8192)
= 194
read(16, "", 7998) = 0
close(16) = 0
open("/usr/share/syncevolution/xml/scripting/11calendar.xml", O_RDONLY) = 16
read(16, " <!-- define script macros for scripts that are used by
both vCalendar 1.0 and iCalendar 2.0 -->\n\n <macro
name=\"VCALENDAR_INCOMING_SCRIPT\"><![CDATA[\n STRING MATCHES[];\n
STRING CAT,CN,EM;\n INTEGER i;\n // make sure we have all trailing and
leading spaces eliminated\n DESCRIPTION=NORMALIZED(DESCRIPTION);\n
SUMMARY=NORMALIZED(SUMMARY);\n // make sure that we have a
DESCRIPTION\n if (DESCRIPTION==EMPTY) DESCRIPTION=SUMMARY;\n //
calendar or todo\n if (ISEVENT) {\n // VEVENT\n // - handle duration
cases\n if (ISDURATION(DURATION)) {\n if (DTEND==EMPTY) DTEND = DTSTART
+ DURATION;\n if (DTSTART==EMPTY) DTSTART = DTEND - DURATION;\n }\n //
- detect alldays in vCalendar 1.0 (0:00-0:00 or 23:59 localtime)\n i =
ALLDAYCOUNT(DTSTART,DTEND,TRUE);\n if (ITEMDATATYPE()==\"vCalendar10\"
&& i>0) {\n // DTSTART and DTEND represent allday event, make them
date-only values\n // - convert start to user zone (or floating) so it
represents midnight\n DTSTART = CONVERTTOUSERZONE(DTSTART);\n
MAKEALLDAY(DTSTART,DTEND,i);\n }\n else {\n // iCalendar 2.0 - only if
DTSTART is a date-only value this really is an allday\n if
(ISDATEONLY(DTSTART)) {\n // reshape to make sure we don't have invalid
zero-duration alldays (old OCS 9 servers)\n
MAKEALLDAY(DTSTART,DTEND,i);\n }\n }\n\n // Make sure that all EXDATE
times are in the same timezone as the start\n // time. Some servers
send them as UTC, which is all fine and well, but\n // only if the
timezone definition doesn't change. Also, libical does not\n // handle
such UTC EXDATEs, so let's convert it while the UTC and\n // time zone
definition (hopefully) are in sync.\n if (TIMEZONE(DTSTART) != \"UTC\"
&& !ISFLOATING(DTSTART)) {\n i = 0;\n timestamp exdate;\n while
(i<SIZE(EXDATES)) {\n exdate = EXDATES[i];\n if (!ISDATEONLY(exdate)
&&\n (TIMEZONE(exdate) == \"UTC\" || ISFLOATING(exdate))) {\n //
\"unfloat\" floating time stamps: not sure whether that occcurs\n // in
practice, but it looks as wrong as UTC EXDATEs\n EXDATES[i] =
CONVERTTOZONE(exdate,DTSTART,TRUE);\n }\n i=i+1;\n }\n }\n // If
vcalendar1.0, rrule is not secondly, minutely, or hourly, we strip time
information\n // and only reserve date information\n if
(ITEMDATATYPE()==\"vCalendar10\" && RR_FREQ!=\"h\" &&
RR_FREQ!=\"m\" &&
RR_FREQ!=\"s\") {\n timestamp exdate;\n i = 0;\n while
(i<SIZE(EXDATES)) {\n exdate = EXDATES[i];\n if (!ISDATEONLY(exdate))
{\n EXDATES[i] = DATEONLY(exdate);\n }\n i=i+1;\n } \n }\n\n // - shape
attendees (and make sure ATTENDEES[] is assigned even for empty email
addresses)\n i=0;\n while(i<SIZE(ATTENDEES) || i<SIZE(ATTENDEE_CNS))
{\n PARSEEMAILSPEC(ATTENDEES[i], CN, EM);\n ATTENDEES[i] = EM; // pure
email address\n // in case we have no specific common name, use the one
extracted from the email\n // This catches the vCalendar 1.0 case and
eventually ill-formed iCalendar 2.0 as well\n if
(ATTENDEE_CNS[i]==EMPTY)\n ATTENDEE_CNS[i]=CN;\n // default
participation status to needs-action\n if
(ATTENDEE_PARTSTATS[i]==EMPTY)\n ATTENDEE_PARTSTATS[i]=1; // 1=needs
action\n i=i+1;\n }\n // - shape organizer\n PARSEEMAILSPEC(ORGANIZER,
CN, EM);\n ORGANIZER = EM; // pure email address\n if
(ORGANIZER_CN==EMPTY)\n ORGANIZER_CN=CN;\n }\n else {\n // VTODO\n // -
make sure we have at least a summary\n if (SUMMARY==EMPTY)
SUMMARY=DESCRIPTION; // use description if we don't have a summary\n if
(SUMMARY==EMPTY) SUMMARY=\"unnamed\"; // set dummy summary if we still
don't have one\n // due shaping for non-iCalendar 2."..., 8192) = 6905
read(16, "", 1287) = 0
close(16) = 0
brk(0xb37000) = 0xb37000
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
recvfrom(10, 0x867290, 1023, 66, 0, 0) = -1 EAGAIN (Resource
temporarily unavailable)
dup2(8, 1) = 1
close(8) = 0
close(9) = 0
close(10) = 0
recvfrom(7, 0x867290, 1023, 66, 0, 0) = -1 EAGAIN (Resource
temporarily unavailable)
dup2(5, 2) = 2
close(5) = 0
close(6) = 0
close(7) = 0
tgkill(15746, 15746, SIGSEGV) = 0
rt_sigreturn(0x3d82) = 4294967296
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Segmentation fault