aboutsummaryrefslogtreecommitdiff
path: root/audio/headset.c
diff options
context:
space:
mode:
authorJohan Hedberg <johan.hedberg@nokia.com>2010-03-22 13:07:23 +0200
committerJohan Hedberg <johan.hedberg@nokia.com>2010-03-22 13:07:23 +0200
commitfa2686f9bf80632a900551ee1ac704c52c4458c1 (patch)
tree54e5fa7172fc9dbb76adaa717ca0353b4212c70f /audio/headset.c
parent4ebb87203d438ea2672cc406813807e227b760e2 (diff)
downloadbluez-fa2686f9bf80632a900551ee1ac704c52c4458c1.tar.gz
Fix SCO connection error propagation
Diffstat (limited to 'audio/headset.c')
-rw-r--r--audio/headset.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/audio/headset.c b/audio/headset.c
index 15d36720..f6b9187f 100644
--- a/audio/headset.c
+++ b/audio/headset.c
@@ -574,10 +574,14 @@ static void sco_connect_cb(GIOChannel *chan, GError *err, gpointer user_data)
if (err) {
error("%s", err->message);
- if (p && p->msg)
- error_connection_attempt_failed(dev->conn, p->msg, p->err);
-
- pending_connect_finalize(dev);
+ if (p != NULL) {
+ p->err = -errno;
+ if (p->msg)
+ error_connection_attempt_failed(dev->conn,
+ p->msg,
+ p->err);
+ pending_connect_finalize(dev);
+ }
if (hs->rfcomm)
headset_set_state(dev, HEADSET_STATE_CONNECTED);