summaryrefslogtreecommitdiffstats
path: root/tests/auto/client/mockcompositor.cpp
diff options
context:
space:
mode:
authorJørgen Lind <jorgen.lind@digia.com>2013-06-28 15:51:59 +0200
committerAndy Nichols <andy.nichols@digia.com>2013-08-02 14:45:21 +0200
commita6f2b24f23daf9267d4d13ad6012798ffcd21d97 (patch)
treea8872e800c06f65fde75380747b8d7a15f4d6ec8 /tests/auto/client/mockcompositor.cpp
parent47ca3fd878563edbc4bbd8ac44bc7692eaaeb63d (diff)
Update tests so that it does not deadlock
still failes though Change-Id: I7978c752b02f32a2e2c587c0ad674c51c5e0ad22 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
Diffstat (limited to 'tests/auto/client/mockcompositor.cpp')
-rw-r--r--tests/auto/client/mockcompositor.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/tests/auto/client/mockcompositor.cpp b/tests/auto/client/mockcompositor.cpp
index d25f90565..be44eba7a 100644
--- a/tests/auto/client/mockcompositor.cpp
+++ b/tests/auto/client/mockcompositor.cpp
@@ -42,6 +42,7 @@
#include "mockcompositor.h"
#include "mocksurface.h"
+#include <stdio.h>
MockCompositor::MockCompositor()
: m_alive(true)
, m_ready(false)
@@ -195,7 +196,10 @@ Compositor::Compositor()
{
wl_list_init(&m_outputResources);
- wl_display_add_socket(m_display, 0);
+ if (wl_display_add_socket(m_display, 0)) {
+ fprintf(stderr, "Fatal: Failed to open server socket\n");
+ exit(EXIT_FAILURE);
+ }
wl_seat_init(&m_seat);
wl_pointer_init(&m_pointer);
@@ -204,11 +208,13 @@ Compositor::Compositor()
wl_seat_set_keyboard(&m_seat, &m_keyboard);
wl_display_add_global(m_display, &wl_compositor_interface, this, bindCompositor);
+
+ wl_display_init_shm(m_display);
+
wl_display_add_global(m_display, &wl_seat_interface, this, bindSeat);
wl_display_add_global(m_display, &wl_output_interface, this, bindOutput);
wl_display_add_global(m_display, &wl_shell_interface, this, bindShell);
- wl_display_init_shm(m_display);
m_loop = wl_display_get_event_loop(m_display);
m_fd = wl_event_loop_get_fd(m_loop);
@@ -223,6 +229,7 @@ Compositor::~Compositor()
void Compositor::dispatchEvents(int timeout)
{
+ wl_display_flush_clients(m_display);
wl_event_loop_dispatch(m_loop, timeout);
}