summaryrefslogtreecommitdiff
path: root/src/linux
diff options
context:
space:
mode:
Diffstat (limited to 'src/linux')
-rw-r--r--src/linux/platform.c3
-rw-r--r--src/linux/thread.c7
2 files changed, 9 insertions, 1 deletions
diff --git a/src/linux/platform.c b/src/linux/platform.c
index 6083670..f87b4ac 100644
--- a/src/linux/platform.c
+++ b/src/linux/platform.c
@@ -39,6 +39,7 @@ struct t_platform_window
XEvent event;
char *clipboard_str;
s32 clipboard_strlen;
+ bool do_draw;
Atom xdnd_req;
Atom xdnd_source;
@@ -682,6 +683,7 @@ platform_window platform_open_window_ex(char *name, u16 width, u16 height, u16 m
window.next_cursor_type = CURSOR_DEFAULT;
window.clipboard_str = 0;
window.clipboard_strlen = 0;
+ window.do_draw = true;
static int att[] =
{
@@ -979,6 +981,7 @@ void platform_handle_events(platform_window *window, mouse_input *mouse, keyboar
mouse->move_y = 0;
mouse->scroll_state = 0;
keyboard->text_changed = false;
+ window->do_draw = true;
XClientMessageEvent m;
diff --git a/src/linux/thread.c b/src/linux/thread.c
index b6295ef..f7c4c3c 100644
--- a/src/linux/thread.c
+++ b/src/linux/thread.c
@@ -48,7 +48,7 @@ inline void thread_join(thread *thread)
}
}
-bool thread_tryjoin(thread *thread)
+inline bool thread_tryjoin(thread *thread)
{
if (thread->valid)
{
@@ -59,6 +59,11 @@ bool thread_tryjoin(thread *thread)
return false;
}
+inline void thread_exit()
+{
+ pthread_exit(0);
+}
+
inline void thread_stop(thread *thread)
{
if (thread->valid)