Diff between 30806e2eb92f7fe5fef61a3914b45a39e4a74b1c and 0fad8a94a1b5c0ff01f0ea47e8ec3e5bbb7229e3

Changed Files

File Additions Deletions Status
android/socket.c +6 -4 modified

Full Patch

diff --git a/android/socket.c b/android/socket.c
index 9aab345..afa2008 100644
--- a/android/socket.c
+++ b/android/socket.c
@@ -102,14 +102,16 @@ static int rfsock_set_buffer(struct rfcomm_sock *rfsock)
 
 	err = getsockopt(rfsock->bt_sock, SOL_SOCKET, SO_RCVBUF, &rcv, &len);
 	if (err < 0) {
-		error("getsockopt(SO_RCVBUF): %s", strerror(errno));
-		return -errno;
+		int err = -errno;
+		error("getsockopt(SO_RCVBUF): %s", strerror(-err));
+		return err;
 	}
 
 	err = getsockopt(rfsock->bt_sock, SOL_SOCKET, SO_SNDBUF, &snd, &len);
 	if (err < 0) {
-		error("getsockopt(SO_SNDBUF): %s", strerror(errno));
-		return -errno;
+		int err = -errno;
+		error("getsockopt(SO_SNDBUF): %s", strerror(-err));
+		return err;
 	}
 
 	size = MAX(rcv, snd);