mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-01-18 05:12:45 +01:00
db: Track whether a db_stmt has been executed
For some of the query methods in the next step we need to have an idea of whether the stmt was executed (db_step function) so let's track that explicitly. Signed-off-by: Christian Decker <decker.christian@gmail.com>
This commit is contained in:
parent
e65e4fcf4b
commit
98963c58e4
@ -593,6 +593,7 @@ struct db_stmt *db_prepare_v2_(const char *location, struct db *db,
|
||||
stmt->location = location;
|
||||
stmt->error = NULL;
|
||||
stmt->db = db;
|
||||
stmt->executed = false;
|
||||
stmt->inner_stmt = NULL;
|
||||
|
||||
tal_add_destructor(stmt, db_stmt_free);
|
||||
@ -1346,6 +1347,7 @@ bool db_exec_prepared_v2(struct db_stmt *stmt TAKES)
|
||||
{
|
||||
const char *expanded_sql;
|
||||
bool ret = stmt->db->config->exec_fn(stmt);
|
||||
stmt->executed = true;
|
||||
if (stmt->db->config->expand_fn != NULL && ret &&
|
||||
!stmt->query->readonly) {
|
||||
expanded_sql = stmt->db->config->expand_fn(stmt);
|
||||
|
@ -78,6 +78,8 @@ struct db_stmt {
|
||||
|
||||
/* Pointer to DB-specific statement. */
|
||||
void *inner_stmt;
|
||||
|
||||
bool executed;
|
||||
};
|
||||
|
||||
struct db_config {
|
||||
|
Loading…
Reference in New Issue
Block a user