diff -r af3fb27c7511 -r 13838cf40350 wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/RWlanLogicalChannel.inl --- a/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/RWlanLogicalChannel.inl Tue May 25 14:40:09 2010 +0300 +++ b/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/RWlanLogicalChannel.inl Mon Jun 21 17:43:00 2010 +0300 @@ -16,7 +16,7 @@ */ /* -* %version: 17 % +* %version: 17.1.1 % */ // ----------------------------------------------------------------------------- @@ -39,9 +39,7 @@ TWlanUnit aUnit, TOpenParam& aOpenParam ) { - iWlanSystemInitialized = EFalse; - - TInt err = DoCreate( + TInt err = DoCreate( LDD_NAME, VersionRequired(), aUnit, @@ -54,12 +52,6 @@ // driver load sequence success // do system init err = InitWlanSystem( aOpenParam ); - - if ( err == KErrNone ) - { - // WLAN system successfully initialized - iWlanSystemInitialized = ETrue; - } } return err; @@ -71,21 +63,12 @@ // inline void RWlanLogicalChannel::CloseChannel() { - // release WLAN system resources only if we have been able to do the - // initialization successfully. - // This check is done to prevent a release attempt in a case where the - // device driver framework has not been properly initialized to be able to - // handle requests - if ( iWlanSystemInitialized ) - { - TRequestStatus status; - DoRequest( EWlanFinitSystem, status ); - User::WaitForRequest(status); - - // not initialized any more. This is needed to handle the case - // that this method is called multiple times - iWlanSystemInitialized = EFalse; - } + // request WLAN system resources to be released + // + TRequestStatus status; + DoRequest( EWlanFinitSystem, status ); + User::WaitForRequest(status); + // internally call close Close(); }