On Sat, 2009-12-12 at 17:22 +0100, Reinhold Kainhofer wrote:
> Am Samstag, 12. Dezember 2009 15:43:37 schrieb 胡海鹏 - Hu Haipeng:
> > Sorry, Since the bad frustrating Midi tie problem persists, I have to roll
> > back to 2.13.7, and wait for a version with fixed tie playback.
>
> I've tried to fix the bug, but I'm always running into memory corruption
> issues, and I have absolutely no idea where the corruption could come from.
>
> Here is a patch that I think should fix the issue, but I'm unable to test,
> since lilypond crashes with memory corruption before it can do anything
> usable
> to the score:
> http://codereview.appspot.com/174080
>
> Does anyone of the other devs have any idea where the coruption might come
> from? The corruption happens as soon as the Head_event_tuple struct has at
> least one data member...
You have a Head_event_tuple in both tie-performer.cc and
tie-engraver.cc. Renaming one of them fixes the problem. Since
tie-engraver.cc uses vector<Head_event_tuple>, I suspect that the
compiler only generated one version of the code for
vector<Head_event_tuple> and linked both tie-performer.o and
tie-engraver.o to the same generated code. But that's only a guess,
since I have almost no idea how a C++ compiler works.
By the way, I've attached my valgrind suppressions file, which I
promised before but I don't think I ever sent.
Cheers,
Joe
{
guile1
Memcheck:Cond
fun:scm_i_find_heap_segment_containing_object
}
{
guile2
Memcheck:Cond
fun:scm_gc_mark
}
{
guile3
Memcheck:Value4
fun:scm_gc_mark
}
{
guile4
Memcheck:Value4
fun:scm_gc_mark_dependencies
}
{
guile5
Memcheck:Cond
fun:scm_gc_mark_dependencies
}
{
guile6
Memcheck:Cond
fun:scm_i_sweep_card
}
{
guile7
Memcheck:Value4
fun:scm_i_string_mark
}
{
guile8
Memcheck:Cond
fun:scm_i_mark_weak_vectors_non_weaks
}
{
guile9
Memcheck:Cond
fun:scm_i_remove_weaks_from_weak_vectors
}
{
guile10
Memcheck:Value4
fun:scm_markstream
}
{
guile11
Memcheck:Cond
obj:/usr/lib/libguile.so.17.2.0
fun:scm_c_hook_run
}
{
guile12
Memcheck:Value4
obj:/usr/lib/libguile.so.17.2.0
fun:scm_gc_mark_dependencies
}
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel