Give a meaning to DATE_FORMATS

It's a bit weird to consider DATE_FORMATS as part of the date input
format enum, all the more so as it does not even represent the number
of available formats (since those are numbered from 1).

Turn DATE_FORMATS into the number of available date input formats.

Signed-off-by: Baptiste Jonglez <baptiste--git@jonglez.org>
Signed-off-by: Lukas Fleischer <calcurse@cryptocrack.de>
This commit is contained in:
Baptiste Jonglez 2012-05-28 04:50:39 +02:00 committed by Lukas Fleischer
parent 7eb3abb08a
commit 9e1185f526
3 changed files with 6 additions and 3 deletions

View File

@ -247,14 +247,17 @@ struct dmon_conf {
unsigned log; /* log daemon activity */
};
/* Input date formats. */
enum datefmt {
DATEFMT_MMDDYYYY = 1,
DATEFMT_DDMMYYYY,
DATEFMT_YYYYMMDD,
DATEFMT_ISO,
DATE_FORMATS
DATEFMT_MAX
};
#define DATE_FORMATS (DATEFMT_MAX - 1)
#define DATEFMT(datefmt) (datefmt == DATEFMT_MMDDYYYY ? "%m/%d/%Y" : \
(datefmt == DATEFMT_DDMMYYYY ? "%d/%m/%Y" : \
(datefmt == DATEFMT_YYYYMMDD ? "%Y/%m/%d" : "%Y-%m-%d")))

View File

@ -243,7 +243,7 @@ static int config_parse_output_datefmt(void *dummy, const char *val)
static int config_parse_input_datefmt(void *dummy, const char *val)
{
if (config_parse_int(&conf.input_datefmt, val)) {
if (conf.input_datefmt <= 0 || conf.input_datefmt >= DATE_FORMATS)
if (conf.input_datefmt <= 0 || conf.input_datefmt > DATE_FORMATS)
conf.input_datefmt = 1;
return 1;
} else

View File

@ -792,7 +792,7 @@ void custom_general_config(void)
case '0':
val = status_ask_simplechoice(input_datefmt_prefix,
input_datefmt_choices,
DATE_FORMATS - 1);
DATE_FORMATS);
if (val != -1)
conf.input_datefmt = val;
break;