1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-07 16:59:22 +00:00

bitbake: cooker: Restore sys.path and sys.modules between parses

When memory resident bitbake is active and we re-parse, the old module
configuration is present which can lead to strange errors. Reset this
when reparsing so the state is consistent. This fixes memory resident
bitbake errors.

(Bitbake rev: 951942c3c284ec2c62e730e145688033190af9b2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2022-03-31 11:55:12 +01:00
parent fd1a6bad77
commit b731e47eeb
+8
View File
@@ -159,6 +159,9 @@ class BBCooker:
for f in featureSet:
self.featureset.setFeature(f)
self.orig_syspath = sys.path.copy()
self.orig_sysmodules = [*sys.modules]
self.configuration = bb.cookerdata.CookerConfiguration()
self.idleCallBackRegister = idleCallBackRegister
@@ -350,6 +353,11 @@ class BBCooker:
self.state = state.initial
self.caches_array = []
sys.path = self.orig_syspath.copy()
for mod in [*sys.modules]:
if mod not in self.orig_sysmodules:
del sys.modules[mod]
# Need to preserve BB_CONSOLELOG over resets
consolelog = None
if hasattr(self, "data"):