diff options
| author | Joerg Bornemann <joerg.bornemann@digia.com> | 2013-11-11 08:51:08 +0100 |
|---|---|---|
| committer | Christian Kandeler <christian.kandeler@digia.com> | 2013-11-11 14:01:36 +0100 |
| commit | 7cd6a4d78fabcec0197fb62b5a1458f3d9916fd8 (patch) | |
| tree | bad897a08983f308b64cd48f187072f66d7ce525 | |
| parent | ec6d702417a28fe56f616f25f308c82dc17e2024 (diff) | |
| download | qbs-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.cpp | 13 |
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, |
