From: Han-Wen Nienhuys Date: Wed, 20 Dec 2006 22:58:09 +0000 (+0100) Subject: robustness: survive \lyricsto argument without Lyrics context. Fixes #183 X-Git-Tag: release/2.10.5-1~26 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=c787bf8706b07b5a27a2fa9794a9ee1f16d6ceac;p=lilypond.git robustness: survive \lyricsto argument without Lyrics context. Fixes #183 --- diff --git a/lily/lyric-combine-music-iterator.cc b/lily/lyric-combine-music-iterator.cc index dafed1d3c8..ade6fbefe9 100644 --- a/lily/lyric-combine-music-iterator.cc +++ b/lily/lyric-combine-music-iterator.cc @@ -80,7 +80,8 @@ Lyric_combine_music_iterator::set_music_context (Context *to) if (to) { to->event_source()->add_listener (GET_LISTENER (set_busy), ly_symbol2scm ("music-event")); - lyrics_context_->set_property ("associatedVoiceContext", to->self_scm ()); + if (lyrics_context_) + lyrics_context_->set_property ("associatedVoiceContext", to->self_scm ()); } } @@ -159,6 +160,11 @@ Lyric_combine_music_iterator::construct_children () lyrics_context_ = find_context_below (lyric_iter_->get_outlet (), ly_symbol2scm ("Lyrics"), ""); + if (!lyrics_context_) + { + m->origin ()->warning ("argument of \\lyricsto should contain Lyrics context"); + } + lyricsto_voice_name_ = get_music ()->get_property ("associated-context"); Context *voice = find_voice (); @@ -170,7 +176,7 @@ Lyric_combine_music_iterator::construct_children () Wait for a Create_context event. If this isn't done, lyrics can be delayed when voices are created implicitly. */ - Global_context *g = lyrics_context_->get_global_context (); + Global_context *g = get_outlet ()->get_global_context (); g->events_below ()->add_listener (GET_LISTENER (check_new_context), ly_symbol2scm ("CreateContext")); }