Re: [PATCH 1/4] last: use min() from c.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, May 23, 2012 at 10:13:02AM +0200, Karel Zak wrote:
> On Thu, May 17, 2012 at 09:41:06AM +0200, Petr Uzel wrote:
> >  login-utils/last.c |   10 +++-------
> >  1 files changed, 3 insertions(+), 7 deletions(-)
> > 
> > diff --git a/login-utils/last.c b/login-utils/last.c
> > index 34558bb..62fc55c 100644
> > --- a/login-utils/last.c
> > +++ b/login-utils/last.c
> > @@ -72,15 +72,11 @@ static struct utmp	utmpbuf;
> >  #define	LMAX	(int)sizeof(utmpbuf.ut_line)	/* size of utmp tty field */
> >  #define	NMAX	(int)sizeof(utmpbuf.ut_name)	/* size of utmp name field */
> >  
> > -#ifndef MIN
> > -#define MIN(a,b)	(((a) < (b)) ? (a) : (b))
> > -#endif
> > -
> >  /* maximum sizes used for printing */
> >  /* probably we want a two-pass version that computes the right length */
> > -int hmax = MIN(HMAX, 16);
> > -int lmax = MIN(LMAX, 8);
> > -int nmax = MIN(NMAX, 16);
> > +int hmax = min(HMAX, 16);
> > +int lmax = min(LMAX, 8);
> > +int nmax = min(NMAX, 16);
> 
>  Please, test your patches... you cannot use min() (as defined in c.h)
>  outside functions.

Oops, I normally do, but this one seemed so trivial that I did not
test it :( Lesson learned. Sorry.

>  It seems that {h,l,n}max are not modified in the code so we can use
>  macros there. Applied the patch below.

Thanks,

        Petr

> 
>     Karel
> 
> 
> 
> From 69c9e8387b90025d1f75356f5e2369d0262ee603 Mon Sep 17 00:00:00 2001
> From: Karel Zak <kzak@xxxxxxxxxx>
> Date: Wed, 23 May 2012 10:07:57 +0200
> Subject: [PATCH] last: use min() from c.h
> 
> Signed-off-by: Karel Zak <kzak@xxxxxxxxxx>
> ---
>  login-utils/last.c |   20 ++++++++------------
>  1 files changed, 8 insertions(+), 12 deletions(-)
> 
> diff --git a/login-utils/last.c b/login-utils/last.c
> index 34558bb..1b1bee1 100644
> --- a/login-utils/last.c
> +++ b/login-utils/last.c
> @@ -72,15 +72,11 @@ static struct utmp	utmpbuf;
>  #define	LMAX	(int)sizeof(utmpbuf.ut_line)	/* size of utmp tty field */
>  #define	NMAX	(int)sizeof(utmpbuf.ut_name)	/* size of utmp name field */
>  
> -#ifndef MIN
> -#define MIN(a,b)	(((a) < (b)) ? (a) : (b))
> -#endif
> -
>  /* maximum sizes used for printing */
>  /* probably we want a two-pass version that computes the right length */
> -int hmax = MIN(HMAX, 16);
> -int lmax = MIN(LMAX, 8);
> -int nmax = MIN(NMAX, 16);
> +#define P_HMAX	min(HMAX, 16)
> +#define P_LMAX	min(LMAX, 8)
> +#define P_NMAX	min(NMAX, 16)
>  
>  typedef struct arg {
>  	char	*name;				/* argument */
> @@ -187,19 +183,19 @@ print_partial_line(struct utmp *bp) {
>      char *ct;
>  
>      ct = utmp_ctime(bp);
> -    printf("%-*.*s  %-*.*s ", nmax, nmax, bp->ut_name, 
> -	   lmax, lmax, bp->ut_line);
> +    printf("%-*.*s  %-*.*s ", P_NMAX, P_NMAX, bp->ut_name,
> +	   P_LMAX, P_LMAX, bp->ut_line);
>  
>      if (dolong) {
>  	if (bp->ut_addr) {
>  	    struct in_addr foo;
>  	    foo.s_addr = bp->ut_addr;
> -	    printf("%-*.*s ", hmax, hmax, inet_ntoa(foo));
> +	    printf("%-*.*s ", P_HMAX, P_HMAX, inet_ntoa(foo));
>  	} else {
> -	    printf("%-*.*s ", hmax, hmax, "");
> +	    printf("%-*.*s ", P_HMAX, P_HMAX, "");
>  	}
>      } else {
> -	printf("%-*.*s ", hmax, hmax, bp->ut_host);
> +	printf("%-*.*s ", P_HMAX, P_HMAX, bp->ut_host);
>      }
>  
>      if (doyear) {
> -- 
> 1.7.7.6
> 

Petr

-- 
Petr Uzel
IRC: ptr_uzl @ freenode

Attachment: pgpDBc28ELn3f.pgp
Description: PGP signature


[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux