From 5ac5f90099c09c1003719863c1c68d2f8a2a9872 Mon Sep 17 00:00:00 2001
From: Kubat <mael.martin31@gmail.com>
Date: Tue, 12 May 2020 18:36:13 +0200
Subject: [PATCH] Some minor fixes

---
 src/database/queue.c | 4 ++--
 src/main/server.c    | 2 --
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/src/database/queue.c b/src/database/queue.c
index 3559d3f2..0ddba990 100644
--- a/src/database/queue.c
+++ b/src/database/queue.c
@@ -293,7 +293,8 @@ database_queue_del_id(volatile sqlite3 *db, int id)
 {
     static const char *SQL_TEMPLATE =
         "BEGIN TRANSACTION;"
-        "CREATE TEMPORARY TABLE queue_tmp (position INTEGER, kara_id INTEGER, priority INTEGER);"
+        "CREATE TEMPORARY TABLE IF NOT EXISTS queue_tmp (position INTEGER, kara_id INTEGER, priority INTEGER);"
+        "DELETE FROM queue_tmp;"
         /* Move the current 'pointer' */
         "UPDATE queue_state SET current = (SELECT NULLIF(COUNT(position), 0) FROM queue JOIN queue_state ON position <= current AND kara_id != %d);"
         "DELETE FROM queue WHERE kara_id = %d;"                                                 /* Delete any kara with the specified id */
@@ -301,7 +302,6 @@ database_queue_del_id(volatile sqlite3 *db, int id)
         "DELETE FROM queue;"
         "INSERT INTO queue(priority, position, kara_id) SELECT priority, ROW_NUMBER() OVER(ORDER BY position ASC), kara_id FROM queue_tmp;"
         "UPDATE sqlite_sequence SET seq = (SELECT COUNT(*) FROM queue) WHERE name = 'queue';"   /* Update the sqlite_sequence            */
-        "DROP TABLE queue_tmp;"                                                                 /* Erase queue_tmp                       */
         "COMMIT;";
     char SQL[LKT_MAX_SQLITE_STATEMENT];
     safe_snprintf(SQL, LKT_MAX_SQLITE_STATEMENT, SQL_TEMPLATE, id, id);
diff --git a/src/main/server.c b/src/main/server.c
index 5a5d969d..ba5f5feb 100644
--- a/src/main/server.c
+++ b/src/main/server.c
@@ -49,8 +49,6 @@ __garbage_collect(void)
         free(kara_dir);
     if (conf_file)
         free(conf_file);
-    if (srv.win.free)
-        srv.win.free(&srv.win);
     LOG_INFO_SCT("GARBAGE", "%s", "Cleaning a bit with global variables");
 }
 
-- 
GitLab