I found the cause of this problem. While trying to do a clean exit, keytouchd does a call to XCloseDisplay. The problem is that, surprisingly, the program does not return from the XCloseDisplay call and thus doesn't exit. I think can this be described as unexpected behavior of XCloseDisplay, because as far as I know XCloseDisplay should allways return. A work around is to comment out the call to XCloseDisplay in keytouchd/main.c.
I found the cause of this problem. While trying to do a clean exit, keytouchd does a call to XCloseDisplay. The problem is that, surprisingly, the program does not return from the XCloseDisplay call and thus doesn't exit. I think can this be described as unexpected behavior of XCloseDisplay, because as far as I know XCloseDisplay should allways return. A work around is to comment out the call to XCloseDisplay in keytouchd/main.c.
- Marvin Raaijmakers