123456789101112131415161718192021222324252627282930313233343536373839404142 |
- #include "include/dateformats.h"
-
- ttail_datefmt** ttail_date_fmt_init(ttail_options *options)
- {
- ttail_datefmt **res;
- size_t i;
-
- i = 1;
- #ifdef TTAIL_FMT_REGEX
- i++;
- #endif
-
- res = malloc(sizeof(ttail_datefmt*)*i);
- if(!res)
- {
- perror("Fails to allocate formats");
- goto ttail_date_fmt_init_alloc_err;
- }
- i--;
- res[i] = NULL;
- #ifdef TTAIL_FMT_REGEX
- res[i] = ttail_fmt_regex_init(options);
- if(!res[i])
- {
- goto ttail_date_fmt_init_err;
- }
- i--;
- #endif
-
- return res;
-
- ttail_date_fmt_init_err:
- i++;
- while(res[i]!=NULL)
- {
- res[i]->cleanup(res[i]);
- }
- free(res);
-
- ttail_date_fmt_init_alloc_err:
- return NULL;
- }
|