History

Merge pull request #6351 from huffman/script-path-resolution

Update script engine path resolution behavior to behave consistently

Eric Levin committed 11 years ago

Commit a2abc112 parents 4ded489 08c275916 files · +30 −22Browse files

Showing the changes to libraries/script-engine/src/ScriptEngine.cpp (1 of 16 files). Show all

Unified · Split

libraries/script-engine/src/ScriptEngine.cpp+5−0
@@ -902,14 +902,19 @@ void ScriptEngine::include(const QStringList& includeFiles, QScriptValue callbac · 901 unmodified lines
902 BatchLoader* loader = new BatchLoader(urls);902 BatchLoader* loader = new BatchLoader(urls);
903 903
904 auto evaluateScripts = [=](const QMap<QUrl, QString>& data) {904 auto evaluateScripts = [=](const QMap<QUrl, QString>& data) {
905 auto parentURL = _parentURL;
905 for (QUrl url : urls) {906 for (QUrl url : urls) {
906 QString contents = data[url];907 QString contents = data[url];
907 if (contents.isNull()) {908 if (contents.isNull()) {
908 qCDebug(scriptengine) << "Error loading file: " << url << "line:" << __LINE__;909 qCDebug(scriptengine) << "Error loading file: " << url << "line:" << __LINE__;
909 } else {910 } else {
911 // Set the parent url so that path resolution will be relative
912 // to this script's url during its initial evaluation
913 _parentURL = url.toString();
910 QScriptValue result = evaluate(contents, url.toString());914 QScriptValue result = evaluate(contents, url.toString());
911 }915 }
912 }916 }
917 _parentURL = parentURL;
913 918
914 if (callback.isFunction()) {919 if (callback.isFunction()) {
915 QScriptValue(callback).call();920 QScriptValue(callback).call();