diff options
Diffstat (limited to 'src/Plugins')
| -rw-r--r-- | src/Plugins/Monitors/Net.hs | 5 | 
1 files changed, 3 insertions, 2 deletions
| diff --git a/src/Plugins/Monitors/Net.hs b/src/Plugins/Monitors/Net.hs index e290539..9819fe2 100644 --- a/src/Plugins/Monitors/Net.hs +++ b/src/Plugins/Monitors/Net.hs @@ -27,6 +27,7 @@ import Control.Monad (forM, filterM)  import System.Directory (getDirectoryContents, doesFileExist)  import System.FilePath ((</>))  import System.Console.GetOpt +import System.IO.Error (catchIOError)  import qualified Data.ByteString.Lazy.Char8 as B @@ -105,9 +106,9 @@ existingDevs = getDirectoryContents "/sys/class/net" >>= filterM isDev          excludes = [".", "..", "lo"]  isUp :: String -> IO Bool -isUp d = do +isUp d = flip catchIOError (const $ return False) $ do    operstate <- B.readFile (operstateDir d) -  return $ (B.unpack . head . B.lines) operstate `elem`  ["up", "unknown"] +  return $! (B.unpack . head . B.lines) operstate `elem`  ["up", "unknown"]  readNetDev :: [String] -> IO NetDevRawTotal  readNetDev (d:x:y:_) = do | 
