Merge pull request #123 from Terseus/fix-113_editor-settings-xml-corruption
Fix #113 editor_settings.xml corruption
This commit is contained in:
commit
70a9647d2d
1 changed files with 9 additions and 7 deletions
|
@ -97,16 +97,17 @@ ResourceInteractiveLoaderXML::Tag* ResourceInteractiveLoaderXML::parse_tag(bool
|
|||
|
||||
if (!complete) {
|
||||
String name;
|
||||
String value;
|
||||
CharString r_value;
|
||||
bool reading_value=false;
|
||||
|
||||
while(!f->eof_reached()) {
|
||||
|
||||
CharType c=get_char();
|
||||
if (c=='>') {
|
||||
if (value.length()) {
|
||||
if (r_value.size()) {
|
||||
|
||||
tag.args[name]=value;
|
||||
r_value.push_back(0);
|
||||
tag.args[name].parse_utf8(r_value.get_data());
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -115,17 +116,18 @@ ResourceInteractiveLoaderXML::Tag* ResourceInteractiveLoaderXML::parse_tag(bool
|
|||
if (!reading_value && name.length()) {
|
||||
|
||||
reading_value=true;
|
||||
} else if (reading_value && value.length()) {
|
||||
} else if (reading_value && r_value.size()) {
|
||||
|
||||
tag.args[name]=value;
|
||||
r_value.push_back(0);
|
||||
tag.args[name].parse_utf8(r_value.get_data());
|
||||
name="";
|
||||
value="";
|
||||
r_value.clear();
|
||||
reading_value=false;
|
||||
}
|
||||
|
||||
} else if (reading_value) {
|
||||
|
||||
value+=c;
|
||||
r_value.push_back(c);
|
||||
} else {
|
||||
|
||||
name+=c;
|
||||
|
|
Loading…
Reference in a new issue