On 03/01/2012 04:25 PM, Patrick Ohly wrote:
On Thu, 2012-03-01 at 15:25 +0200, Juha Pahkala wrote:
> On 02/29/2012 03:22 PM, Patrick Ohly wrote:
>> As a first step, please use the pre-release 1.2.99+20120228+SE+cb0b7f6
>> +SYSYNC+5e0f652 from the experimental apt repo on
syncevolution.org or
>> from
dowloads.syncevolution.org.
> I tried the .deb package, but it depended on kde,
How much of a problem is that?
I had to make a choice between compiling and packaging SyncEvolution
once, which implies that these binaries are run through all tests, and
compiling multiple times (for Evolution, for KDE) and then only
partially testing each package.
In the end I went for compiling once, because it is also less work.
What I could do is disable the KDE UI dependencies in the core
SyncEvolution by disabling KWallet support. The dependency on Akonadi in
the Akonadi backend doesn't have to be a hard dependency because only an
optional module depends on it. Failing to load that when libs are
missing is handled.
Yet another option, already discussed before, is to move
platform-specific code into modules. But that'll require further changes
to source code.
Well, it certainly isn't that big a deal, but since I don't have any kde
libs installed, and don't mind compiling, I went that route instead.
If it doesn't, do you know gdb well enough to step through the
source
code manually?
> Hmm, don't know gdb at all, but I do have some experience of debugging
> and stepping through source code... so I'm pretty sure I'll be able to help.
Please give it a try.[snip]
Thanks for the detailed instructions, I *think* I got it right. Here's
what I did:
gdb /usr/libexec/syncevo-dbus-server
(gdb) run
###################################
# run sync from phone
###################################
^C
(gdb) b show_decode_error
Breakpoint 1 at 0xd84dc0: file
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c,
line 235.
(gdb) cond 1 aRc == 0x200b
(gdb) c
###################################
# run sync from phone again
###################################
Breakpoint 1, show_decode_error (aRc=8203, aScanner=0x8513110,
aRoutineName=0xd93169 "xmlHTMLEntity")
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c:235
235 {
(gdb) bt
#0 show_decode_error (aRc=8203, aScanner=0x8513110,
aRoutineName=0xd93169 "xmlHTMLEntity")
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c:235
#1 0x00d897ea in xmlHTMLEntity (pScanner=<optimized out>,
begin=0xbfffe288,
len=0xbfffe28c)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdecxml.c:667
#2 0x00d8ad68 in xmlSkipPCDATA (pScanner=0x8513110)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdecxml.c:1158
#3 _nextTok (pScanner=0x8513110)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdecxml.c:262
#4 0x00d8509a in nextToken (pDecoder=0x88100b0)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c:643
#5 0x00d856c5 in buildPCData (pDecoder=0x88100b0, ppPCData=0x8658144)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c:2385
#6 0x00d85f8b in buildItem (pDecoder=0x88100b0, ppElem=0x88287d0)
---Type <return> to continue, or q <return> to quit---
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c:2023
#7 0x00d860d4 in appendItemList (pDecoder=0x88100b0, ppItemList=0x8611d74)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c:2501
#8 0x00d877ea in buildGenericCmd (pDecoder=0x88100b0, ppElem=0xbfffe484)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c:1217
#9 0x00d85394 in xltDecNext (pDecoder=0x88100b0,
pBufEnd=0x8451078 " <value index=\"0\"
field=\"ALARM_TIME\"
conversion=\"emptyonly\"/>\n", ' ' <repeats 12 times>,
"<value
index=\"1\" field=\"ALARM_SNOOZE\"
conversion=\"emptyonly\"/>\n", ' '
<repeats 12 times>, "<value index=\"2\"
field=\"ALARM_REPEAT\"
conversio"..., ppBufPos=0xbfffe480, pe=0xbfffe48c,
ppContent=0xbfffe484)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/xlt/all/xltdec.c:524
#10 0x00d81a8c in mgrProcessNextCommand (pInstanceInfo=0x88054b0,
id=0x88054b0)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/syncml_tk/src/sml/mgr/all/mgrcmddispatcher.c:303
#11 smlProcessData (id=0x88054b0, mode=SML_NEXT_COMMAND)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYN---Type
<return> to continue, or q <return> to quit---
C+5e0f652/./src/synthesis/src/syncml_tk/src/sml/mgr/all/mgrcmddispatcher.c:146
#12 0x00972c30 in sysync::TSyncAgent::ServerProcessingStep (this=0x840e760,
aStepCmd=@0xbfffe996, aInfoP=0xbfffe700)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/sysync/syncagent.cpp:3157
#13 0x00973016 in sysync::TSyncAgent::ServerSessionStep (this=0x840e760,
aStepCmd=@0xbfffe996, aInfoP=0xbfffe700)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/sysync/syncagent.cpp:3122
#14 0x00973852 in sysync::TSyncAgent::SessionStep (this=0x840e760,
aStepCmd=@0xbfffe996, aInfoP=0xbfffe700)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/sysync/syncagent.cpp:2932
#15 0x008e6375 in sysync::TServerEngineInterface::SessionStep
(this=0x81eff58,
aSessionH=0x861d3e8, aStepCmd=@0xbfffe996, aInfoP=0xbfffe700)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/Transport_interfaces/engine/enginesessiondispatch.cpp:477
#16 0x009125ca in sysync::SessionStep (aCB=0x81eff5c, aSessionH=0x861d3e8,
aStepCmd=0xbfffe996, aInfoP=0xbfffe700)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYN---Type
<return> to continue, or q <return> to quit---
C+5e0f652/./src/synthesis/src/sysync/engineentry.cpp:88
#17 0x002afa86 in sysync::TEngineModuleBridge::SessionStep (this=0x818c5d8,
aSessionH=0x861d3e8, aStepCmd=@0xbfffe996, aInfoP=0xbfffe700)
at
/home/jpahka/src/android/3/syncevolution-1.2.99+20120228+SE+cb0b7f6+SYSYNC+5e0f652/./src/synthesis/src/sysync_SDK/Sources/enginemodulebridge.cpp:109
#18 0x001d176a in SyncEvo::SharedEngine::SessionStep (this=0x835a920,
aSessionH=..., aStepCmd=@0xbfffe996, aInfoP=0xbfffe700)
at src/syncevo/SynthesisEngine.cpp:96
#19 0x002475ba in SyncEvo::SyncContext::doSync (this=0x835a830)
at src/syncevo/SyncContext.cpp:3549
#20 0x0024ef30 in SyncEvo::SyncContext::sync (this=0x835a830,
report=0xbfffeb54) at src/syncevo/SyncContext.cpp:3016
#21 0x080b0914 in SyncEvo::Session::run (this=0x84383d0, redirect=...)
at src/dbus/server/session.cpp:743
#22 0x08096448 in SyncEvo::Server::run (this=0xbfffef80, redirect=...)
at src/dbus/server/server.cpp:362
#23 0x0808f2ae in main (argc=993277475, argv=0x6769766c, envp=0x70756f72)
at src/dbus/server/main.cpp:120
(gdb) Quit
So, there's one backtrace, hopefully a relevant one. If I did something
wrong or if you need more, please don't hesitate to ask. And thanks for
working on this.
br, juhis