Fix compilation warnings. (gtk2_ardour part)
authorAndré Nusser <andre.nusser@googlemail.com>
Sun, 21 Feb 2016 20:54:31 +0000 (21:54 +0100)
committerPaul Davis <paul@linuxaudiosystems.com>
Mon, 22 Feb 2016 20:11:02 +0000 (15:11 -0500)
gtk2_ardour/gtk_pianokeyboard.c

index 8917017960ea0aa94b827b425a3767d2c86ce432..1b628acd59d33a37321580555420fa7d1ed6f634 100644 (file)
@@ -247,11 +247,11 @@ key_binding(PianoKeyboard *pk, const char *key)
 }
 
 static void
-bind_key(PianoKeyboard *pk, const char *key, int note)
+bind_key(PianoKeyboard *pk, char *key, int note)
 {
        assert(pk->key_bindings != NULL);
 
-       g_hash_table_insert(pk->key_bindings, (const gpointer)key, (gpointer)((intptr_t)note));
+       g_hash_table_insert(pk->key_bindings, (gpointer)key, (gpointer)((intptr_t)note));
 }
 
 static void
@@ -686,7 +686,12 @@ piano_keyboard_new(void)
        pk->note_being_pressed_using_mouse = -1;
        pk->last_key = 0;
        pk->monophonic = FALSE;
-       memset((void *)pk->notes, 0, sizeof(struct PKNote) * NNOTES);
+
+       /* Avoiding memset due to pk->notes being volatile. */
+       for (int i = 0; i<sizeof(struct PKNote)*NNOTES; i++) {
+               ((volatile int*)pk->notes)[i] = 0;
+       }
+
        pk->key_bindings = g_hash_table_new(g_str_hash, g_str_equal);
        bind_keys_qwerty(pk);