From e959c8e084069aa8aa453cd36e15d9aed15055be Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Thu, 29 Jan 2009 23:16:21 +0100
Subject: [PATCH] jack: close JACK client on stop

When MPD stops playback, close the JACK client connection.
---
 src/output/jack_plugin.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/output/jack_plugin.c b/src/output/jack_plugin.c
index 4a96b4d82..2e93d2ec8 100644
--- a/src/output/jack_plugin.c
+++ b/src/output/jack_plugin.c
@@ -88,8 +88,6 @@ mpd_jack_free(struct jack_data *jd)
 {
 	assert(jd != NULL);
 
-	mpd_jack_client_free(jd);
-
 	for (unsigned i = 0; i < G_N_ELEMENTS(jd->output_ports); ++i)
 		g_free(jd->output_ports[i]);
 
@@ -286,7 +284,7 @@ mpd_jack_open(void *data, struct audio_format *audio_format)
 
 	assert(jd != NULL);
 
-	if (jd->client == NULL && !mpd_jack_connect(jd, audio_format)) {
+	if (!mpd_jack_connect(jd, audio_format)) {
 		mpd_jack_client_free(jd);
 		return false;
 	}
@@ -299,7 +297,9 @@ mpd_jack_open(void *data, struct audio_format *audio_format)
 static void
 mpd_jack_close(G_GNUC_UNUSED void *data)
 {
-	/*mpd_jack_finish(audioOutput);*/
+	struct jack_data *jd = data;
+
+	mpd_jack_client_free(jd);
 }
 
 static void