From kde-devel Thu Nov 15 13:45:20 2012 From: Dario Freddi Date: Thu, 15 Nov 2012 13:45:20 +0000 To: kde-devel Subject: Re: Async action with helper in KAuth Message-Id: X-MARC-Message: https://marc.info/?l=kde-devel&m=135298715403036 MIME-Version: 1 Content-Type: multipart/mixed; boundary="--===============6067423837052419769==" --===============6067423837052419769== Content-Type: multipart/alternative; boundary=f46d042f9e0aba835904ce88dcf9 --f46d042f9e0aba835904ce88dcf9 Content-Type: text/plain; charset=ISO-8859-1 Hello Yichao, 2012/11/12 Yichao Yu > > I checkout out the code for KAuth and found out the following lines > in` ActionReply Action::execute(const QString &helperID) const` > > if (d->async) { > if (hasHelper()) { > // It makes no sense > return ActionReply::InvalidActionReply; > } > > which gives the right error code and can explain why only the async > action fails. The comment says "makes no sense", but doesn't say > why.... can anyone explain the reason?? Looks like there is a logical error in the code that I forgot to fix in the 4.x branch. if (!hasHelper()) is the correct line, and if the action has no helper it doesn't make sense to execute it asynchronously since there is actually nothing to do, but only to authorize. Sorry about that, I will provide a fix ASAP - my main focus lately has been the framework branch, where most of the logic actually changed. > And I cannot found the > description for this anywhere in the tutorial (e.g. some backend may > not support async action with helper at all.....), if it really > doesn't make sense to do this (which I really doubt....) I guess it > would be better to add it... > What you are doing is perfectly supported and the bug is in the library. > > THX. > > > [1] http://forum.kde.org/viewtopic.php?f=43&t=94801 > > >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to > unsubscribe << > --f46d042f9e0aba835904ce88dcf9 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Hello Yichao,

2012= /11/12 Yichao Yu <yyc1992@gmail.com>
I checkout out the code for KAuth and found out the following lines
in` ActionReply Action::execute(const QString &helperID) const`

=A0 =A0 if (d->async) {
=A0 =A0 =A0 =A0 if (hasHelper()) {
=A0 =A0 =A0 =A0 =A0 =A0 // It makes no sense
=A0 =A0 =A0 =A0 =A0 =A0 return ActionReply::InvalidActionReply;
=A0 =A0 =A0 =A0 }

which gives the right error code and can explain why only the async
action fails. The comment says "makes no sense", but doesn't = say
why.... can anyone explain the reason??

Loo= ks like there is a logical error in the code that I forgot to fix in the 4.= x branch. if (!hasHelper()) is the correct line, and if the action has no h= elper it doesn't make sense to execute it asynchronously since there is= actually nothing to do, but only to authorize. Sorry about that, I will pr= ovide a fix ASAP - my main focus lately has been the framework branch, wher= e most of the logic actually changed.
=A0
And I cannot found the
description for this anywhere in the tutorial (e.g. some backend may
not support async action with helper at all.....), if it really
doesn't make sense to do this (which I really doubt....) I guess it
would be better to add it...

What you a= re doing is perfectly supported and the bug is in the library.
= =A0

THX.


[1] http://forum.kde.org/viewtopic.php?f=3D43&t=3D94801<= br>
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub= to unsubscribe <<

--f46d042f9e0aba835904ce88dcf9-- --===============6067423837052419769== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline >> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe << --===============6067423837052419769==--