<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<TITLE>Message</TITLE>
<META content="MSHTML 6.00.2900.5726" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009>Trunk
is unstable at the moment.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=390413319-14042009></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009>To get Blender to
crash it's really easy: just start it with default scene, take any button with
numeric input (for instance PassIndex in the object buttons), click on it as
to enter a numeric value on the keyboard, then quick blender. You will get
an assert in Py_Finalize() with the message "gc->gc.gc_refs != 0" in file
"f:\blender\development\python-2.5.2\python-2.5.2\python-2.5.2\modules\gcmodule.c""</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=390413319-14042009></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009>The problem is
related to recent Campbell fixes about reference count. More specifically, the
assert will occur as soon as the function </SPAN></FONT><FONT
face=Arial size=2><SPAN class=390413319-14042009> BPY_button_eval() function is
executed at least once, which is the case when you enter numeric value on the
keyboard.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=390413319-14042009></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009>I already identified
a bug in the funciton <FONT size=2>setup_armature_weakrefs()
:</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=390413319-14042009></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009></SPAN></FONT><FONT
face=Arial size=2><SPAN class=390413319-14042009><FONT color=#0000ff
size=2><FONT color=#0000ff size=2> if</FONT></FONT><FONT
size=2>( weakreflink != NULL ) {</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT
size=2>
PyDict_DelItemString(maindict,list_name);</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT
size=2> Py_XDECREF( weakreflink
); --> bug, should be removed. cause immediate crash on the second
keyboard numeric input</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009></SPAN></FONT><FONT
face=Arial size=2><SPAN class=390413319-14042009><FONT size=2>
}</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT
size=2></FONT></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT size=2>This
code is old but became buggy since Campbell decremented (rightly) the ref
count after insertion of the list in the main dictionnary a few lines
further down.</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT
size=2></FONT></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT size=2>I'm not
familiar enough with BPY to understand what's going on but at the moment it is
virtually impossible to use Blender.</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT
size=2></FONT></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT size=2>Can
someone look into that?</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT
size=2></FONT></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT
size=2>/Benoit</FONT></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=390413319-14042009><FONT
size=2> </DIV></FONT></SPAN></FONT></BODY></HTML>