]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-sql: sql_init_auto() - Require drivers to call sql_init_common() explicitly
authorTimo Sirainen <timo.sirainen@open-xchange.com>
Fri, 8 Mar 2024 12:49:05 +0000 (14:49 +0200)
committerAki Tuomi <aki.tuomi@open-xchange.com>
Wed, 12 Feb 2025 10:34:12 +0000 (12:34 +0200)
This will be needed by following changes.

src/lib-sql/driver-cassandra.c
src/lib-sql/driver-mysql.c
src/lib-sql/driver-pgsql.c
src/lib-sql/driver-sqlite.c
src/lib-sql/sql-api.c

index 6a430bfcfaaca4fc0f749b78027272471538ad7a..f1d513a0004212b542dbe7197928754ccd564866 100644 (file)
@@ -1382,7 +1382,10 @@ driver_cassandra_init_v(struct event *event, struct sql_db **db_r,
                }
        }
 
-       return driver_cassandra_init_common(event, set, ssl_set, db_r, error_r);
+       if (driver_cassandra_init_common(event, set, ssl_set, db_r, error_r) < 0)
+               return -1;
+       sql_init_common(*db_r);
+       return 0;
 }
 
 static int
index f727f9385525b9c58b474d714c68fb403de21259..231d7b4e42df9ed00a01104da255173c907f1216 100644 (file)
@@ -442,6 +442,7 @@ driver_mysql_init_v(struct event *event, struct sql_db **db_r,
 
        pool_t pool = pool_alloconly_create("mysql driver", 1024);
        *db_r = driver_mysql_init_common(pool, event, set, ssl_set);
+       sql_init_common(*db_r);
        return 0;
 }
 
index dbba2284bceddcb014644333cdd70d8367e2213c..c323a3e35f2e2317dfcd7da04db769c1adb4ba06 100644 (file)
@@ -418,6 +418,7 @@ driver_pgsql_init_v(struct event *event, struct sql_db **db_r,
                return -1;
 
        struct pgsql_db *db = driver_pgsql_init_common(event, set);
+       sql_init_common(&db->api);
        *db_r = &db->api;
        return 0;
 }
index 40d06155b6e5e7bbfd6616340b1733b021543059..d4c955e2b2603acb8c94fb0f7dd8121f160076ed 100644 (file)
@@ -172,6 +172,7 @@ driver_sqlite_init_v(struct event *event, struct sql_db **db_r,
                         &set, error_r) < 0)
                return -1;
        *db_r = driver_sqlite_init_common(event, set);
+       sql_init_common(*db_r);
        return 0;
 }
 
index 7df8ca0416ce1e20df5ad23726f4f25404de5c89..a3d7d519cd5b6c282af3ce5594b8ba0a6f16df96 100644 (file)
@@ -140,7 +140,6 @@ int sql_init_auto(struct event *event, struct sql_db **db_r,
                return -1;
        }
 
-       sql_init_common(db);
        settings_free(sql_set);
        *db_r = db;
        return 1;