memset(scr, 0, sizeof(*scr));
}
-struct pbt_scr *pbt_scr_init(void *talloc_ctx, enum pbt_twin_backend backend,
+struct pbt_scr *pbt_scr_init(void *talloc_ctx,
+ struct waitset *waitset,
+ enum pbt_twin_backend backend,
unsigned int width, unsigned int height,
const char *filename_background,
twin_bool_t (*scr_event_cb)(twin_screen_t *tscreen,
int waiter_fd = -1;
assert(backend && backend < 3);
- assert(width > 100);
- assert(height > 100);
if (!scr) {
pb_log("%s: alloc pbt_scr failed.\n", __func__);
if (backend == pbt_twin_x11) {
pb_log("%s: using twin x11 backend.\n", __func__);
+ assert(width > 100);
+ assert(height > 100);
+
#if !defined(HAVE_LIBTWIN_TWIN_X11_H)
assert(0);
#else
assert(waiter_fd != -1);
- waiter_register(waiter_fd, WAIT_IN, (void *)pbt_twin_waiter_cb,
- &scr->twin_ctx);
+ waiter_register_io(waitset, waiter_fd, WAIT_IN,
+ (void *)pbt_twin_waiter_cb, &scr->twin_ctx);
return scr;