[PATCH 18/19] Xephyr: handle errors in event loop
Alan Coopersmith
alan.coopersmith at oracle.com
Wed Oct 20 10:38:37 PDT 2010
Julien Cristau wrote:
> Signed-off-by: Julien Cristau <jcristau at debian.org>
> ---
> hw/kdrive/ephyr/hostx.c | 15 +++++++++++++++
> 1 files changed, 15 insertions(+), 0 deletions(-)
>
> diff --git a/hw/kdrive/ephyr/hostx.c b/hw/kdrive/ephyr/hostx.c
> index 0dd5105..5ce5c4c 100644
> --- a/hw/kdrive/ephyr/hostx.c
> +++ b/hw/kdrive/ephyr/hostx.c
> @@ -966,6 +966,21 @@ hostx_get_event(EphyrHostXEvent *ev)
> {
> switch (xev->response_type)
> {
> + case 0: /* error */
> + {
> + xcb_generic_error_t *e = (xcb_generic_error_t *)xev;
> + fprintf(stderr, "X11 error\n"
> + "Error code: %hhu\n"
> + "Sequence number: %hu\n"
> + "Major code: %hhu\tMinor code: %hu\n"
> + "Error value: %u\n",
> + e->error_code,
> + e->sequence,
> + e->major_code, e->minor_code,
Does minor code have any meaning when major_code < 128? I suppose
it doesn't hurt to print it. I do wish there was an easy way to
print the extension name for major_code >= 128, similar to the old
Xlib error handler, since we get bug reports from users with different
configs, so have to guess what extension an error came from.
--
-Alan Coopersmith- alan.coopersmith at oracle.com
Oracle Solaris Platform Engineering: X Window System
More information about the xorg-devel
mailing list