All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RFC BlueZ] serial: Fix bogus errno usage
@ 2011-11-17 17:32 Anderson Lizardo
  2011-11-18 11:27 ` Johan Hedberg
  0 siblings, 1 reply; 3+ messages in thread
From: Anderson Lizardo @ 2011-11-17 17:32 UTC (permalink / raw)
  To: linux-bluetooth; +Cc: Anderson Lizardo

There is no previous function setting errno, thus the original code may
return a undefined value.
---

NOTE:
Is bt_io_connect() supposed to set errno on error? If yes, then the code is
correct and this patch is invalid.

But in this case, bt_io_connect() needs to be modified as there are at least
two glib library calls before returning, and this may reset errno from the
underlying connect call. So I think it needs to be saved before calling these
library functions.


 serial/port.c |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/serial/port.c b/serial/port.c
index 3b36d44..1ceda7b 100644
--- a/serial/port.c
+++ b/serial/port.c
@@ -463,10 +463,8 @@ connect:
 				BT_IO_OPT_DEST_BDADDR, &device->dst,
 				BT_IO_OPT_CHANNEL, port->channel,
 				BT_IO_OPT_INVALID);
-	if (port->io)
-		return 0;
 
-	return -errno;
+	return 0;
 }
 
 static struct serial_port *create_port(struct serial_device *device,
-- 
1.7.0.4


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-11-18 12:15 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-17 17:32 [PATCH RFC BlueZ] serial: Fix bogus errno usage Anderson Lizardo
2011-11-18 11:27 ` Johan Hedberg
2011-11-18 12:15   ` Anderson Lizardo

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.