Commit 37dd94a9 authored by Frederik Gladhorn's avatar Frederik Gladhorn Committed by The Qt Project
Browse files

Improve error messages when qhp files are messed up


Hopefully this saves me and everyone time when mixing up project names
resulting in empty namespaces in .qhp projects.

Change-Id: Ib4151225011c866219504c1fdbaadd17d387500a
Reviewed-by: default avatarOswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: default avatarFriedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: default avatarKai Koehne <kai.koehne@digia.com>
Reviewed-by: default avatarTopi Reiniö <topi.reinio@digia.com>
parent 1e71b35d
Branches
Tags
No related merge requests found
Showing with 7 additions and 5 deletions
...@@ -60,6 +60,7 @@ public: ...@@ -60,6 +60,7 @@ public:
QString virtualFolder; QString virtualFolder;
QString namespaceName; QString namespaceName;
QString fileName;
QString rootPath; QString rootPath;
QStringList fileList; QStringList fileList;
...@@ -85,7 +86,7 @@ private: ...@@ -85,7 +86,7 @@ private:
void QHelpProjectDataPrivate::raiseUnknownTokenError() void QHelpProjectDataPrivate::raiseUnknownTokenError()
{ {
raiseError(QCoreApplication::translate("QHelpProject", "Unknown token.")); raiseError(QCoreApplication::translate("QHelpProject", "Unknown token in file \"%1\".").arg(fileName));
} }
void QHelpProjectDataPrivate::readData(const QByteArray &contents) void QHelpProjectDataPrivate::readData(const QByteArray &contents)
...@@ -119,12 +120,12 @@ void QHelpProjectDataPrivate::readProject() ...@@ -119,12 +120,12 @@ void QHelpProjectDataPrivate::readProject()
virtualFolder = readElementText(); virtualFolder = readElementText();
if (!hasValidSyntax(QLatin1String("test"), virtualFolder)) if (!hasValidSyntax(QLatin1String("test"), virtualFolder))
raiseError(QCoreApplication::translate("QHelpProject", raiseError(QCoreApplication::translate("QHelpProject",
"Virtual folder has invalid syntax.")); "Virtual folder has invalid syntax in file: \"%1\"").arg(fileName));
} else if (name() == QLatin1String("namespace")) { } else if (name() == QLatin1String("namespace")) {
namespaceName = readElementText(); namespaceName = readElementText();
if (!hasValidSyntax(namespaceName, QLatin1String("test"))) if (!hasValidSyntax(namespaceName, QLatin1String("test")))
raiseError(QCoreApplication::translate("QHelpProject", raiseError(QCoreApplication::translate("QHelpProject",
"Namespace has invalid syntax.")); "Namespace \"%1\" has invalid syntax in file: \"%2\"").arg(namespaceName, fileName));
} else if (name() == QLatin1String("customFilter")) { } else if (name() == QLatin1String("customFilter")) {
readCustomFilter(); readCustomFilter();
} else if (name() == QLatin1String("filterSection")) { } else if (name() == QLatin1String("filterSection")) {
...@@ -143,10 +144,10 @@ void QHelpProjectDataPrivate::readProject() ...@@ -143,10 +144,10 @@ void QHelpProjectDataPrivate::readProject()
} else if (isEndElement() && name() == QLatin1String("QtHelpProject")) { } else if (isEndElement() && name() == QLatin1String("QtHelpProject")) {
if (namespaceName.isEmpty()) if (namespaceName.isEmpty())
raiseError(QCoreApplication::translate("QHelpProject", raiseError(QCoreApplication::translate("QHelpProject",
"Missing namespace in QtHelpProject.")); "Missing namespace in QtHelpProject file: \"%1\"").arg(fileName));
else if (virtualFolder.isEmpty()) else if (virtualFolder.isEmpty())
raiseError(QCoreApplication::translate("QHelpProject", raiseError(QCoreApplication::translate("QHelpProject",
"Missing virtual folder in QtHelpProject")); "Missing virtual folder in QtHelpProject file: \"%1\"").arg(fileName));
break; break;
} }
} }
...@@ -374,6 +375,7 @@ QHelpProjectData::~QHelpProjectData() ...@@ -374,6 +375,7 @@ QHelpProjectData::~QHelpProjectData()
*/ */
bool QHelpProjectData::readData(const QString &fileName) bool QHelpProjectData::readData(const QString &fileName)
{ {
d->fileName = fileName;
d->rootPath = QFileInfo(fileName).absolutePath(); d->rootPath = QFileInfo(fileName).absolutePath();
QFile file(fileName); QFile file(fileName);
if (!file.open(QIODevice::ReadOnly)) { if (!file.open(QIODevice::ReadOnly)) {
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment