diff --git a/src/commands.c b/src/commands.c
index b098144d1fead8acb66687f8430ef660918373fe..9437e85220b89e2607dea3dd4e7333f7c952f5ef 100644
--- a/src/commands.c
+++ b/src/commands.c
@@ -728,10 +728,11 @@ command_user_add(struct lkt_state *srv, size_t c, volatile sqlite3 *db, char *ar
 /* Stickers */
 
 static bool
-sticker_send(struct lkt_state *srv, size_t c, char *name, int id, int value)
+sticker_send(struct lkt_state *srv, size_t c, char *name, char *type, int id, int value)
 {
+    UNUSED(type);
     struct lkt_message *msg = lkt_message_new();
-    msg->data_len = safe_snprintf(msg->data, LKT_MESSAGE_ARGS_MAX, "%d: %s . %d", id, name, value);
+    msg->data_len = safe_snprintf(msg->data, LKT_MESSAGE_ARGS_MAX, "%d: %s . %d\n", id, name, value);
     lkt_state_send(srv, c, msg);
     return true;
 }
diff --git a/src/database/find.c b/src/database/find.c
index 9df51114d8233b26dac02bf5fbfe44755c388d88..0d09857f507e3e7233ac2d07b35aff699cfa84b2 100644
--- a/src/database/find.c
+++ b/src/database/find.c
@@ -38,22 +38,23 @@ database_search_sticker_init(volatile sqlite3 *db, struct lkt_search *ret)
     /* No bound checks in strcats, should be fine. Possible SQL injection, depend on the `type`. */
     static const char *SQL_all_types =
         "SELECT name, sts.id, value FROM 'stickers' JOIN "
-        "( SELECT id, sticker, value FROM 'stickers.kara'"
+        "( SELECT id, sticker, value, 'kara' FROM 'stickers.kara'"
         "  UNION"
-        "  SELECT id, sticker, value FROM 'stickers.plt'"
+        "  SELECT id, sticker, value , 'plt' FROM 'stickers.plt'"
         ") AS sts"
         "ON sts.sticker = 'stickers'.id";
     static const char *SQL_one_type =
-        "SELECT name, sts.id, value "
+        "SELECT name, sts.id, value, '%s' "
         "FROM 'stickers.%s' AS sts "
         "JOIN 'stickers' "
         "ON 'stickers'.id = sts.sticker";
     char SQL[LKT_MAX_SQLITE_STATEMENT];
+    ret->type = lkt_search_sticker;
 
     if (ret->st_type == NULL)
         memcpy(SQL, SQL_all_types, strlen(SQL_all_types) + 1);
     else
-        sprintf(SQL, SQL_one_type, ret->st_type);
+        sprintf(SQL, SQL_one_type, ret->st_type, ret->st_type);
     if (ret->st_uri != 0)
         sprintf(SQL + strlen(SQL), " AND sts.id = %d", ret->st_uri);
     if (ret->st_op != 0)
@@ -61,11 +62,11 @@ database_search_sticker_init(volatile sqlite3 *db, struct lkt_search *ret)
                 ret->st_op == '>' ? ">=" : ret->st_op == '<' ? "<=" : "=",
                 ret->st_value);
     strcat(SQL, ret->name ? " AND name = ?;" : ";");
+    if (ret->name)
+        SQLITE_BIND_TEXT(db, ret->stmt, 1, ret->name, error);
 
     SQLITE_PREPARE(db, ret->stmt, SQL, error);
-    if (ret->name)
-        SQLITE_BIND_TEXT(db, ret->stmt, 1, ret->name, error)
-        return true;
+    return true;
 error:
     sqlite3_finalize(ret->stmt);
     return false;
