[PATCH] Fix error not being propagated properly

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



---
 audio/headset.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/audio/headset.c b/audio/headset.c
index 0176937..893edd0 100644
--- a/audio/headset.c
+++ b/audio/headset.c
@@ -198,7 +198,7 @@ static DBusHandlerResult
error_connection_attempt_failed(DBusConnection *conn,
 {
 	return error_common_reply(conn, msg,
 			ERROR_INTERFACE ".ConnectionAttemptFailed",
-			err > 0 ? strerror(err) : "Connection attempt failed");
+			err < 0 ? strerror(-err) : "Connection attempt failed");
 }

 static int rfcomm_connect(struct audio_device *device, headset_stream_cb_t cb,
@@ -435,7 +435,7 @@ static void pending_connect_complete(struct
connect_cb *cb, struct audio_device
 {
 	struct headset *hs = dev->headset;

-	if (hs->pending->err)
+	if (hs->pending->err < 0)
 		cb->cb(NULL, cb->cb_data);
 	else
 		cb->cb(dev, cb->cb_data);
-- 
1.6.3.3


-- 
Luiz Augusto von Dentz
Computer Engineer
From dfcc6b0bfd8ed75630968dbb4967c31f6a0dd39a Mon Sep 17 00:00:00 2001
From: Luiz Augusto Von Dentz <luiz.dentz-von@xxxxxxxxx>
Date: Fri, 5 Mar 2010 14:19:58 +0200
Subject: [PATCH 10/11] Fix not emitting error properly when sco connection fails

---
 audio/headset.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/audio/headset.c b/audio/headset.c
index 15d3672..0176937 100644
--- a/audio/headset.c
+++ b/audio/headset.c
@@ -573,6 +573,7 @@ static void sco_connect_cb(GIOChannel *chan, GError *err, gpointer user_data)
 
 	if (err) {
 		error("%s", err->message);
+		p->err = -errno;
 
 		if (p && p->msg)
 			error_connection_attempt_failed(dev->conn, p->msg, p->err);
-- 
1.6.3.3


[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux