nvda
0098a31a - Detect and log objects being cleaned up by the Python cyclic garbage collector, and remove several more reference cycles (#11499)

Commit
5 years ago
Detect and log objects being cleaned up by the Python cyclic garbage collector, and remove several more reference cycles (#11499) * Track deleting of important unreachable objects by the Python garbage collector. Includes COM pointers, and most NVDA-specific classes (AutoPropertyObject, _eventExecutor, WavePlayer, sayAll readers). * ia2Web.Editor NVDAObject: clean up _lastCaretObj in event_loseFocus added by MozillaCompoundTextInfo, in order to break a reference cycle. * logHandler: stop a reference cycle when fetching a frame's locals within an exception caluse where the Exception is exposed as a local variable within the clause. * eventHandler: ensure that _eventExecutor does not end up as a reference cycle when there is an exception when executing an event. * garbageHandler: add copyright header. * Update What's new. * Track some UpdateCheck classes with garbageHandler.
Parents
Loading