summaryrefslogtreecommitdiff
path: root/src/libpiano/piano.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libpiano/piano.c')
-rw-r--r--src/libpiano/piano.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/libpiano/piano.c b/src/libpiano/piano.c
index a189f34..fde8789 100644
--- a/src/libpiano/piano.c
+++ b/src/libpiano/piano.c
@@ -183,6 +183,18 @@ static void PianoDestroyPartner (PianoPartner_t *partner) {
memset (partner, 0, sizeof (*partner));
}
+void PianoDestroyStationMode (PianoStationMode_t * const modes) {
+ PianoStationMode_t *curMode = modes;
+
+ while (curMode != NULL) {
+ free (curMode->name);
+ free (curMode->description);
+ PianoStationMode_t * const lastMode = curMode;
+ curMode = (PianoStationMode_t *) curMode->head.next;
+ free (lastMode);
+ }
+}
+
/* frees the whole piano handle structure
* @param piano handle
* @return nothing