1 // Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). |
2 // All rights reserved. |
2 // All rights reserved. |
3 // This component and the accompanying materials are made available |
3 // This component and the accompanying materials are made available |
4 // under the terms of "Eclipse Public License v1.0" |
4 // under the terms of "Eclipse Public License v1.0" |
5 // which accompanies this distribution, and is available |
5 // which accompanies this distribution, and is available |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
6 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
335 TRAP( trapError, ret = DoExtFuncL( aTsyReqHandle, aIpc, aPackage ); ); |
335 TRAP( trapError, ret = DoExtFuncL( aTsyReqHandle, aIpc, aPackage ); ); |
336 |
336 |
337 if ( trapError != KErrNone ) |
337 if ( trapError != KErrNone ) |
338 { |
338 { |
339 //error handling. Object cannot be created. |
339 //error handling. Object cannot be created. |
340 //reset request handle to indicate the request is no longer ongoing |
|
341 iTsyReqHandleStore->FindAndResetTsyReqHandle(aTsyReqHandle); |
|
342 ReqCompleted( aTsyReqHandle, trapError ); |
340 ReqCompleted( aTsyReqHandle, trapError ); |
343 } |
341 } |
344 else if ( ret != KErrNone ) |
342 else if ( ret != KErrNone ) |
345 { |
343 { |
346 ReqCompleted( aTsyReqHandle, ret ); |
344 ReqCompleted( aTsyReqHandle, ret ); |
347 } |
345 } |
348 else if ( EMultimodeCallReqHandleUnknown != iReqHandleType ) |
346 //save request handle |
|
347 if ( EMultimodeCallReqHandleUnknown != iReqHandleType ) |
349 { |
348 { |
350 //save request handle |
|
351 #ifdef REQHANDLE_TIMER |
349 #ifdef REQHANDLE_TIMER |
352 SetTypeOfResponse( iReqHandleType, aTsyReqHandle ); |
350 SetTypeOfResponse( iReqHandleType, aTsyReqHandle ); |
353 #else |
351 #else |
354 iTsyReqHandleStore->SetTsyReqHandle( |
352 iTsyReqHandleStore->SetTsyReqHandle( |
355 iReqHandleType, aTsyReqHandle ); |
353 iReqHandleType, aTsyReqHandle ); |
356 #endif |
354 #endif |
|
355 // We've finished with this value now. Clear it so it doesn't leak |
|
356 // up to any other instances of this method down the call stack |
|
357 iReqHandleType = EMultimodeCallReqHandleUnknown; |
357 } |
358 } |
358 // We've finished with this value now. Clear it so it doesn't leak |
359 |
359 // up to any other instances of this method down the call stack |
|
360 iReqHandleType = EMultimodeCallReqHandleUnknown; |
|
361 } |
360 } |
362 |
361 |
363 return KErrNone; |
362 return KErrNone; |
364 } |
363 } |
365 |
364 |