On Mon, 2012-03-05 at 19:30 -0600, Jeremiah Benham wrote:
I noticed a bug. It only plays
back once. It is easy to reproduce. enter a dew notes, hit f5, then
hit
f5 again. It only plays the first time. Denemo does not crash during
this.
I believe I have fixed this bug. When stopping playing the playback
button is re-drawn as a play rather than pause button. This activity has
to be protected as it is a gtk call. I have moved it into the main loop,
and all seems to be well now.
The change is in midi.c, and I have checked it into main/latest. There
are many more changes in midi.c on master which must not get into the
release.
This shows the bit that is changed:
static gboolean
stop_play_callback(gchar *thescript) {
call_out_to_guile(thescript);
g_free(thescript);
return FALSE;
}
static gboolean update_playbutton_callback(gboolean paused) {
set_playbutton(paused);
return FALSE;
}
void stop_playing() {
update_position(NULL);
g_idle_add_full(G_PRIORITY_HIGH_IDLE,
(GSourceFunc)update_playbutton_callback, is_paused(), NULL);
playing = FALSE;
play_until = -G_MAXDOUBLE;
Can you get this into the release branch Jeremiah?