Sending boolean value using qdbus always yields true
esken at kde.org
Sun Dec 27 09:47:33 GMT 2009
Thiago Macieira wrote:
> > Em Quinta-feira 24. Dezembro 2009, às 13.10.36, Christian Esken escreveu:
> > > Hello,
> > >
> > > I have a problem with qdbus. No matter what I pass on the command
> > > line, I always receive true. Details are on b.k.o. (Bug 201940), and
> > > Thiago says, it is not a Qt issue.
> > >
> > > I added a debug statement to KMix , and it shows the effect
> > > clearly .
> > >
> > > Does anybody know what is going on here? This is for a long time (bug
> > > report from July 2009), and also for recent builds (via the
> > > openSUSE build: KDE:Qt46 and KDE:KDE4:UNSTABLE:Desktop).
>> > Run both apps (qdbus and kmix) with QDBUS_DEBUG=1.
>> The terminal with qdbus shows contents=("Front:0", false)
>> The terminal with kmix shows contents=("Front:0", true)
>Well, I can't reproduce this. My suspect is it's an optimisation bug in
> the D-Bus data marshaller.
>Can you retry with a debug build of QtDBus? It has to be -O0.
I have used "-developer-build", see . Is it enough, or must I somehow pass
After that I did a test:
Test scenario: KMix is running with the openSUSE build of Qt, qdbus is running
with my build.
Result: It works as expected: false yields false, true yields true
So I think you are right. It looks like it is on marshalling (client side).
Probably the build for openSUSE is using more esoteric optimization flags.
 Build option for Qt taken from todays GIT
./configure -qt-gif -debug -fast -developer-build -system-libpng -system-
libjpeg -system-zlib -dbus -webkit -plugin-sql-mysql -nomake examples -nomake
make: Entering directory `/SVN/qt-kde/tools/qdbus/qdbus'
g++ -c -m64 -pipe -g -g -Wall -W -D_REENTRANT
-DQT_XML_LIB -DQT_CORE_LIB -DQT_SHARED
[...] -o .obj/debug-shared/qdbus.o qdbus.cpp
More information about the kde-core-devel