Fixed replay scanner and logfile write
[wifihood] / wifiscanner / wifimap / replay.py
index 88a7e56..c581a18 100644 (file)
@@ -6,14 +6,13 @@ import gobject
 
 import os
 
-conf = config.Configuration()
-
 class ReplayScanner ( gobject.GObject ) :
 
-    def __init__ ( self ) :
+    def __init__ ( self , ifname="wlan0" ) :
         gobject.GObject.__init__( self )
         self.scan_timeout = 0
-        self.db = db.database( os.path.join( conf.homedir , "wifireplay.db" )
+        conf = config.Configuration( 'scanner' )
+        self.db = db.database( os.path.join( conf.homedir , "wifireplay.db" ) )
 
         # Values specific to replaying
         self._file = os.path.join( conf.homedir , "wiscan_gui.info" )
@@ -53,6 +52,8 @@ class ReplayScanner ( gobject.GObject ) :
             return
 
         next = self._fd.readline().split()
+        if not next :
+            return
         delta = float(next[0]) - float(self._current[0])
         gobject.timeout_add( int(1000 / self._speed * delta) , self.scan )
 
@@ -64,7 +65,7 @@ class ReplayScanner ( gobject.GObject ) :
         self.nscan +=1
         self.scanlist.clear()
         self.tstamp = float(self._current[0])
-        for n in range(11, len(self._current), 2) :
+        for n in range(10, len(self._current), 2) :
             self.nfp += 1
             self.scanlist[ self._current[n] ] = int(self._current[n+1])