Blob Blame History Raw
--- jack-audio-connection-kit-0.116.1/libjack/client.c.cleanup-mb-thread	2009-11-04 14:48:04.686074485 -0500
+++ jack-audio-connection-kit-0.116.1/libjack/client.c	2009-11-04 14:48:40.198074109 -0500
@@ -970,6 +970,7 @@ jack_client_open_aux (const char *client
 	/* validate parameters */
 	if ((options & ~JackOpenOptions)) {
 		*status |= (JackFailure|JackInvalidOption);
+		jack_messagebuffer_exit ();
 		return NULL;
 	}
 
@@ -984,6 +985,7 @@ jack_client_open_aux (const char *client
 	*/
 	if (jack_get_tmpdir ()) {
 		*status |= JackFailure;
+		jack_messagebuffer_exit ();
 		return NULL;
 	}
 
@@ -994,6 +996,7 @@ jack_client_open_aux (const char *client
 
 	if (jack_request_client (ClientExternal, client_name, options, status,
 				 &va, &res, &req_fd)) {
+		jack_messagebuffer_exit ();
 		return NULL;
 	}
 
@@ -1088,6 +1091,8 @@ jack_client_open_aux (const char *client
  	return client;
 	
   fail:
+	jack_messagebuffer_exit ();
+
 	if (client->engine) {
 		jack_release_shm (&client->engine_shm);
 		client->engine = 0;