[PATCH xinput] Increase interactiveness of test* output

Peter Hutterer peter.hutterer at who-t.net
Tue Jul 2 16:57:38 PDT 2013


On Tue, Jul 02, 2013 at 06:13:53PM +0100, Jon TURNEY wrote:
> On 20/08/2012 01:45, Peter Hutterer wrote:
> > From: Nikolai Kondrashov <spbnick-Re5JQEeQqe8AvxtiuMwx3w at public.gmane.org>
> > 
> > Force line buffering for test and test_xi2 to increase interactiveness and
> > avoid losing data with non-terminal stdout. This fixes capturing xinput
> > test* output into a file.
> > 
> > Signed-off-by: Nikolai Kondrashov <spbnick-Re5JQEeQqe8AvxtiuMwx3w at public.gmane.org>
> > Signed-off-by: Peter Hutterer <peter.hutterer-Pf4JEFdB4epeoWH0uzbU5w at public.gmane.org>
> > ---
> >  src/test.c     | 2 ++
> >  src/test_xi2.c | 2 ++
> >  2 files changed, 4 insertions(+)
> > 
> > diff --git a/src/test.c b/src/test.c
> > index 97305c5..0c95501 100644
> > --- a/src/test.c
> > +++ b/src/test.c
> > @@ -98,6 +98,8 @@ print_events(Display	*dpy)
> >  {
> >      XEvent        Event;
> >  
> > +    setlinebuf(stdout);
> 
> I think this just got pushed, but it seems break building xinput for MinGW
> (see [1])
> 
> It looks like using setvbuf() rather than setlinebuf() should be more
> portable.  Patch attached.
> 
> [1] http://tinderbox.x.org/builds/2013-07-02-0014/logs/xinput/#build

   5dce563..a10f48d  master -> master

thanks.

Cheers,
   Peter


> From fb2e4bfb7c12f8173ed78c9e363cf8adcf9da19e Mon Sep 17 00:00:00 2001
> From: Jon TURNEY <jon.turney at dronecode.org.uk>
> Date: Mon, 1 Jul 2013 18:36:28 +0100
> Subject: [PATCH app/xinput] Use setvbuf() instead of setlinebuf()
> 
> setlinebuf() added in commit bcfa9123b41da8048450ed27aaeffff17b8eee99 is not in
> SuS v3, use the exactly equivalent C89 setvbuf() invocation for portability
> 
> Signed-off-by: Jon TURNEY <jon.turney at dronecode.org.uk>
> ---
>  src/test.c     |    2 +-
>  src/test_xi2.c |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/test.c b/src/test.c
> index 0c95501..efd268a 100644
> --- a/src/test.c
> +++ b/src/test.c
> @@ -98,7 +98,7 @@ print_events(Display	*dpy)
>  {
>      XEvent        Event;
>  
> -    setlinebuf(stdout);
> +    setvbuf(stdout, NULL, _IOLBF, 0);
>  
>      while(1) {
>  	XNextEvent(dpy, &Event);
> diff --git a/src/test_xi2.c b/src/test_xi2.c
> index 04e1004..3139d72 100644
> --- a/src/test_xi2.c
> +++ b/src/test_xi2.c
> @@ -326,7 +326,7 @@ test_xi2(Display	*display,
>      int deviceid = -1;
>      int rc;
>  
> -    setlinebuf(stdout);
> +    setvbuf(stdout, NULL, _IOLBF, 0);
>  
>      rc = list(display, argc, argv, name, desc);
>      if (rc != EXIT_SUCCESS)
> -- 
> 1.7.9
> 



More information about the xorg-devel mailing list