]> git.decadent.org.uk Git - dak.git/blobdiff - daklib/dbconn.py
untouchable
[dak.git] / daklib / dbconn.py
index 05bb208fd8ad163b92ca2b9c7a89994c5a183389..89072918a2f2c25f4a7a5c81bf39fa7c26ca36ad 100755 (executable)
@@ -113,6 +113,14 @@ class DBConn(Singleton):
                        'suite_version': Cache(lambda x: '%s_%s' % (x['source'], x['suite'])),
                       }
 
+        self.prepared_statements = {}
+
+    def prepare(self,name,statement):
+        if not self.prepared_statements.has_key(name):
+            c = self.cursor()
+            c.execute(statement)
+            self.prepared_statements[name] = statement
+
     def clear_caches(self):
         self.__init_caches()
 
@@ -547,6 +555,8 @@ class DBConn(Singleton):
             for fullpath in fullpaths:
                 (path, file) = os.path.split(fullpath)
 
+                if path.startswith( "./" ):
+                    path = path[2:]
                 # Get the necessary IDs ...
                 file_id = self.get_or_set_contents_file_id(file)
                 path_id = self.get_or_set_contents_path_id(path)