--- a/src/qtgui/xmltosd.cpp
+++ b/src/qtgui/xmltosd.cpp
@@ -88,7 +88,7 @@
// either if type is absent, or if it's searchdata
int idx = attrs.index("type");
if (idx >= 0 && attrs.value(idx).compare("searchdata")) {
- LOGDEB("XMLTOSD: bad type\n");
+ LOGDEB("XMLTOSD: bad type: " << qs2utf8s(attrs.value(idx)) << endl);
return false;
}
resetTemps();
@@ -206,7 +206,8 @@
}
-std::shared_ptr<Rcl::SearchData> xmlToSearchData(const string& xml)
+std::shared_ptr<Rcl::SearchData> xmlToSearchData(const string& xml,
+ bool verbose)
{
SDHXMLHandler handler;
QXmlSimpleReader reader;
@@ -217,7 +218,9 @@
xmlInputSource.setData(QString::fromUtf8(xml.c_str()));
if (!reader.parse(xmlInputSource) || !handler.isvalid) {
- LOGERR("xmlToSearchData: parse failed for [" << xml << "]\n");
+ if (verbose) {
+ LOGERR("xmlToSearchData: parse failed for [" << xml << "]\n");
+ }
return std::shared_ptr<SearchData>();
}
return handler.sd;
@@ -271,8 +274,13 @@
if (qName == "SD") {
// Simple search saved data has a type='ssearch' attribute.
int idx = attrs.index("type");
- if (idx < 0 && attrs.value(idx).compare("ssearch")) {
- LOGDEB("XMLTOSSS: bad type\n");
+ if (idx < 0 || attrs.value(idx).compare("ssearch")) {
+ if (idx < 0) {
+ LOGDEB("XMLTOSSS: bad type\n");
+ } else {
+ LOGDEB("XMLTOSSS: bad type: " << qs2utf8s(attrs.value(idx))
+ << endl);
+ }
return false;
}
resetTemps();