[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [3893] trunk/py/scripts/addons/ space_view3d_screencast_keys.py: fix [#30740] N-panel addon toggle operators crash Blender after screen change ( Fatal Python error: GC object already tracked)
Campbell Barton
ideasman42 at gmail.com
Fri Oct 26 08:50:07 CEST 2012
Revision: 3893
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=3893
Author: campbellbarton
Date: 2012-10-26 06:50:04 +0000 (Fri, 26 Oct 2012)
Log Message:
-----------
fix [#30740] N-panel addon toggle operators crash Blender after screen change (Fatal Python error: GC object already tracked)
Modified Paths:
--------------
trunk/py/scripts/addons/space_view3d_screencast_keys.py
Modified: trunk/py/scripts/addons/space_view3d_screencast_keys.py
===================================================================
--- trunk/py/scripts/addons/space_view3d_screencast_keys.py 2012-10-25 18:47:07 UTC (rev 3892)
+++ trunk/py/scripts/addons/space_view3d_screencast_keys.py 2012-10-26 06:50:04 UTC (rev 3893)
@@ -506,7 +506,8 @@
bl_description = "Display keys pressed in the 3D View"
last_activity = 'NONE'
- _handle = None
+ _handle_a = None
+ _handle_b = None
_timer = None
def modal(self, context, event):
@@ -575,7 +576,8 @@
if not context.window_manager.screencast_keys_keys:
# stop script
context.window_manager.event_timer_remove(self._timer)
- context.region.callback_remove(self._handle)
+ context.region.callback_remove(self._handle_a)
+ context.region.callback_remove(self._handle_b)
return {'CANCELLED'}
return {'PASS_THROUGH'}
@@ -583,7 +585,8 @@
def cancel(self, context):
if context.window_manager.screencast_keys_keys:
context.window_manager.event_timer_remove(self._timer)
- context.region.callback_remove(self._handle)
+ context.region.callback_remove(self._handle_a)
+ context.region.callback_remove(self._handle_b)
context.window_manager.screencast_keys_keys = False
return {'CANCELLED'}
@@ -597,9 +600,9 @@
self.mouse = []
self.mouse_time = []
ScreencastKeysStatus.overall_time = []
- self._handle = context.region.callback_add(draw_callback_px_box,
+ self._handle_a = context.region.callback_add(draw_callback_px_box,
(self, context), 'POST_PIXEL')
- self._handle = context.region.callback_add(draw_callback_px_text,
+ self._handle_b = context.region.callback_add(draw_callback_px_text,
(self, context), 'POST_PIXEL')
self._timer = context.window_manager.event_timer_add(0.075,
context.window)
More information about the Bf-extensions-cvs
mailing list