From 7dbad8ee51a17e50cfe8596b7a5ad24541556678 Mon Sep 17 00:00:00 2001 From: Szymon Janc Date: Sat, 1 Mar 2014 14:19:17 +0100 Subject: [PATCH] android/hal-audio: Fix error code handling in audio_ipc_init Make audio_ipc_init follow convention of returning negative code on error. This also fix passing negative error code to strerror in case of pthread_create failure (this function returns non-negative code on error). --- android/hal-audio.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/android/hal-audio.c b/android/hal-audio.c index f6f1e7da6..79a74b827 100644 --- a/android/hal-audio.c +++ b/android/hal-audio.c @@ -1600,9 +1600,9 @@ static int audio_ipc_init(void) sk = socket(PF_LOCAL, SOCK_SEQPACKET, 0); if (sk < 0) { - err = errno; - error("audio: Failed to create socket: %d (%s)", err, - strerror(err)); + err = -errno; + error("audio: Failed to create socket: %d (%s)", -err, + strerror(-err)); return err; } @@ -1613,16 +1613,16 @@ static int audio_ipc_init(void) sizeof(BLUEZ_AUDIO_SK_PATH)); if (bind(sk, (struct sockaddr *) &addr, sizeof(addr)) < 0) { - err = errno; - error("audio: Failed to bind socket: %d (%s)", err, - strerror(err)); + err = -errno; + error("audio: Failed to bind socket: %d (%s)", -err, + strerror(-err)); goto failed; } if (listen(sk, 1) < 0) { - err = errno; - error("audio: Failed to listen on the socket: %d (%s)", err, - strerror(err)); + err = -errno; + error("audio: Failed to listen on the socket: %d (%s)", -err, + strerror(-err)); goto failed; } @@ -1633,7 +1633,7 @@ static int audio_ipc_init(void) err = -err; ipc_th = 0; error("audio: Failed to start Audio IPC thread: %d (%s)", - err, strerror(err)); + -err, strerror(-err)); goto failed; } @@ -1659,8 +1659,8 @@ static int audio_open(const hw_module_t *module, const char *name, } err = audio_ipc_init(); - if (err) - return -err; + if (err < 0) + return err; a2dp_dev = calloc(1, sizeof(struct a2dp_audio_dev)); if (!a2dp_dev) -- 2.47.3