raster pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=0cb33a46758bd1f66653e97d7ad027a9529b1279
commit 0cb33a46758bd1f66653e97d7ad027a9529b1279 Author: Carsten Haitzler (Rasterman) <[email protected]> Date: Mon Jan 12 15:54:22 2015 +0900 edje - edje_cc - fix wrong state lists where default is not the first this fixes T1926 @fix --- src/bin/edje/edje_cc_handlers.c | 27 ++++++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/src/bin/edje/edje_cc_handlers.c b/src/bin/edje/edje_cc_handlers.c index aebb953..dfb8ed4 100644 --- a/src/bin/edje/edje_cc_handlers.c +++ b/src/bin/edje/edje_cc_handlers.c @@ -6478,12 +6478,37 @@ st_collections_group_parts_part_description_state(void) if (ep->other.desc_count) ed = ep->other.desc[ep->other.desc_count - 1]; s = parse_str(0); - if (!strcmp (s, "custom")) + if (!strcmp(s, "default")) + { + double v; + + if (get_arg_count() == 1) v = 0.0; + else v = parse_float_range(1, 0.0, 1.0); + if (v == 0.0) + { + if (ed != ep->default_desc) + { + ERR("parse error %s:%i. description state '%s' %1.2f is not the first state listed", + file_in, line - 1, s, v); + exit(-1); + } + } + } + if (!strcmp(s, "custom")) { ERR("parse error %s:%i. invalid state name: '%s'.", file_in, line - 1, s); exit(-1); } + if (ed == ep->default_desc) + { + if (strcmp(s, "default")) + { + ERR("parse error %s:%i. first state is not 'default'", + file_in, line - 1); + exit(-1); + } + } free((void *)ed->state.name); ed->state.name = s; --
