From 63396a271453bd9d27cdea9ed9d8dcd12cd0d767 Mon Sep 17 00:00:00 2001 From: Elliu <elliu@hashi.re> Date: Thu, 7 Sep 2023 22:17:08 +0200 Subject: [PATCH] REPO: fix update of updated karas in repo Correctly fix (and store in db) the repo unix_timestpam in repo_timestamp --- src/database/update.c | 4 ++-- src/module/module_repo.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/database/update.c b/src/database/update.c index 94e44c46..6583f596 100644 --- a/src/database/update.c +++ b/src/database/update.c @@ -13,7 +13,7 @@ database_internal_get_timestamp(lkt_db *db, sqlite3_stmt *stmt, uint64_t *timest SQLITE_STEP_ROW(db, stmt, error); int64_t signed_timestamp = sqlite3_column_int64(stmt, 0); GOTO_IF(signed_timestamp < 0, "Got a negative time stamp from DB, this is an error", error); - *timestamp = (uint64_t)timestamp; + *timestamp = (uint64_t)signed_timestamp; ret = true; error: sqlite3_finalize(stmt); @@ -51,7 +51,7 @@ database_set_kara_repo_timestamp_id(lkt_db *db, int id, uint64_t timestamp) { static const char *SQL_TEMPLATE = "UPDATE kara SET repo_timestamp = %d WHERE id = %zu;"; char SQL[LKT_MAX_SQLITE_STATEMENT]; - safe_snprintf(SQL, LKT_MAX_SQLITE_STATEMENT, SQL_TEMPLATE, id, timestamp); + safe_snprintf(SQL, LKT_MAX_SQLITE_STATEMENT, SQL_TEMPLATE, timestamp, id); SQLITE_EXEC(db, SQL, error); return true; error: diff --git a/src/module/module_repo.c b/src/module/module_repo.c index c62f5ea4..3e7321a0 100644 --- a/src/module/module_repo.c +++ b/src/module/module_repo.c @@ -535,8 +535,8 @@ ___handle_got_json_internal_callback(const char *key, const char *val, int comp, database_get_kara_repo_timestamp_path(kara->db, kara->filename, &filestamp); database_is_kara_mkv(kara->db, kara->filename, &magic_valid); - if (filestamp == 0 || kara->unix_timestamp != (long)(uint64_t)kara->unix_timestamp || - filestamp <= (uint64_t)kara->unix_timestamp || (!magic_valid)) + if (filestamp == 0 || filestamp != (uint64_t)kara->unix_timestamp || + filestamp < (uint64_t)kara->unix_timestamp || (!magic_valid)) goto do_it; /* Ignore kara */ -- GitLab