diff options
Diffstat (limited to 'plugins/alsa')
-rw-r--r-- | plugins/alsa/alsa.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/plugins/alsa/alsa.c b/plugins/alsa/alsa.c index cca4dde9..cbc597ab 100644 --- a/plugins/alsa/alsa.c +++ b/plugins/alsa/alsa.c @@ -576,8 +576,20 @@ palsa_stop (void) { #endif UNLOCK; deadbeef->streamer_reset (1); - if (deadbeef->conf_get_int ("alsa.freeonstop", 0)) { + DB_playItem_t *ts = deadbeef->streamer_get_streaming_track (); + DB_playItem_t *tp = deadbeef->streamer_get_playing_track (); + if (deadbeef->conf_get_int ("alsa.freeonstop", 0) && !ts && !tp) { palsa_free (); + printf ("\033[0;31malsa released!\033[37;0m\n"); + } + else { + printf ("\033[0;32malsa not released!\033[37;0m\n"); + } + if (tp) { + deadbeef->pl_item_unref (tp); + } + if (ts) { + deadbeef->pl_item_unref (ts); } return 0; } |