|
@@ -1024,8 +1024,11 @@ static int irda_connect(struct socket *sock, struct sockaddr *uaddr,
|
|
}
|
|
}
|
|
|
|
|
|
/* Check if we have opened a local TSAP */
|
|
/* Check if we have opened a local TSAP */
|
|
- if (!self->tsap)
|
|
|
|
- irda_open_tsap(self, LSAP_ANY, addr->sir_name);
|
|
|
|
|
|
+ if (!self->tsap) {
|
|
|
|
+ err = irda_open_tsap(self, LSAP_ANY, addr->sir_name);
|
|
|
|
+ if (err)
|
|
|
|
+ goto out;
|
|
|
|
+ }
|
|
|
|
|
|
/* Move to connecting socket, start sending Connect Requests */
|
|
/* Move to connecting socket, start sending Connect Requests */
|
|
sock->state = SS_CONNECTING;
|
|
sock->state = SS_CONNECTING;
|