From 23dfcdb3689f1e030a14fb312b683cd6c82a57d2 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Sun, 11 Apr 1999 01:43:34 +0000 Subject: [PATCH] `ls --color' would segfault Include assert.h. (color_indicator[]): Add an entry for the type, `door.' (main): Assert that the lengths of the color_indicator and indicator_name arrays are appropriately related. --- src/ls.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/ls.c b/src/ls.c index 6a16d54001..6ebdeb52d7 100644 --- a/src/ls.c +++ b/src/ls.c @@ -65,6 +65,7 @@ #endif #include +#include #include #include #include @@ -461,7 +462,8 @@ static struct bin_str color_indicator[] = { LEN_STR_PAIR ("01;33") }, /* cd: Char device: bright yellow */ { 0, NULL }, /* mi: Missing file: undefined */ { 0, NULL }, /* or: Orphanned symlink: undefined */ - { LEN_STR_PAIR ("01;32") } /* ex: Executable: bright green */ + { LEN_STR_PAIR ("01;32") }, /* ex: Executable: bright green */ + { LEN_STR_PAIR ("01;35") } /* do: Door: bright magenta */ }; /* FIXME: comment */ @@ -740,6 +742,9 @@ main (int argc, char **argv) bindtextdomain (PACKAGE, LOCALEDIR); textdomain (PACKAGE); +#define N_ENTRIES(Array) (sizeof Array / sizeof *(Array)) + assert (N_ENTRIES (color_indicator) + 1 == N_ENTRIES (indicator_name)); + exit_status = 0; dir_defaulted = 1; print_dir_name = 1; -- 2.47.3