- Continued getting rid of print methods and updating repr ones:
Needed to fix crashes on Windows >= 98 systems.
- Found and fixed a few small memory leaks in EXPP_interface, related to
execution of script links.
- Fixed a problem with control of the global Python dictionary persistence:
Blender.ReleaseGlobalDict(bool) should now work fine.
- Trying to fix the sigsegv crashes on Windows:
They happen when we try to "print" our objects, like Lamps or Cameras.
Following advice from the Python Embedding doc, removed the tp_print
method from Camera and also improved its tp_repr one, that will be used
as print, repr() and str() for Cameras. If this test works all other objs
will be updated accordingly.
Thanks Florian Eggenberger for telling us about it. And Greg McBride for
pointing a possible fix.
- Draw.Text and Draw.GetStringWidth updated:
Now they accept an optional second parameter to set font size and Draw.Text
returns the drawn string width.
- Partially fixed the update() and PutRaw() bugs in NMesh:
A total fix will require bigger changes, but what was done (unless buggy)
takes care of the common cases.
* Moved public declarations in camera and lamp to a new file: bpy_types.h.
* Fixed minor bugs in material, rgbTuple and Lamp + other minor changes.
* Made part of the changes to conform to decided naming conventions.
When a script that used setAttr for Camera Data objs (the bug also
affected some other modules) was executed multiple times, Blender
would crash after, let's say, the first 5 or 6 tries. Problem, as
Guignot pointed, was with reference counting. Should be ok now, all
affected modules were fixed.
* The Scene module is now "complete" (= 2.25).
* Made some necessary updates to Object and NMesh.
Added material and image handling/hooks and the constant dictionaries.
Changed Image.h and Material.h to only have public declarations, so
NMesh could include them.