Review Request: Use mutex to avoid calling KWallet::openWallet several times
Daniele Elmo Domenichelli
daniele.domenichelli at gmail.com
Thu Nov 22 20:56:01 UTC 2012
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/107426/
-----------------------------------------------------------
Review request for Telepathy and David Edmundson.
Description
-------
In order to avoid the problem when kwallet is closed while kcm accounts is open, we introduced a bug: if more than one openWallet call is done at the same time, we reset the scoped pointer with a new wallet, the old wallet is deleted and therefore the signal is never emitted.
This patch uses a QMutex to avoid trying the wallet several times if it is already being opened.
In order to catch the signal from the KWallet, I needed a QObject, and since the KTp::WalletInterface is using K_GLOBAL_STATIC, I used the private class instead.
This addresses bug 310505.
http://bugs.kde.org/show_bug.cgi?id=310505
Diffs
-----
KTp/wallet-interface.cpp 428c02e48365c09fb579a26a73ec01efac029864
Diff: http://git.reviewboard.kde.org/r/107426/diff/
Testing
-------
Disconnected all accounts, closed the wallet and reconnected all accounts several times (accepting and canceling the kwallet dialog)
Tried to randomly connect/disconnect accounts from kcm while randomly close kwallet and accepting/cancelling kwallet dialog.
Thanks,
Daniele Elmo Domenichelli
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-telepathy/attachments/20121122/0f8127c2/attachment.html>
More information about the KDE-Telepathy
mailing list