andlabs / andlabs/libui

[xcb] Unknown sequence number while processing queue - XInitThreads

Abierto
#200 2 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
C
Estrellas
10.9k
Forks
612
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Hey there, I've been working on Haskell bindings as well as extensions to this library on https://github.com/beijaflor-io/haskell-libui

Upon running [a FRP click-to-resize](https://github.com/beijaflor-io/haskell-libui/blob/master/examples/ReactiveBananaClickToResize.hs) multi-threaded example, I get the following exception on Linux:

```
[xcb] Unknown sequence number while processing queue
[xcb] Most likely this is a multi-threaded client and XInitThreads has not been called
[xcb] Aborting, sorry about that.
libui-reactive-banana-click-to-resize: xcb_io.c:274: poll_for_event: Assertion `!xcb_xlib_threads_sequence_lost' failed.
```

Indeed `XInitThreads` does't seem to be called in `libui/unix/main.c` in `uiInit`. Adding it fixed the problem for me.

Here's a patch to do it: https://gist.github.com/c6f4f0bc5fa5aec33bb83ac2d4c53f3d

I'm unfamiliar with the build system here and had to re-instruct Haskell's build system to work anyway, so I don't need any other changes but this for the bindings to work, but I'm open to submitting a PR with a fix to discuss, understand and fix the issue.

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.