From f4c98a8fa4597832a1419107de1487d0e1edf14e Mon Sep 17 00:00:00 2001 From: Leonardo Murillo Date: Thu, 24 Apr 2014 16:21:49 -0600 Subject: [PATCH] Fixing xml parsing --- interface/src/Application.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 20cab975a4..8fdd41ca47 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -3526,22 +3526,24 @@ void Application::parseVersionXml() { QObject* sender = QObject::sender(); QXmlStreamReader xml(qobject_cast(sender)); - while (!xml.atEnd() && !xml.hasError()) { - QXmlStreamReader::TokenType token = xml.readNext(); - - if (token == QXmlStreamReader::StartElement) { - xml.readNext(); - if (xml.name() == operatingSystem) { - xml.readNext(); - if (xml.name() == "version") { + + while(!xml.atEnd() && !xml.hasError()) { + if (xml.tokenType() == QXmlStreamReader::StartElement && xml.name() == operatingSystem) { + while(!(xml.tokenType() == QXmlStreamReader::EndElement && xml.name() == operatingSystem)) { + if (xml.tokenType() == QXmlStreamReader::StartElement && xml.name().toString() == "version") { + xml.readNext(); latestVersion = xml.text().toString(); } - if (xml.name() == "url") { + if (xml.tokenType() == QXmlStreamReader::StartElement && xml.name().toString() == "url") { + xml.readNext(); downloadUrl = QUrl(xml.text().toString()); } + xml.readNext(); } } + xml.readNext(); } + if (!shouldSkipVersion(latestVersion) && applicationVersion() != latestVersion) { new UpdateDialog(_glWidget, releaseNotes, latestVersion, downloadUrl); }