summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@digia.com>2013-11-11 08:51:08 +0100
committerChristian Kandeler <christian.kandeler@digia.com>2013-11-11 14:01:36 +0100
commit7cd6a4d78fabcec0197fb62b5a1458f3d9916fd8 (patch)
treebad897a08983f308b64cd48f187072f66d7ce525
parentec6d702417a28fe56f616f25f308c82dc17e2024 (diff)
downloadqbs-7cd6a4d78fabcec0197fb62b5a1458f3d9916fd8.tar.gz
don't throw exceptions through script engine
Task-number: QBS-452 Change-Id: I199c77236196f60cad485999f7b909976a6dd90d Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
-rw-r--r--src/lib/jsextensions/moduleproperties.cpp13
1 files changed, 11 insertions, 2 deletions
diff --git a/src/lib/jsextensions/moduleproperties.cpp b/src/lib/jsextensions/moduleproperties.cpp
index 0f2833754..86297a3eb 100644
--- a/src/lib/jsextensions/moduleproperties.cpp
+++ b/src/lib/jsextensions/moduleproperties.cpp
@@ -33,6 +33,7 @@
#include <language/language.h>
#include <language/scriptengine.h>
#include <logging/translator.h>
+#include <tools/error.h>
#include <tools/propertyfinder.h>
#include <QScriptEngine>
@@ -70,12 +71,20 @@ void ModuleProperties::init(QScriptValue objectWithProperties, const void *ptr,
QScriptValue ModuleProperties::js_moduleProperties(QScriptContext *context, QScriptEngine *engine)
{
- return moduleProperties(context, engine, false);
+ try {
+ return moduleProperties(context, engine, false);
+ } catch (const ErrorInfo &e) {
+ return context->throwError(e.toString());
+ }
}
QScriptValue ModuleProperties::js_moduleProperty(QScriptContext *context, QScriptEngine *engine)
{
- return moduleProperties(context, engine, true);
+ try {
+ return moduleProperties(context, engine, true);
+ } catch (const ErrorInfo &e) {
+ return context->throwError(e.toString());
+ }
}
QScriptValue ModuleProperties::moduleProperties(QScriptContext *context, QScriptEngine *engine,