equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 2002-2009 Nokia Corporation and/or its subsidiary(-ies). |
2 * Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies). |
3 * All rights reserved. |
3 * All rights reserved. |
4 * This component and the accompanying materials are made available |
4 * This component and the accompanying materials are made available |
5 * under the terms of "Eclipse Public License v1.0" |
5 * under the terms of "Eclipse Public License v1.0" |
6 * which accompanies this distribution, and is available |
6 * which accompanies this distribution, and is available |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
735 if ( KErrNone == err ) |
735 if ( KErrNone == err ) |
736 { |
736 { |
737 iOpen = ETrue; |
737 iOpen = ETrue; |
738 |
738 |
739 // Start status notifier |
739 // Start status notifier |
740 if ( !iStatusNotifier->IsActive() ) |
740 if ( iStatusNotifier && !iStatusNotifier->IsActive() ) |
741 { |
741 { |
742 LOGIT("OpenContext: start status notifier") |
742 LOGIT("OpenContext: start status notifier") |
743 iStatusNotifier->Start( iContext ); |
743 iStatusNotifier->Start( iContext ); |
744 } |
744 } |
745 } |
745 } |
848 iContext.Deactivate( status ); |
848 iContext.Deactivate( status ); |
849 User::WaitForRequest( status ); |
849 User::WaitForRequest( status ); |
850 err = status.Int(); |
850 err = status.Int(); |
851 |
851 |
852 // Remove from server tables if status notifier is not active. |
852 // Remove from server tables if status notifier is not active. |
853 if ( !iStatusNotifier->IsActive() ) |
853 if ( !iStatusNotifier || !iStatusNotifier->IsActive() ) |
854 { |
854 { |
855 // Remove from server tables |
855 // Remove from server tables |
856 RemoveFromServer(); |
856 RemoveFromServer(); |
857 |
857 |
858 // Close the context |
858 // Close the context |
1282 iConnDataModule->RemoveFromServer(); |
1282 iConnDataModule->RemoveFromServer(); |
1283 |
1283 |
1284 // Close the context |
1284 // Close the context |
1285 iConnDataModule->CloseContext(); |
1285 iConnDataModule->CloseContext(); |
1286 |
1286 |
|
1287 // Dial-up connection has gone down. Make sure the dial-up PDP |
|
1288 // context override is disabled. |
|
1289 LOGIT("External PSD connection status EStatusDeleted, disabling dial-up override") |
|
1290 iServer->SetDialUpOverrideStatus( EConnMonDialUpOverrideInactive ); |
|
1291 |
1287 // Delete all old connection objects. This method should be used |
1292 // Delete all old connection objects. This method should be used |
1288 // carefully because it will delete ConnectionData and |
1293 // carefully because it will delete ConnectionData and |
1289 // statusnotifier objects. Get out fast from RunL(). |
1294 // statusnotifier objects. Get out fast from RunL(). |
1290 iFaxModule->DeleteConnections(); |
1295 iFaxModule->DeleteConnections(); |
1291 |
1296 |
1292 // Stop listening |
1297 // Stop listening |
1293 return; |
1298 return; |
|
1299 } |
|
1300 else if ( iContextStatus == RPacketContext::EStatusActive ) |
|
1301 { |
|
1302 // Dial-up connection has been established. Make sure the dial-up |
|
1303 // PDP context override is disabled. |
|
1304 LOGIT("External PSD connection status EStatusActive, disabling dial-up override") |
|
1305 iServer->SetDialUpOverrideStatus( EConnMonDialUpOverrideInactive ); |
1294 } |
1306 } |
1295 |
1307 |
1296 // New request |
1308 // New request |
1297 Receive(); |
1309 Receive(); |
1298 } |
1310 } |