Diffusion Solid 6f1c6dc84a3d

Work round DBus property fetching bug

Authored by davidedmundson on Jan 27 2017, 9:11 AM.

Description

Work round DBus property fetching bug

Summary:
property() works in a slightly different way to just calling Get().
It allocates the variant of the relevant type in advance in QObject
code, and then calls
the DBus code to populate it.

This fails for QByteArrayList, before it reaches DBus code.
I don't know why, but we need a wokraround in Solid anyway.

From a DBus traffic perspective this code is identical, we just avoid
going through Qt properties.

This shouldn't introduce any new bugs, as we already use GetAll
directly, if anything this brings it more
in line.

BUG: 345871

Test Plan:
Commented out the checkCache so that it always loads data.
Instead of failing, it now works.

Subscribers: Frameworks

Tags: Frameworks

Differential Revision: https://phabricator.kde.org/D4305

Details

Committed
davidedmundsonJan 30 2017, 12:15 PM
Differential Revision
D4305: Work round the DBus type casting bug
Parents
R245:49367aeb366b: Treat no passphrase as Solid::UserCanceled error
Branches
Unknown
Tags
Unknown