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

Restart detection

parent c615f632
Branches
Aucune étiquette associée trouvée
2 requêtes de fusion!95Process queue,!94Resolve "Restart with current"
......@@ -7,6 +7,7 @@
#include <lektor/reg.h>
#include <lektor/database.h>
#include <mthread/mthread.h>
#include <lektor/commands.h>
#include <assert.h>
#include <signal.h>
......@@ -67,6 +68,8 @@ main(int argc, char *argv[])
normal_launch:
LOG_INFO_SCT("GENERAL", "Lektor launched by user %s (shell: %s, home: %s)",
pw->pw_name, pw->pw_shell, pw->pw_dir);
if (env_get(LKT_ENV_RESTART))
LOG_INFO_SCT("GENERAL", "%s", "Lektord has been restarted");
reg_set(server_reg);
mthread_init();
pthread_create(&th, NULL, mthread_main, NULL);
......@@ -114,11 +117,12 @@ normal_launch:
srv.kara_prefix = kara_dir;
database_config_queue_default(srv.db);
if (autoclear)
if (!env_get(LKT_ENV_RESTART) && autoclear)
database_queue_clear(srv.db);
RETURN_IF(load_module_by_name(&srv, "player", &srv.win), "Can't load module player", 3);
RETURN_IF(load_module_by_name(&srv, "repo", &srv.repo), "Can't load module repo", 3);
lkt_listen(&srv);
return EXIT_FAILURE;
}
......@@ -727,6 +727,15 @@ lkt_listen(struct lkt_state *srv)
srv->fds[0].events = POLLIN;
srv->fds_len = 1;
/* Get ENV */
/* Not working -> race condition with player module */
// char *env_current = env_get(LKT_ENV_CURRENT);
// if (env_current && !STR_MATCH(env_current, "NULL")) {
// LOG_INFO_SCT("INIT", "Restart playback from %s", env_current);
// command_play(srv->db, &srv->win, &env_current, &srv->mpd_idle_events);
// }
/* Listen */
for (;;) {
if (handle_network_events(srv) < 0)
break;
......
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