diff options
-rw-r--r-- | lib/skin_parser/skin_parser.c | 10 | ||||
-rw-r--r-- | utils/themeeditor/models/parsetreemodel.cpp | 5 |
2 files changed, 10 insertions, 5 deletions
diff --git a/lib/skin_parser/skin_parser.c b/lib/skin_parser/skin_parser.c index 5e4ef49074..2e5328637b 100644 --- a/lib/skin_parser/skin_parser.c +++ b/lib/skin_parser/skin_parser.c @@ -33,6 +33,7 @@ /* Global variables for the parser */ int skin_line = 0; +int viewport_line = 0; /* Auxiliary parsing functions (not visible at global scope) */ static struct skin_element* skin_parse_viewport(char** document); @@ -64,6 +65,7 @@ struct skin_element* skin_parse(const char* document) char* cursor = (char*)document; /*Keeps track of location in the document*/ skin_line = 1; + viewport_line = 0; skin_clear_errors(); @@ -105,6 +107,7 @@ static struct skin_element* skin_parse_viewport(char** document) retval->type = VIEWPORT; retval->children_count = 1; retval->line = skin_line; + viewport_line = skin_line; struct skin_element** to_write = 0; @@ -631,6 +634,13 @@ static int skin_parse_tag(struct skin_element* element, char** document) cursor++; skin_line++; } + + if((strcmp(tag->name, "Vf") == 0 || strcmp(tag->name, "Vb") == 0) + && *cursor == '\n' && skin_line == viewport_line) + { + *cursor++; + skin_line++; + } *document = cursor; diff --git a/utils/themeeditor/models/parsetreemodel.cpp b/utils/themeeditor/models/parsetreemodel.cpp index 4f6fd451e6..ccae865290 100644 --- a/utils/themeeditor/models/parsetreemodel.cpp +++ b/utils/themeeditor/models/parsetreemodel.cpp @@ -77,11 +77,6 @@ QString ParseTreeModel::changeTree(const char *document) } ParseTreeNode* temp = new ParseTreeNode(test); - if(root && temp->genHash() == root->genHash()) - { - delete temp; - return tr("Document Parses Successfully"); - } if(root) { |