aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2023-08-30 21:43:41 +0200
committerChristian Kandeler <christian.kandeler@qt.io>2023-09-01 12:36:45 +0000
commitb607fac54ecc6e047a10ac7321884dafb6912ee1 (patch)
tree2713ac9507b283b7021dfdb4a83eb2d0c6071ff3
parent2a3f824f2841415f5875082773e16ccc43fad22a (diff)
Properly clean up in ScriptEngine::Importer
We must not leave "require" values behind. Fixes: QBS-1751 Change-Id: If09c452d0df07642af0cd602d146173d9b638f79 Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
-rw-r--r--changelogs/changes-2.1.2.md2
-rw-r--r--src/lib/corelib/language/scriptengine.cpp3
2 files changed, 3 insertions, 2 deletions
diff --git a/changelogs/changes-2.1.2.md b/changelogs/changes-2.1.2.md
index 4d520aad0..7b059e10d 100644
--- a/changelogs/changes-2.1.2.md
+++ b/changelogs/changes-2.1.2.md
@@ -1,6 +1,7 @@
# General
* Fixed handling JS floating-point values for x86.
* Fixed scope pollution and potential crash when assigning to provider properties (QBS-1747).
+* Fixed potential access to freed JSValues (QBS-1751).
# Apple
* Fixed bundle module with Xcode-less profiles.
@@ -10,5 +11,6 @@
* Added CI job to be able to test XCode-less profiles on macOS.
# Contributors
+* Christian Kandeler
* Dmitry Shachnev
* Ivan Komissarov
diff --git a/src/lib/corelib/language/scriptengine.cpp b/src/lib/corelib/language/scriptengine.cpp
index 11d41b5c2..638813414 100644
--- a/src/lib/corelib/language/scriptengine.cpp
+++ b/src/lib/corelib/language/scriptengine.cpp
@@ -1026,8 +1026,7 @@ ScriptEngine::Importer::Importer(
ScriptEngine::Importer::~Importer()
{
- if (m_engine.m_observeMode == ObserveMode::Enabled)
- m_engine.m_requireResults.clear();
+ m_engine.m_requireResults.clear();
m_engine.m_currentDirPathStack.pop();
m_engine.m_extensionSearchPathsStack.pop();
m_engine.uninstallImportFunctions();