X-Git-Url: https://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=ui%2Ftwin%2Fpbt-scr.c;h=e093c3c66b13fcc28defaa3d8b882a3d8d746511;hp=3d10b9590a8c6e783fb603722f53d2781c39d864;hb=658d9e98eec02f92e3cf263a1bb27beb3d395b2f;hpb=e95497494f2c0d376c8cdb25548138c5f53cd77c diff --git a/ui/twin/pbt-scr.c b/ui/twin/pbt-scr.c index 3d10b95..e093c3c 100644 --- a/ui/twin/pbt-scr.c +++ b/ui/twin/pbt-scr.c @@ -368,7 +368,9 @@ static void pbt_scr_destructor(struct pbt_scr *scr) 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, @@ -378,8 +380,6 @@ struct pbt_scr *pbt_scr_init(void *talloc_ctx, enum pbt_twin_backend backend, 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__); @@ -394,6 +394,9 @@ struct pbt_scr *pbt_scr_init(void *talloc_ctx, enum pbt_twin_backend backend, 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 @@ -440,8 +443,8 @@ struct pbt_scr *pbt_scr_init(void *talloc_ctx, enum pbt_twin_backend backend, 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;