]> git.treefish.org Git - photosort.git/blobdiff - src/locator.py
relax cache check
[photosort.git] / src / locator.py
index ff74e0c8d894adf43e3fd11e4513943333db7a75..d283085d8be4d9b0a5407a57a23140207650e20d 100644 (file)
@@ -20,21 +20,25 @@ class Locator:
         c = self._conn.cursor()
         c.execute("SELECT file_dir FROM cache WHERE name=? AND size=? AND meta_time=?",
                   (name, size, meta_time))
         c = self._conn.cursor()
         c.execute("SELECT file_dir FROM cache WHERE name=? AND size=? AND meta_time=?",
                   (name, size, meta_time))
+
         cached = c.fetchone()
         if cached:
         cached = c.fetchone()
         if cached:
+            # if os.path.isfile(cached[0]) and \
+            #    os.path.getsize(cached[0]) == size and \
+            #    misc.extract_meta_time(cached[0]) == meta_time:
             if os.path.isfile(cached[0]) and \
             if os.path.isfile(cached[0]) and \
-               os.path.getsize(cached[0]) == size and \
-               misc.extract_meta_time(cached[0]) == meta_time:
+               os.path.getsize(cached[0]) == size:
                 self._update_cache_access_time(name, size, meta_time)
                 return cached[0]
             else:
                 self._remove_from_cache(name, size, meta_time)
                 self._update_cache_access_time(name, size, meta_time)
                 return cached[0]
             else:
                 self._remove_from_cache(name, size, meta_time)
-        else:
-            file_dir = misc.find_file(name, size, meta_time)
-            if file_dir:
-                self._clean_cache()
-                self._add_to_cache(name, size, meta_time, file_dir)
-            return file_dir
+
+        file_dir = misc.find_file(self._base_dir, name, size, meta_time,
+                                  self._exclude_dir)
+        if file_dir:
+            self._clean_cache()
+            self._add_to_cache(name, size, meta_time, file_dir)
+        return file_dir
 
     def close(self):
         logging.info("Closing locator for %s...", self._base_dir)
 
     def close(self):
         logging.info("Closing locator for %s...", self._base_dir)
@@ -61,7 +65,7 @@ class Locator:
 
     def _clean_cache(self):
         c = self._conn.cursor()
 
     def _clean_cache(self):
         c = self._conn.cursor()
-        c.execute("DELETE FROM cache WHERE access_time<?", (int(time.time()) - 604800))
+        c.execute("DELETE FROM cache WHERE access_time<?", (int(time.time()) - 604800,))
         self._conn.commit()
 
     def _create_db(self):
         self._conn.commit()
 
     def _create_db(self):