|
|
|
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
[Site Home] [Netdev] [Ethernet Bridging] [Linux Wireless] [Kernel Newbies] [Memory] [Security] [Linux for Hams] [Netfilter] [Bugtraq] [Rubini] [Photo] [Yosemite] [Yosemite News] [MIPS Linux] [ARM Linux] [Linux RAID] [Linux Admin] [Samba] [Video 4 Linux] [Linux Resources]