History

better support for includes in entity scripts

ZappoMan committed 11 years ago

Commit cd0ee0f1 parent 137642f4 files · +25 −6Browse files

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

Unified · Split

libraries/script-engine/src/ScriptEngine.cpp+8−3
@@ -618,16 +618,20 @@ void ScriptEngine::stopTimer(QTimer *timer) { · 617 unmodified lines
618618 }
619619
620620 QUrl ScriptEngine::resolvePath(const QString& include) const {
621− // first lets check to see if it's already a full URL
622621 QUrl url(include);
622+ // first lets check to see if it's already a full URL
623623 if (!url.scheme().isEmpty()) {
624624 return url;
625625 }
626626
627627 // we apparently weren't a fully qualified url, so, let's assume we're relative
628628 // to the original URL of our script
629− QUrl parentURL(_fileNameString);
630−
629+ QUrl parentURL;
630+ if (_parentURL.isEmpty()) {
631+ parentURL = QUrl(_fileNameString);
632+ } else {
633+ parentURL = QUrl(_parentURL);
634+ }
631635 // if the parent URL's scheme is empty, then this is probably a local file...
632636 if (parentURL.scheme().isEmpty()) {
633637 parentURL = QUrl::fromLocalFile(_fileNameString);
@@ -660,6 +664,7 @@ void ScriptEngine::include(const QString& includeFile) { · 26 unmodified lines
660664 #else
661665 QString fileName = url.toLocalFile();
662666 #endif
667+
663668 QFile scriptFile(fileName);
664669 if (scriptFile.open(QFile::ReadOnly | QFile::Text)) {
665670 qDebug() << "Including file:" << fileName;