SG %!s(int64=3) %!d(string=hai) anos
pai
achega
6f211977e5
Modificáronse 1 ficheiros con 8 adicións e 0 borrados
  1. 8 0
      tracker_engine/tracker.c

+ 8 - 0
tracker_engine/tracker.c

@@ -75,6 +75,13 @@ static void tracker_song_state_init(Tracker* tracker) {
     }
 }
 
+static void tracker_song_state_clear(Tracker* tracker) {
+    if(tracker->song_state.channels != NULL) {
+        free(tracker->song_state.channels);
+        tracker->song_state.channels = NULL;
+    }
+}
+
 static uint8_t record_get_note(Row note) {
     return note & ROW_NOTE_MASK;
 }
@@ -386,6 +393,7 @@ Tracker* tracker_alloc() {
 }
 
 void tracker_free(Tracker* tracker) {
+    tracker_song_state_clear(tracker);
     free(tracker);
 }