diff options
author | Claudio Takahasi <claudio.takahasi@openbossa.org> | 2012-07-26 11:11:09 -0300 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2012-07-29 17:01:17 +0200 |
commit | 58a1819a44dd753ea14baea64e870e754ea6d8fc (patch) | |
tree | 7433edc52c7b33c43b906ec0b9f1c378d52624dc | |
parent | 5a3507c104e949048a90402ad0d946702183a42e (diff) | |
download | bluez-58a1819a44dd753ea14baea64e870e754ea6d8fc.tar.gz |
btio: Connect callback errors handling cleanup
Condition verification is not required for this watch since the
condition to watch for was previously informed when it was added
in the mainloop.
-rw-r--r-- | btio/btio.c | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/btio/btio.c b/btio/btio.c index 792123f3d..730bdb322 100644 --- a/btio/btio.c +++ b/btio/btio.c @@ -162,27 +162,15 @@ static gboolean connect_cb(GIOChannel *io, GIOCondition cond, if ((cond & G_IO_NVAL) || check_nval(io)) return FALSE; - if (cond & G_IO_OUT) { - sock = g_io_channel_unix_get_fd(io); - - if (getsockopt(sock, SOL_SOCKET, SO_ERROR, &sk_err, &len) < 0) - err = -errno; - else - err = -sk_err; - - if (err < 0) - ERROR_FAILED(&gerr, "connect", -err); - } else if (cond & (G_IO_HUP | G_IO_ERR)) { - sock = g_io_channel_unix_get_fd(io); + sock = g_io_channel_unix_get_fd(io); - if (getsockopt(sock, SOL_SOCKET, SO_ERROR, &sk_err, &len) < 0) - err = -errno; - else - err = -sk_err; + if (getsockopt(sock, SOL_SOCKET, SO_ERROR, &sk_err, &len) < 0) + err = -errno; + else + err = -sk_err; - if (err < 0) - ERROR_FAILED(&gerr, "HUP or ERR on socket", -err); - } + if (err < 0) + ERROR_FAILED(&gerr, "connect error", -err); conn->connect(io, gerr, conn->user_data); |