1 // Copyright (c) 2006-2009 Nokia Corporation and/or its subsidiary(-ies). |
1 // Copyright (c) 2006-2010 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); |
340 ReqCompleted( aTsyReqHandle, trapError ); |
342 ReqCompleted( aTsyReqHandle, trapError ); |
341 } |
343 } |
342 else if ( ret != KErrNone ) |
344 else if ( ret != KErrNone ) |
343 { |
345 { |
344 ReqCompleted( aTsyReqHandle, ret ); |
346 ReqCompleted( aTsyReqHandle, ret ); |
345 } |
347 } |
346 //save request handle |
348 else if ( EMultimodeCallReqHandleUnknown != iReqHandleType ) |
347 if ( EMultimodeCallReqHandleUnknown != iReqHandleType ) |
|
348 { |
349 { |
|
350 //save request handle |
349 #ifdef REQHANDLE_TIMER |
351 #ifdef REQHANDLE_TIMER |
350 SetTypeOfResponse( iReqHandleType, aTsyReqHandle ); |
352 SetTypeOfResponse( iReqHandleType, aTsyReqHandle ); |
351 #else |
353 #else |
352 iTsyReqHandleStore->SetTsyReqHandle( |
354 iTsyReqHandleStore->SetTsyReqHandle( |
353 iReqHandleType, aTsyReqHandle ); |
355 iReqHandleType, aTsyReqHandle ); |
354 #endif |
356 #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; |
|
358 } |
357 } |
359 |
358 // We've finished with this value now. Clear it so it doesn't leak |
|
359 // up to any other instances of this method down the call stack |
|
360 iReqHandleType = EMultimodeCallReqHandleUnknown; |
360 } |
361 } |
361 |
362 |
362 return KErrNone; |
363 return KErrNone; |
363 } |
364 } |
364 |
365 |