9. Version 1.3.6

  • FIXED: Together with pysmr-1.0.9, a significant number of errors related to threading and signalling in baspl++ have been fixed. This required (among others) the introduction of reference counters in objects_manager.py

  • FIXED: When displaying node ID's with serendipity elements such as Q8.xx and HE20.xx, an ambiguous ID for the interpolated center node(s) of the face(s) would be displayed.

  • FIXED: XFree86-Drivers of ATI Radeon cards do not properly handle the glXDestroyContext() call. When closing a Scene window, this would result in an error message, and baspl++ would exit. Now the error is silently ignored. The fix requires the installation of gtkglarea-

  • FIXED: On ALPHA, when running baspl++ locally, a number conversion problem between pygtk and gtk+ would cause errors when running baspl++ on the local X server. pygtk has been modified such that these errors do not occur anymore. The fix requires the installation of pygtk-

  • IMPROVED: The off-screen rendering code prints debugging information to standard error if enabled by calling _pygtk_extra.off_screen_renderer_set_debug(1). This might be useful for certain graphics cards (e.g. ATI Radeon) in combination with certain versions of XFree86 or Xorg, where off-screen rendering does not work or even crashes the X server.

  • IMPROVED: Several threading-related problems and bugs have been identified in pysmr. The pysmr recursive lock and release functions have been improved to use thread-local storage for counters (the global storage lead in certain cases to race conditions). The optional parameter 'must_have_lock' (defaults to 1) can be set to 0, this is needed for the certain (rare) cases, where the GTK thread does NOT have acquired the lock already. The gtk_thread.debug variable can be set to values of 1 to enable debugging output. This version of pysmr (1.0.9) has received an additional check for lock underrun (threads_leave called more than threads_enter).