Summary:
_parse_format() function filtering "_/-/0/^/*" to filter POSIX alternatvie/extension formats,
But the Datetime do not appear in some locale(fa_IR, lzh_TW, my_MM, or_IN) with 'O'.
+ improve code. (not compare with all of the characters. instead of that using strchr)
https://lh.2xlibre.net/values/d_t_fmt/
@fix
Test Plan: Set locale as fa_IR and create DateTime. and see fields, not appears.
Reviewers: jpeg, cedric
Subscribers: cedric, jpeg
Differential Revision: https://phab.enlightenment.org/D5020
static const char *multifield_formats = "cxXrRTDF";
static const char *ignore_separators = "()";
+static const char *ignore_extensions = "E0_-O^#";
static Clock_Mod_Api *dt_mod = NULL;
static const char SIG_CHANGED[] = "changed";
{
if (fmt_parsing)
{
- if (cur == '_' || cur == '-' || cur == '0' || cur == '^' || cur == '#')
+ if (strchr(ignore_extensions, cur))
{
fmt_ptr++;
continue;