From 776ea20889bb94b786c833a381d23a7e73196254 Mon Sep 17 00:00:00 2001
From: Kubat <mael.martin31@gmail.com>
Date: Sun, 31 Jan 2021 00:24:53 +0100
Subject: [PATCH] MOD: Add a macro to set the play state to help debug (prints
 some things at the same time)

---
 src/module/module_sdl2.c |  2 +-
 src/module/mpv.c         | 12 ++++++------
 src/module/mpv.h         |  2 ++
 3 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/src/module/module_sdl2.c b/src/module/module_sdl2.c
index 3bcc6e12..15698da7 100644
--- a/src/module/module_sdl2.c
+++ b/src/module/module_sdl2.c
@@ -491,7 +491,7 @@ module_sdl2_close(struct module_sdl2_window *win)
 {
     RETURN_UNLESS(win && win->window, "Invalid arguments", NOTHING);
     win->mpv_time_pos = win->mpv_duration = 0;
-    win->state = STATE_STOP;
+    SET_STATE_FLAG(win->state, STOP);
     RETURN_UNLESS(win->mpv, "Missing mpv ctx", NOTHING);
     static const char *cmd[] = { "stop", NULL };
     mpv_command_async((mpv_handle *) win->mpv, 0, cmd);
diff --git a/src/module/mpv.c b/src/module/mpv.c
index ecbfc7de..762bd21f 100644
--- a/src/module/mpv.c
+++ b/src/module/mpv.c
@@ -184,18 +184,18 @@ loop:
 
     switch (event->event_id) {
     case MPV_EVENT_PAUSE:
-        *state = STATE_PAUSE;
+        SET_STATE_FLAG(*state, PAUSE);
         lkt_queue_send(queue, lkt_event_play_toggle, LKT_PLAY_PAUSE);
         break;
 
     case MPV_EVENT_UNPAUSE:
-        *state = STATE_PLAY;
+        SET_STATE_FLAG(*state, PLAY);
         lkt_queue_send(queue, lkt_event_play_toggle, LKT_PLAY_PLAY);
         break;
 
     case MPV_EVENT_SHUTDOWN:
         *time_pos = (*time_duration = 0);
-        *state = STATE_STOP;
+        SET_STATE_FLAG(*state, STOP);
         lkt_queue_send(queue, lkt_event_play_toggle, LKT_PLAY_STOP);
         reg_call(mod->reg, "close", 1, mod->data);
         return 1;
@@ -204,7 +204,7 @@ loop:
         return 1;
 
     case MPV_EVENT_START_FILE:
-        *state = STATE_PLAY;
+        SET_STATE_FLAG(*state, PLAY);
         *hinib = false;
         LOG_DEBUG("WINDOW", "Start of file!");
         break;
@@ -246,10 +246,10 @@ loop:
             && prop->format == MPV_FORMAT_FLAG) {
             if (* (bool *) prop->data) {
                 lkt_queue_send(queue, lkt_event_play_toggle, LKT_PLAY_PAUSE);
-                *state = STATE_PAUSE;
+                SET_STATE_FLAG(*state, PAUSE);
             } else {
                 lkt_queue_send(queue, lkt_event_play_toggle, LKT_PLAY_PLAY);
-                *state = STATE_PLAY;
+                SET_STATE_FLAG(*state, PLAY);
             }
         }
         break;
diff --git a/src/module/mpv.h b/src/module/mpv.h
index d50182e6..7952435c 100644
--- a/src/module/mpv.h
+++ b/src/module/mpv.h
@@ -27,3 +27,5 @@ enum {
     STATE_PAUSE = 2,
 };
 
+#define SET_STATE_FLAG(sta, STATUS) \
+    (LOG_DEBUG("WINDOW", "Set status flag to " #STATUS), (sta) = STATE_##STATUS)
-- 
GitLab