@@ -100,7 +101,7 @@ error:
 bool
 database_search_iter(struct lkt_search *item)
 {
-    const char *sql_row;
+    const char *sql_row, *type;
     int id, code, id_len;
     RETURN_UNLESS(item, "Exit because item is NULL, end iterations", false);
     GOTO_UNLESS(item->call, "Call function is NULL, terminate the search", end);
@@ -116,15 +117,17 @@ database_search_iter(struct lkt_search *item)
 
     switch (item->type) {
     case lkt_search_database:
-        id = sqlite3_column_int(item->stmt, 0);
-        sql_row = (const char *) sqlite3_column_text(item->stmt, 1);
-        id_len = sqlite3_column_int(item->stmt, 2);
-        return ((lkt_search_database_func) item->call)(item->srv, item->c, id, id_len, sql_row);
     case lkt_search_queue:
-        id = sqlite3_column_int(item->stmt, 0);
+        id      = sqlite3_column_int(item->stmt, 0);
         sql_row = (const char *) sqlite3_column_text(item->stmt, 1);
-        id_len = sqlite3_column_int(item->stmt, 2);
-        return ((lkt_search_queue_func) item->call)(item->srv, item->c, id, id_len, sql_row);
+        id_len  = sqlite3_column_int(item->stmt, 2);
+        return ((lkt_search_database_func) item->call)(item->srv, item->c, id, id_len, sql_row);
+    case lkt_search_sticker:
+        sql_row = (const char *) sqlite3_column_text(item->stmt, 0);    /* Name  */
+        id      = sqlite3_column_int(item->stmt, 1);                    /* Id    */
+        code    = sqlite3_column_int(item->stmt, 2);                    /* Value */
+        type    = (const char *) sqlite3_column_text(item->stmt, 3);    /* Type  */
+        return ((lkt_search_sticker_func) item->call)(item->srv, item->c, sql_row, type, id, code);
     case lkt_search_playlist:
     default:
         LOG_WARN_SCT("DB", "Search operation %d is not implemented", item->type);
diff --git a/src/database/queue.c b/src/database/queue.c
index 712a6b7599d1032d5a9840e1ac3300003d63b1ac..fbdf30dc7ac4d51a84792699819b39fc0c10f8a8 100644
--- a/src/database/queue.c
+++ b/src/database/queue.c
@@ -18,8 +18,10 @@
 sqlite_just_exec(database_queue_toggle_pause, "UPDATE queue_state SET paused = 1 - paused;")
 sqlite_just_exec(database_queue_crop, "DELETE FROM queue WHERE queue.kara_id <> (SELECT current FROM queue_state LIMIT 1);")
 sqlite_just_exec(database_queue_stop, "UPDATE queue_state SET current = NULL;")
-sqlite_just_exec(database_queue_clear, "DELETE FROM queue;DELETE FROM sqlite_sequence WHERE name = 'queue';UPDATE queue_state SET current = NULL;")
-sqlite_just_exec(database_config_queue_default, "UPDATE queue_state SET volume = 100, paused = 1, random = 0, repeat = 0, single = 0, consume = 0, current = NULL, duration = 0;")
+sqlite_just_exec(database_queue_clear,
+                 "DELETE FROM queue;DELETE FROM sqlite_sequence WHERE name = 'queue';UPDATE queue_state SET current = NULL;")
+sqlite_just_exec(database_config_queue_default,
+                 "UPDATE queue_state SET volume = 100, paused = 1, random = 0, repeat = 0, single = 0, consume = 0, current = NULL, duration = 0;")
 #undef sqlite_just_exec
 
 bool
diff --git a/src/main/lkt.c b/src/main/lkt.c
index 2618b4e0fa86d0bd3fa16e62d8809794cdd6250a..bb7613fb838a7811a9da12b866aadc94d24d4907 100644
--- a/src/main/lkt.c
+++ b/src/main/lkt.c
@@ -132,10 +132,10 @@ write_socket(FILE *sock, const char *format, ...)
     if (size < 0)
         fail("Connexion error")
 
-    if (fwrite(buff, sizeof(char), size, sock) < (unsigned int) size)
-        fail("Connexion error")
+        if (fwrite(buff, sizeof(char), size, sock) < (unsigned int) size)
+            fail("Connexion error")
 
-    va_end(ap);
+            va_end(ap);
 }
 
 noreturn static inline void
@@ -727,7 +727,7 @@ stickers_set__(struct lkt_cmd_args *args)
     FILE *sock = lkt_connect();
     char buff[2];
     write_socket(sock, "sticker set %s %s %s %s\n", args->argv[0],
-                        args->argv[1], args->argv[2], args->argv[3]);
+                 args->argv[1], args->argv[2], args->argv[3]);
     exit_with_status(sock, buff);
 }
 
@@ -738,10 +738,10 @@ stickers_delete__(struct lkt_cmd_args *args)
     char buff[2];
     if (args->argc == 2)
         write_socket(sock = lkt_connect(), "sticker delete %s %s",
-                            args->argv[0], args->argv[1]);
+                     args->argv[0], args->argv[1]);
     else if (args->argc == 3)
         write_socket(sock = lkt_connect(), "sticker delete %s %s %s",
-                            args->argv[0], args->argv[1], args->argv[2]);
+                     args->argv[0], args->argv[1], args->argv[2]);
     else
         fail("Invalid argument");
     exit_with_status(sock, buff);