Skip to content
Extraits de code Groupes Projets
Vérifiée Valider 3b941829 rédigé par Kubat's avatar Kubat
Parcourir les fichiers

FIX: Fix cache process => don't use the cache to build the cache...

parent c3acb0f9
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
Pipeline #2944 en échec
Ce commit fait partie de la requête de fusion !192. Les commentaires créés ici seront créés dans le contexte de cette requête de fusion.
......@@ -67,6 +67,7 @@ bool database_queue_get_current_file (lkt_db *db, char filepath[PATH_MAX]);
bool database_get_kara_id (lkt_db *db, char filepath[PATH_MAX], int *id);
bool database_get_kara_path (lkt_db *db, int id, char filepath[PATH_MAX]);
bool database_get_kara_path_no_cache(lkt_db *db, int id, char filepath[PATH_MAX]);
bool database_get_kara_position (lkt_db *db, int id, int *pos);
bool database_get_kara_mtime_id (lkt_db *db, int id, uint64_t *mtime);
bool database_get_kara_duration_id (lkt_db *db, int id, uint64_t *duration);
......
......@@ -60,7 +60,7 @@ database_cache_kara_magic(lkt_db *db, int id)
/* Get the filepath */
char filename[PATH_MAX];
memset(filename, 0, sizeof(filename));
database_get_kara_path(db, id, filename);
database_get_kara_path_no_cache(db, id, filename);
if (filename[0] == 0) {
LOG_ERROR("CACHE", "Failed to get filename for kara %ld", id);
return;
......@@ -152,7 +152,7 @@ database_cache_kara(lkt_db *db, int id)
{
char filepath[PATH_MAX];
if (!database_get_kara_path(db, id, filepath)) {
if (!database_get_kara_path_no_cache(db, id, filepath)) {
LOG_ERROR("CACHE", "Failed to get a path for kara %d, don't update cache", id);
return;
}
......
......@@ -900,6 +900,24 @@ error:
return status;
}
bool
database_get_kara_path_no_cache(lkt_db *db, int id, char filepath[PATH_MAX])
{
bool ret_code = false;
sqlite3_stmt *stmt = NULL;
static const char *SQL = "SELECT file_path FROM kara WHERE id = ?;";
RETURN_UNLESS(id && db, "Invalid argument", false);
SQLITE_PREPARE(db, stmt, SQL, error);
SQLITE_BIND_INT(db, stmt, 1, id, error);
SQLITE_STEP_ROW(db, stmt, error);
if (filepath != NULL)
safe_strncpy(filepath, sqlite3_column_chars(stmt, 0), PATH_MAX);
ret_code = true;
error:
sqlite3_finalize(stmt);
return ret_code;
}
bool
database_get_kara_path(lkt_db *db, int id, char filepath[PATH_MAX])
{
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter