core: Workaround bug in sqlite 3.6.12
authorJens Georg <mail@jensge.org>
Wed, 21 Oct 2009 15:23:55 +0000 (17:23 +0200)
committerJens Georg <mail@jensge.org>
Sat, 24 Oct 2009 14:34:37 +0000 (16:34 +0200)
Apparently select count(*) on an empty sqlite_master table triggers bug #3774.
Used another query to check if there is data in that table which won't make
sqlite 3.6.12 crash.

src/rygel/rygel-media-db.vala

index 3bcec15..632bebc 100644 (file)
@@ -303,7 +303,8 @@ public class Rygel.MediaDB : Object {
             debug ("Could not find schema version; checking for empty database...");
             try {
                 int rows = -1;
-                this.db.exec ("SELECT count(*) FROM sqlite_master",
+                this.db.exec ("SELECT count(type) FROM sqlite_master " +
+                              "WHERE rowid=1",
                               null,
                               (stmt) => {
                                   rows = stmt.column_int (0);