From d75efdb4caaa5c94fe5a09e477380c41b07fdf6c Mon Sep 17 00:00:00 2001 From: ksuprynowicz Date: Wed, 10 Jan 2024 00:35:56 +0100 Subject: [PATCH] Script messaging fix --- libraries/script-engine/src/ScriptEngines.h | 2 +- libraries/script-engine/src/ScriptManager.cpp | 2 +- libraries/script-engine/src/ScriptMessage.cpp | 5 +++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/libraries/script-engine/src/ScriptEngines.h b/libraries/script-engine/src/ScriptEngines.h index d8d50a4c20..1a4e3c4389 100644 --- a/libraries/script-engine/src/ScriptEngines.h +++ b/libraries/script-engine/src/ScriptEngines.h @@ -251,7 +251,7 @@ signals: * Triggered when any script generates an information message or {@link console.info} is called. * @function ScriptDiscoveryService.infoMessage * @param {string} message - The information message. - * @param {string} scriptName - The name of the script that generated the informaton message. + * @param {string} scriptName - The name of the script that generated the information message. * @returns {Signal} */ void infoMessage(const QString& message, const QString& engineName); diff --git a/libraries/script-engine/src/ScriptManager.cpp b/libraries/script-engine/src/ScriptManager.cpp index 0509978a74..37ba7d0442 100644 --- a/libraries/script-engine/src/ScriptManager.cpp +++ b/libraries/script-engine/src/ScriptManager.cpp @@ -1317,7 +1317,7 @@ QUrl ScriptManager::resourcesPath() const { } void ScriptManager::print(const QString& message) { - emit printedMessage(message, getFilename()); + emit scriptPrintedMessage(message, getFilename(), engine()->currentContext()->currentLineNumber()); } diff --git a/libraries/script-engine/src/ScriptMessage.cpp b/libraries/script-engine/src/ScriptMessage.cpp index 27ba05f31e..0b3ea1abc8 100644 --- a/libraries/script-engine/src/ScriptMessage.cpp +++ b/libraries/script-engine/src/ScriptMessage.cpp @@ -25,6 +25,10 @@ QJsonObject ScriptMessage::toJson() { } bool ScriptMessage::fromJson(const QJsonObject &object) { + if (object.isEmpty()) { + qDebug() << "ScriptMessage::fromJson object is empty"; + return false; + } if (!object["message"].isString() || !object["lineNumber"].isDouble() || !object["fileName"].isString() @@ -40,4 +44,5 @@ bool ScriptMessage::fromJson(const QJsonObject &object) { _entityID = QUuid::fromString(object["entityID"].toString()); _scriptType = static_cast(object["type"].toInt()); _severity = static_cast(object["severity"].toInt()); + return true; } \ No newline at end of file