On Tue, 2013-11-26 at 09:23 +0100, Éloi Rivard wrote:
> It was part of my effort to factorize and reduce code in callbacks.h.

Oh - I thought it was part of trying to get non-interactive invocation
working without gtk. In this case the crash is more serious - it was
crashing because during file loading the scheme callback route was not
used and so displayhelper() was not called, by moving the call to
displayhelper() down into the addmeasures() routine you caused it to be
called during file loading (I would guess that Denemo.gui is not set up
at that stage). So it is more serious because you moved displayhelper()
down into other low-level routines, and the same crash may be waiting
for us when a file is loaded which require those.
This, of course, brings us back to the main thing we need, tests. (That
is why I hoped and assumed that the crash was due to you trying to get
testing working, rather than general improvements to the code). It will
be much easier to improve the code generally once a good set of tests
are present. In particular, the excellent improvement of removing the
passing of the global value Denemo.gui around could only safely be done
when tests are present that will fail if the parameter "gui" refers not
to the global Denemo.gui but to a DenemoGUI* which is being created and
populated - as during file loading, and possibly other things such as
switching tabs.

Can you list the places where you have moved the displayhelper() call,
and with a view to looking over where they can occur in the call tree?

Richard




_______________________________________________
Denemo-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/denemo-devel

Reply via email to