From f02a2446d3c05b824cbbb887834ce82a7cd8fe0b Mon Sep 17 00:00:00 2001 From: Robert Bieber Date: Wed, 2 Jun 2010 05:27:37 +0000 Subject: Theme Editor: Altered the way the parser handles asterisks in the tag argument specifiers git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26459 a1c6a512-1295-4272-9138-f99709370657 --- utils/themeeditor/skin_parser.c | 5 +++-- utils/themeeditor/tag_table.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/utils/themeeditor/skin_parser.c b/utils/themeeditor/skin_parser.c index 8e4bc88e96..6902679bc1 100644 --- a/utils/themeeditor/skin_parser.c +++ b/utils/themeeditor/skin_parser.c @@ -410,7 +410,8 @@ int skin_parse_tag(struct skin_element* element, char** document) /* If this tag has no arguments, we can bail out now */ if(strlen(tag_args) == 0 - || (tag_args[0] == '|' && *cursor != ARGLISTOPENSYM)) + || (tag_args[0] == '|' && *cursor != ARGLISTOPENSYM) + || (star && *cursor != ARGLISTOPENSYM)) { *document = cursor; return 1; @@ -556,7 +557,7 @@ int skin_parse_tag(struct skin_element* element, char** document) } /* Checking for a premature end */ - if(*tag_args != '\0' && !(optional && (!star || num_args == req_args))) + if(*tag_args != '\0' && !(optional && !star)) { skin_error(INSUFFICIENT_ARGS); return 0; diff --git a/utils/themeeditor/tag_table.h b/utils/themeeditor/tag_table.h index 7f8d3a88ec..b09e85204d 100644 --- a/utils/themeeditor/tag_table.h +++ b/utils/themeeditor/tag_table.h @@ -272,7 +272,7 @@ enum skin_token_type { * number before the character. For instance, the string... * 2s * will specify two strings. An asterisk (*) at the beginning of the - * string will specify that either all or none of the optional + * string will specify that you may choose to omit all arguments * */ struct tag_info -- cgit v1.2.3