mirror of
https://github.com/overte-org/overte.git
synced 2025-08-10 01:00:44 +02:00
Merge pull request #11494 from humbletim/add-console-output-basenames
[experiment/feedback] Include script name with all JS/QML debug output
This commit is contained in:
commit
80f0bd3b79
2 changed files with 15 additions and 5 deletions
|
@ -110,10 +110,13 @@ static QScriptValue debugPrint(QScriptContext* context, QScriptEngine* engine) {
|
||||||
}
|
}
|
||||||
message += context->argument(i).toString();
|
message += context->argument(i).toString();
|
||||||
}
|
}
|
||||||
qCDebug(scriptengineScript).noquote() << message; // noquote() so that \n is treated as newline
|
|
||||||
|
|
||||||
if (ScriptEngine *scriptEngine = qobject_cast<ScriptEngine*>(engine)) {
|
if (ScriptEngine *scriptEngine = qobject_cast<ScriptEngine*>(engine)) {
|
||||||
scriptEngine->print(message);
|
scriptEngine->print(message);
|
||||||
|
// prefix the script engine name to help disambiguate messages in the main debug log
|
||||||
|
qCDebug(scriptengineScript, "[%s] %s", qUtf8Printable(scriptEngine->getFilename()), qUtf8Printable(message));
|
||||||
|
} else {
|
||||||
|
qCDebug(scriptengineScript, "%s", qUtf8Printable(message));
|
||||||
}
|
}
|
||||||
|
|
||||||
return QScriptValue();
|
return QScriptValue();
|
||||||
|
@ -468,22 +471,22 @@ void ScriptEngine::loadURL(const QUrl& scriptURL, bool reload) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEngine::scriptErrorMessage(const QString& message) {
|
void ScriptEngine::scriptErrorMessage(const QString& message) {
|
||||||
qCCritical(scriptengine) << qPrintable(message);
|
qCCritical(scriptengine, "[%s] %s", qUtf8Printable(getFilename()), qUtf8Printable(message));
|
||||||
emit errorMessage(message, getFilename());
|
emit errorMessage(message, getFilename());
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEngine::scriptWarningMessage(const QString& message) {
|
void ScriptEngine::scriptWarningMessage(const QString& message) {
|
||||||
qCWarning(scriptengine) << qPrintable(message);
|
qCWarning(scriptengine, "[%s] %s", qUtf8Printable(getFilename()), qUtf8Printable(message));
|
||||||
emit warningMessage(message, getFilename());
|
emit warningMessage(message, getFilename());
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEngine::scriptInfoMessage(const QString& message) {
|
void ScriptEngine::scriptInfoMessage(const QString& message) {
|
||||||
qCInfo(scriptengine) << qPrintable(message);
|
qCInfo(scriptengine, "[%s] %s", qUtf8Printable(getFilename()), qUtf8Printable(message));
|
||||||
emit infoMessage(message, getFilename());
|
emit infoMessage(message, getFilename());
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScriptEngine::scriptPrintedMessage(const QString& message) {
|
void ScriptEngine::scriptPrintedMessage(const QString& message) {
|
||||||
qCDebug(scriptengine) << qPrintable(message);
|
qCDebug(scriptengine, "[%s] %s", qUtf8Printable(getFilename()), qUtf8Printable(message));
|
||||||
emit printedMessage(message, getFilename());
|
emit printedMessage(message, getFilename());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -177,6 +177,13 @@ QString LogHandler::printMessage(LogMsgType type, const QMessageLogContext& cont
|
||||||
prefixString.append(QString(" [%1]").arg(_targetName));
|
prefixString.append(QString(" [%1]").arg(_targetName));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// for [qml] console.* messages include an abbreviated source filename
|
||||||
|
if (context.category && context.file && !strcmp("qml", context.category)) {
|
||||||
|
if (const char* basename = strrchr(context.file, '/')) {
|
||||||
|
prefixString.append(QString(" [%1]").arg(basename+1));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
QString logMessage = QString("%1 %2").arg(prefixString, message.split('\n').join('\n' + prefixString + " "));
|
QString logMessage = QString("%1 %2").arg(prefixString, message.split('\n').join('\n' + prefixString + " "));
|
||||||
fprintf(stdout, "%s\n", qPrintable(logMessage));
|
fprintf(stdout, "%s\n", qPrintable(logMessage));
|
||||||
return logMessage;
|
return logMessage;
|
||||||
|
|
Loading…
Reference in a new issue