author | mickeyl <mickeyl> | 2002-08-14 23:55:37 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2002-08-14 23:55:37 (UTC) |
commit | f4fb50020242275a11f4b185ff843517e0862f9b (patch) (side-by-side diff) | |
tree | 92a0fb73206a86faea9604edcc7666b968512389 /noncore | |
parent | 8951b45cfd2c0063e66d947346535f1af319d2a9 (diff) | |
download | opie-f4fb50020242275a11f4b185ff843517e0862f9b.zip opie-f4fb50020242275a11f4b185ff843517e0862f9b.tar.gz opie-f4fb50020242275a11f4b185ff843517e0862f9b.tar.bz2 |
Fixed damn bug causing wirelessapplet to hang Opie if /proc/net/wireless is not found (i.e. SHARP ROM or Desktop PC)
-rw-r--r-- | noncore/applets/wirelessapplet/networkinfo.cpp | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/noncore/applets/wirelessapplet/networkinfo.cpp b/noncore/applets/wirelessapplet/networkinfo.cpp index dc5c3be..22d7d83 100644 --- a/noncore/applets/wirelessapplet/networkinfo.cpp +++ b/noncore/applets/wirelessapplet/networkinfo.cpp @@ -172,12 +172,14 @@ void MWirelessNetworkInterface::updateStatistics() QString status; QString name; QFile wfile( PROCNETWIRELESS ); - wfile.open( IO_ReadOnly ); + bool hasFile = wfile.open( IO_ReadOnly ); QTextStream wstream( &wfile ); - wstream.readLine(); // skip the first two lines - wstream.readLine(); // because they only contain headers - - if ( wstream.atEnd() ) + if ( hasFile ) + { + wstream.readLine(); // skip the first two lines + wstream.readLine(); // because they only contain headers + } + if ( ( !hasFile ) || ( wstream.atEnd() ) ) { qDebug( "WIFIAPPLET: D'oh! Someone removed the card..." ); quality = -1; @@ -202,13 +204,13 @@ void MWirelessNetworkInterface::updateStatistics() MNetwork::MNetwork() { - qDebug( "MNetwork::MNetwork()" ); - procfile = "/proc/net/dev"; + //qDebug( "MNetwork::MNetwork()" ); + procfile = PROCNETDEV; } MNetwork::~MNetwork() { - qDebug( "MNetwork::~MNetwork()" ); + //qDebug( "MNetwork::~MNetwork()" ); } //--------------------------------------------------------------------------- @@ -217,13 +219,13 @@ MNetwork::~MNetwork() MWirelessNetwork::MWirelessNetwork() { - qDebug( "MWirelessNetwork::MWirelessNetwork()" ); - procfile = "/proc/net/wireless"; + //qDebug( "MWirelessNetwork::MWirelessNetwork()" ); + procfile = PROCNETWIRELESS; } MWirelessNetwork::~MWirelessNetwork() { - qDebug( "MWirelessNetwork::~MWirelessNetwork()" ); + //qDebug( "MWirelessNetwork::~MWirelessNetwork()" ); } MNetworkInterface* MWirelessNetwork::createInterface( const char* n ) const @@ -247,7 +249,9 @@ void MNetwork::enumerateInterfaces() interfaces.clear(); QString str; QFile f( procfile ); - f.open( IO_ReadOnly ); + bool hasFile = f.open( IO_ReadOnly ); + if ( !hasFile ) + return; QTextStream s( &f ); s.readLine(); s.readLine(); |