From d50bdd6aa9c8557b92609497ff50dac5231dbcf1 Mon Sep 17 00:00:00 2001 From: Liv Date: Mon, 22 May 2017 16:53:41 -0700 Subject: [PATCH] Initial check that the script url has a supported extension, currently JS only --- libraries/script-engine/src/ScriptEngines.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libraries/script-engine/src/ScriptEngines.cpp b/libraries/script-engine/src/ScriptEngines.cpp index 2076657288..2e30e614c2 100644 --- a/libraries/script-engine/src/ScriptEngines.cpp +++ b/libraries/script-engine/src/ScriptEngines.cpp @@ -9,6 +9,7 @@ #include "ScriptEngines.h" #include +#include #include @@ -449,6 +450,7 @@ ScriptEngine* ScriptEngines::loadScript(const QUrl& scriptFilename, bool isUserL return result; } QUrl scriptUrl; + if (!scriptFilename.isValid() || (scriptFilename.scheme() != "http" && scriptFilename.scheme() != "https" && @@ -472,8 +474,11 @@ ScriptEngine* ScriptEngines::loadScript(const QUrl& scriptFilename, bool isUserL scriptEngine->deleteLater(); }, Qt::QueuedConnection); + // Check that the script is actually a script + QFileInfo fileInfo(scriptFilename.toString()); + bool hasValidScriptSuffix = (fileInfo.completeSuffix() == "js"); - if (scriptFilename.isEmpty() || !scriptUrl.isValid()) { + if (scriptFilename.isEmpty() || !scriptUrl.isValid() || !hasValidScriptSuffix) { launchScriptEngine(scriptEngine); } else { // connect to the appropriate signals of this script engine