Am 06.03.2011 21:53, schrieb Alan Coopersmith:
> From: Jordan Hayes <[email protected]>
> 
> https://bugs.freedesktop.org/show_bug.cgi?id=34715
> 
> XtAppNextEvent() doesn't return until there's an actual XEvent to be
> handled; it handles Xt-internal events (inputs, timers, signals)
> itself, but doesn't return (because of course, those aren't XEvents).
> Which means that the exit flag doesn't get a chance to break the loop
> until/unless there's an actual XEvent.
> 
> Signed-off-by: Alan Coopersmith <[email protected]>

looks ok to me

Signed-off-by: Walter Harms <[email protected]>

> ---
>  src/Event.c |    8 +-------
>  1 files changed, 1 insertions(+), 7 deletions(-)
> 
> diff --git a/src/Event.c b/src/Event.c
> index 7be5987..11823d6 100644
> --- a/src/Event.c
> +++ b/src/Event.c
> @@ -1549,15 +1549,9 @@ void XtMainLoop(void)
>  void XtAppMainLoop(
>       XtAppContext app)
>  {
> -    XEvent event;
> -
>      LOCK_APP(app);
>      do {
> -     XtAppNextEvent(app, &event);
> -#ifdef XTHREADS
> -     /* assert(app == XtDisplayToApplicationContext(event.xany.display)); */
> -#endif
> -     XtDispatchEvent(&event);
> +     XtAppProcessEvent(app, XtIMAll);
>      } while(app->exit_flag == FALSE);
>      UNLOCK_APP(app);
>  }
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel

Reply via email to