From f90f0ed1f342c37b2e8187981f10022a8021a425 Mon Sep 17 00:00:00 2001 From: Brad Hefta-Gaub Date: Sat, 17 Oct 2015 12:34:32 -0700 Subject: [PATCH] apply Huffman's feedback to Sam's PR --- examples/controllers/controllerMappings.js | 2 +- .../controllers/src/controllers/ScriptingInterface.cpp | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/examples/controllers/controllerMappings.js b/examples/controllers/controllerMappings.js index d314df3f4c..4de173f16c 100644 --- a/examples/controllers/controllerMappings.js +++ b/examples/controllers/controllerMappings.js @@ -70,7 +70,7 @@ mapping2.enable(); Controller.enableMapping("example2"); */ -var mapping3 = Controller.loadMapping("E:/Github/hifi/examples/controllers/example3.json"); +var mapping3 = Controller.loadMapping(Script.resolvePath("example3.json")); Controller.enableMapping("example3"); /* diff --git a/libraries/controllers/src/controllers/ScriptingInterface.cpp b/libraries/controllers/src/controllers/ScriptingInterface.cpp index 80816d9773..6edcaecd3c 100644 --- a/libraries/controllers/src/controllers/ScriptingInterface.cpp +++ b/libraries/controllers/src/controllers/ScriptingInterface.cpp @@ -209,6 +209,7 @@ namespace controller { } QObject* ScriptingInterface::loadMapping(const QString& jsonUrl) { + QObject* result = nullptr; auto request = ResourceManager::createResourceRequest(nullptr, QUrl(jsonUrl)); if (request) { QEventLoop eventLoop; @@ -220,12 +221,13 @@ namespace controller { } if (request->getResult() == ResourceRequest::Success) { - return parseMapping(QString(request->getData())); + result = parseMapping(QString(request->getData())); } else { qDebug() << "Failed to load mapping url <" << jsonUrl << ">" << endl; - return nullptr; } + request->deleteLater(); } + return result; } Q_INVOKABLE QObject* newMapping(const QJsonObject& json);