diff -r ac20d6a0a19d -r b982c3e940f3 telephonyserverplugins/common_tsy/commontsy/src/mmstorage/cmmenstoretsy.cpp --- a/telephonyserverplugins/common_tsy/commontsy/src/mmstorage/cmmenstoretsy.cpp Mon Aug 09 17:43:08 2010 +0100 +++ b/telephonyserverplugins/common_tsy/commontsy/src/mmstorage/cmmenstoretsy.cpp Tue Sep 14 17:55:14 2010 +0100 @@ -333,6 +333,8 @@ if ( trapError != KErrNone ) { // Complete with error if trap error + // Reset request handle to indicate the request is no longer ongoing + iTsyReqHandleStore->FindAndResetTsyReqHandle( aTsyReqHandle ); ReqCompleted( aTsyReqHandle, trapError ); } else if ( ret != KErrNone ) @@ -340,21 +342,19 @@ // Complete with error if return value error ReqCompleted( aTsyReqHandle, ret ); } - - // Save request handle - if ( EMultimodeENStoreReqHandleUnknown != iReqHandleType ) + else if ( EMultimodeENStoreReqHandleUnknown != iReqHandleType ) { + // Save request handle #ifdef REQHANDLE_TIMER SetTypeOfResponse( iReqHandleType, aTsyReqHandle ); #else iTsyReqHandleStore->SetTsyReqHandle( iReqHandleType, aTsyReqHandle ); #endif + } // We've finished with this value now. Clear it so it doesn't leak // up to any other instances of this method down the call stack iReqHandleType = EMultimodeENStoreReqHandleUnknown; - } - - return KErrNone; + return KErrNone; } // ---------------------------------------------------------------------------