This PR detects when the 'this' attribute is requested from SoBaseKit and returns the SoNode implementation.
Currently SoBaseKit.__getattr__() calls SoBaseKit_getNodekitCatalog() unconditionally, however SoBaseKit_getNodekitCatalog itself results in a request for the 'this' attribute, leading to infinite recursion. At the moment this error is handled silently upstream, but can present an issue when using debuggers such as debugpy (#85). This fix handles the 'this' attribute before this happens.
This PR detects when the
'this'
attribute is requested fromSoBaseKit
and returns theSoNode
implementation.Currently
SoBaseKit.__getattr__()
callsSoBaseKit_getNodekitCatalog()
unconditionally, howeverSoBaseKit_getNodekitCatalog
itself results in a request for the'this'
attribute, leading to infinite recursion. At the moment this error is handled silently upstream, but can present an issue when using debuggers such as debugpy (#85). This fix handles the'this'
attribute before this happens.