]> pd.if.org Git - zpackage/blobdiff - lib/dbquery.c
cleanup and fix bugs in addfile
[zpackage] / lib / dbquery.c
index c2f50b6918d36769e7f153f5745e1e46b33c2bd5..3f818418d88486e477df17a7544f8bfc04f1efe3 100644 (file)
@@ -4,6 +4,7 @@
 #include "sqlite3.h"
 #include "zpm.h"
 
+#define SQLERROR(x) fprintf(stderr, "%s %d: %s\n", __func__, __LINE__, (x))
 sqlite3_stmt *zpm_dbquery(struct zpm *zpm, char *query, ...) {
        sqlite3 *db;
        char *sql;
@@ -11,7 +12,11 @@ sqlite3_stmt *zpm_dbquery(struct zpm *zpm, char *query, ...) {
        sqlite3_stmt *st;
        int rv;
 
-       if (!zpm || zpm->error || !zpm->db) {
+       if (!zpm || zpm->error) {
+               return 0;
+       }
+
+       if (!zpm->db) {
                zpm->error = 1;
                return 0;
        }
@@ -29,6 +34,7 @@ sqlite3_stmt *zpm_dbquery(struct zpm *zpm, char *query, ...) {
 
        rv = sqlite3_prepare_v2(db, sql, strlen(sql), &st, NULL);
        if (rv != SQLITE_OK) {
+               SQLERROR(sqlite3_errmsg(db));
                zpm->error = rv;
                return 0;
        }