diff -r 433cbbb6a04b -r 10534483575f uiacceltk/hitchcock/coretoolkit/src/HuiStatic.cpp --- a/uiacceltk/hitchcock/coretoolkit/src/HuiStatic.cpp Fri Mar 12 15:47:04 2010 +0200 +++ b/uiacceltk/hitchcock/coretoolkit/src/HuiStatic.cpp Mon Mar 15 12:43:37 2010 +0200 @@ -70,7 +70,7 @@ iStatus = KErrNotFound; } - static void DoGuardedOpL(const TAlfCommandParams& aInParams, + static TInt DoGuardedOpErrL(const TAlfCommandParams& aInParams, TDes8& aOutParams, RNotifier& aNotifier, const TDesC8* aInParams2 = 0 // ugly extension, really @@ -113,21 +113,36 @@ User::WaitForRequest(me->iTimerStatus); aOutParams.Copy(*me->iRetBuf); delete me; - User::LeaveIfError(err); + return err; } else { me->SetActive(); - User::Leave( KErrTimedOut ); + return KErrTimedOut; } } + static void DoGuardedOpL(const TAlfCommandParams& aInParams, + TDes8& aOutParams, + RNotifier& aNotifier, + const TDesC8* aInParams2 = 0 // ugly extension, really + ) + { + TInt err = DoGuardedOpErrL(aInParams, aOutParams, aNotifier, aInParams2); + User::LeaveIfError(err); + } + static TInt DoGuardedOp(const TAlfCommandParams& aInParams, TDes8& aOutParams, RNotifier& aNotifier) { TInt ret = KErrNone; - TRAP(ret, DoGuardedOpL(aInParams, aOutParams, aNotifier);) + TInt err = KErrNone; + TRAP(ret, err = DoGuardedOpErrL(aInParams, aOutParams, aNotifier);) + if (ret == KErrNone) + { + ret = err; + } return ret; } @@ -176,9 +191,8 @@ iNotif.iLayoutMirrored = (iStatus.Int() > 0); SetActive(); TAlfCommandParams params={EAlfIsMirrorred,0,0,0}; - TPckgC pkg(params); - TBuf8<1> awkwardApiDummy; - iNotif.iNotif.StartNotifierAndGetResponse(iStatus,TUid::Uid(KAlfAppFwProxyUid), pkg, awkwardApiDummy); + iParams() = params; + iNotif.iNotif.StartNotifierAndGetResponse(iStatus,TUid::Uid(KAlfAppFwProxyUid), iParams, iAwkwardApiDummy); } void DoCancel() @@ -189,6 +203,9 @@ private: CAppFwProxy& iNotif; + + TBuf8<1> iAwkwardApiDummy; + TPckgBuf iParams; }; CAppFwProxy():iLayoutMirrored(KErrNotFound)