diff options
| author | Christian Kandeler <christian.kandeler@digia.com> | 2013-07-11 17:56:45 +0200 |
|---|---|---|
| committer | Christian Kandeler <christian.kandeler@digia.com> | 2013-07-12 12:08:59 +0200 |
| commit | 1429dfb4052e5fa443ee9677eef95534b436f461 (patch) | |
| tree | 672459add4ccd39cb1e4ea561d203e46d77b9a12 | |
| parent | cd52d86e7a871fa98ac5a4d0a3193611a0f3a51e (diff) | |
| download | qbs-1429dfb4052e5fa443ee9677eef95534b436f461.tar.gz | |
Make Loader more reusable.
JavaScript exceptions left over from previous runs could interfere
with evaluation, so clean those up first.
Change-Id: Id7908a1bdc3b1709fa494c13d833cf993799f566
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
| -rw-r--r-- | src/lib/language/loader.cpp | 3 | ||||
| -rw-r--r-- | src/lib/language/loader.h | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/lib/language/loader.cpp b/src/lib/language/loader.cpp index e9b16bb5b..52f9eee89 100644 --- a/src/lib/language/loader.cpp +++ b/src/lib/language/loader.cpp @@ -50,6 +50,7 @@ Loader::Loader(ScriptEngine *engine, const Logger &logger) , m_builtins(new BuiltinDeclarations) , m_moduleLoader(new ModuleLoader(engine, m_builtins, logger)) , m_projectResolver(new ProjectResolver(m_moduleLoader, logger)) + , m_engine(engine) { } @@ -86,6 +87,8 @@ TopLevelProjectPtr Loader::loadProject(const SetupProjectParameters ¶meters) { QBS_CHECK(QFileInfo(parameters.projectFilePath()).isAbsolute()); + m_engine->clearExceptions(); + // At this point, we cannot set a sensible total effort, because we know nothing about // the project yet. That's why we use a placeholder here, so the user at least // sees that an operation is starting. The real total effort will be set later when diff --git a/src/lib/language/loader.h b/src/lib/language/loader.h index 30ecba75b..84b494fc5 100644 --- a/src/lib/language/loader.h +++ b/src/lib/language/loader.h @@ -63,6 +63,7 @@ private: BuiltinDeclarations *m_builtins; ModuleLoader *m_moduleLoader; ProjectResolver *m_projectResolver; + ScriptEngine * const m_engine; }; } // namespace Internal |
