add a new ARRAY_SIZE macro and use it

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
Mike Frysinger 2012-05-05 20:26:54 -04:00
parent 3969cb2a85
commit 0813a80223
3 changed files with 6 additions and 4 deletions

View File

@ -46,6 +46,8 @@
# define _unused
#endif
#define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
/* Some libc implemntations don't have these */
#ifndef TAILQ_CONCAT
#define TAILQ_CONCAT(head1, head2, field) do { \

View File

@ -135,7 +135,7 @@ static const struct ecolor ecolors[] = {
{ ECOLOR_BRACKET, BRACKET, "bracket" },
{ ECOLOR_NORMAL, 0, NULL },
};
static const char *ecolors_str[sizeof(ecolors)/sizeof(ecolors[0])];
static const char *ecolors_str[ARRAY_SIZE(ecolors)];
static char *flush = NULL;
static char *up = NULL;
@ -442,7 +442,7 @@ colour_terminal(FILE * EINFO_RESTRICT f)
/* Now setup our colours */
p = ebuffer;
for (i = 0; i < sizeof(ecolors) / sizeof(ecolors[0]); i++) {
for (i = 0; i < ARRAY_SIZE(ecolors); ++i) {
tmp[0] = '\0';
if (ecolors[i].name) {
bold = _md;
@ -578,7 +578,7 @@ _ecolor(FILE * EINFO_RESTRICT f, ECOLOR color)
if (!colour_terminal(f))
return "";
for (i = 0; i < sizeof(ecolors) / sizeof(ecolors[0]); i++)
for (i = 0; i < ARRAY_SIZE(ecolors); ++i)
if (ecolors[i].color == color)
return ecolors_str[i];
return "";

View File

@ -192,7 +192,7 @@ parse_signal(const char *sig)
else
s = NULL;
for (i = 0; i < sizeof(signallist) / sizeof(signallist[0]); i++)
for (i = 0; i < ARRAY_SIZE(signallist); ++i)
if (strcmp(sig, signallist[i].name) == 0 ||
(s && strcmp(s, signallist[i].name) == 0))
return signallist[i].signal;