diff -r 3fa92caa4fdc -r e0e1e8b55de0 wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/RWlanLogicalChannel.inl --- a/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/RWlanLogicalChannel.inl Thu Sep 02 22:23:59 2010 +0300 +++ b/wlan_bearer/wlanldd/wlan_symbian/wlanldd_symbian/inc/RWlanLogicalChannel.inl Mon Oct 04 03:07:12 2010 +0300 @@ -16,7 +16,7 @@ */ /* -* %version: 18 % +* %version: 19 % */ // ----------------------------------------------------------------------------- @@ -63,14 +63,19 @@ // inline void RWlanLogicalChannel::CloseChannel() { - // request WLAN system resources to be released - // - TRequestStatus status; - DoRequest( EWlanFinitSystem, status ); - User::WaitForRequest(status); + if ( Handle() > KNullHandle ) + { + // we have a valid handle to the kernel side object - // internally call close - Close(); + // request WLAN system resources to be released + // + TRequestStatus status; + DoRequest( EWlanFinitSystem, status ); + User::WaitForRequest(status); + + // internally call close + Close(); + } } // -----------------------------------------------------------------------------