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". |
189 TRAP( trapError, ret = DoExtFuncL( aTsyReqHandle, aIpc, aPackage ); ); |
189 TRAP( trapError, ret = DoExtFuncL( aTsyReqHandle, aIpc, aPackage ); ); |
190 |
190 |
191 if ( trapError != KErrNone ) |
191 if ( trapError != KErrNone ) |
192 { |
192 { |
193 //error handling. Object cannot be created. |
193 //error handling. Object cannot be created. |
194 ReqCompleted( 0, trapError ); |
194 //reset request handle to indicate the request is no longer ongoing |
|
195 iTsyReqHandleStore->FindAndResetTsyReqHandle(aTsyReqHandle); |
|
196 iReqHandleType = EMultimodeConferenceCallReqHandleUnknown; |
|
197 ReqCompleted( aTsyReqHandle, trapError ); |
195 } |
198 } |
196 //if return value is not KErrNone |
199 //if return value is not KErrNone |
197 else if ( ret != KErrNone ) |
200 else if ( ret != KErrNone ) |
198 { |
201 { |
199 //Complete request with this error value |
202 //Complete request with this error value |
200 ReqCompleted( aTsyReqHandle, ret ); |
203 ReqCompleted( aTsyReqHandle, ret ); |
201 } |
204 } |
202 |
205 else if ( EMultimodeConferenceCallReqHandleUnknown != iReqHandleType ) |
203 //save request handle |
206 { |
204 if ( EMultimodeConferenceCallReqHandleUnknown != iReqHandleType ) |
207 //save request handle |
205 { |
|
206 #ifdef REQHANDLE_TIMER |
208 #ifdef REQHANDLE_TIMER |
207 SetTypeOfResponse ( iReqHandleType, aTsyReqHandle ); |
209 SetTypeOfResponse ( iReqHandleType, aTsyReqHandle ); |
208 #else |
210 #else |
209 iTsyReqHandleStore->SetTsyReqHandle( iReqHandleType, aTsyReqHandle ); |
211 iTsyReqHandleStore->SetTsyReqHandle( iReqHandleType, aTsyReqHandle ); |
210 #endif |
212 #endif |
211 // We've finished with this value now. Clear it so it doesn't leak |
213 } |
212 // up to any other instances of this method down the call stack |
214 |
213 iReqHandleType = EMultimodeConferenceCallReqHandleUnknown; |
215 // We've finished with this value now. Clear it so it doesn't leak |
214 } |
216 // up to any other instances of this method down the call stack |
215 |
217 iReqHandleType = EMultimodeConferenceCallReqHandleUnknown; |
|
218 |
216 return KErrNone; |
219 return KErrNone; |
217 |
220 |
218 } |
221 } |
219 |
222 |
220 // --------------------------------------------------------------------------- |
223 // --------------------------------------------------------------------------- |