diff --git a/synfig-studio/src/gui/ipc.cpp b/synfig-studio/src/gui/ipc.cpp index 6b153b6..98ffcfd 100644 --- a/synfig-studio/src/gui/ipc.cpp +++ b/synfig-studio/src/gui/ipc.cpp @@ -30,6 +30,8 @@ # include #endif +#include + #include "ipc.h" #ifdef HAVE_SYS_TYPES_H @@ -92,12 +94,12 @@ using namespace studio; static std::mutex cmd_mutex; static std::list cmd_queue; static Glib::Dispatcher* cmd_dispatcher; -static bool thread_should_quit = false; +static std::atimic thread_should_quit(false); std::thread *cmd_thread = nullptr; static void pipe_listen_thread() { - for(;;) + while(!thread_should_quit) { HANDLE pipe_handle; pipe_handle=CreateNamedPipe(