I'm drafting out a new engraver to produce durations above a tab
staff for use in lute tablature, and I've been stumped by a problem
for several hours. Perhaps someone can see something I'm missing.
The problem is this (recast in a simplified form):
If I set the text property in a new grob like this,
the A is engraved correctly:
Item *duration_grob;
...
duration_grob = make_item ("TabDuration", events_[0]->self_scm
());
...
duration_grob->set_property ("text", ly_string2scm ("A"));
but if I do this:
SCM duration_symbol;
Item *duration_grob;
...
duration_grob = make_item ("TabDuration", events_[0]->self_scm
());
...
duration_symbol = ly_string2scm ("A");
duration_grob->set_property ("text", duration_symbol);
the program seg faults way down in the bowels.
The last few frames are
#0 0x00cf610d in scm_gc_mark_dependencies () from
/usr/lib/libguile.so.17
#1 0x00cf64ac in scm_gc_mark () from /usr/lib/libguile.so.17
#2 0x00cf63d8 in scm_gc_mark_dependencies () from
/usr/lib/libguile.so.17
#3 0x00cf64ac in scm_gc_mark () from /usr/lib/libguile.so.17
Why?
Trevor
_______________________________________________
lilypond-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/lilypond-devel