From 9c1f4fa654b582895c6182a9ab6a25e2e42215c1 Mon Sep 17 00:00:00 2001 From: Gabriel Ferreira Date: Wed, 3 Apr 2024 22:21:56 +0200 Subject: [PATCH] bindings: Prevent module namespace injection in case the namespace exists --- bindings/python/ns__init__.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bindings/python/ns__init__.py b/bindings/python/ns__init__.py index 2fb7bedeb..6ac5df90c 100644 --- a/bindings/python/ns__init__.py +++ b/bindings/python/ns__init__.py @@ -516,7 +516,9 @@ def load_modules(): # To maintain compatibility with pybindgen scripts, # we set an attribute per module that just redirects to the upper object for module in modules: - setattr(cppyy.gbl.ns3, module.replace("-", "_"), cppyy.gbl.ns3) + moduleNamespace = module.replace("-", "_") + if moduleNamespace not in dir(cppyy.gbl.ns3): + setattr(cppyy.gbl.ns3, moduleNamespace, cppyy.gbl.ns3) # Set up a few tricks cppyy.cppdef(