Browse Source

fix screw up caused by attempting to uuid_parse() a null string UUID in jack client arguments

tags/0.124.0
Paul Davis 12 years ago
parent
commit
88198692bf
1 changed files with 4 additions and 2 deletions
  1. +4
    -2
      libjack/client.c

+ 4
- 2
libjack/client.c View File

@@ -773,9 +773,9 @@ server_connect (const char *server_name)


if (connect (fd, (struct sockaddr *) &addr, sizeof (addr)) < 0) { if (connect (fd, (struct sockaddr *) &addr, sizeof (addr)) < 0) {
close (fd); close (fd);
jack_error ("connect(2) call to %s failed (err=%s)", addr.sun_path, strerror (errno));
return -1; return -1;
} }

return fd; return fd;
} }


@@ -1033,8 +1033,9 @@ jack_request_client (ClientType type,


/* format connection request */ /* format connection request */


if (va->sess_uuid) {
if (va->sess_uuid && strlen (va->sess_uuid)) {
if (jack_uuid_parse (va->sess_uuid, req.uuid) != 0) { if (jack_uuid_parse (va->sess_uuid, req.uuid) != 0) {
jack_error ("Given UUID [%s] is not parseable", va->sess_uuid);
goto fail; goto fail;
} }
} else { } else {
@@ -1105,6 +1106,7 @@ jack_request_client (ClientType type,
return 0; return 0;


fail: fail:
jack_error ("attempt to connect to server failed");
if (*req_fd >= 0) { if (*req_fd >= 0) {
close (*req_fd); close (*req_fd);
*req_fd = -1; *req_fd = -1;


Loading…
Cancel
Save