From 8edae3dfd3f594ca1b24c8365561f1f8c059440e Mon Sep 17 00:00:00 2001 From: Nick Pelly Date: Thu, 18 Jun 2009 16:23:15 -0700 Subject: [PATCH] Fix bug in BluetoothInputStream.read(). InputStream.read() must return values in range [0, 255]. But the previous code would sign extend when casting to int so return [-128, 127]. Bitwise AND with 0xff to remove sign extension. --- core/java/android/bluetooth/BluetoothInputStream.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/java/android/bluetooth/BluetoothInputStream.java b/core/java/android/bluetooth/BluetoothInputStream.java index e6f501c9b69f0..c060f3263eeb6 100644 --- a/core/java/android/bluetooth/BluetoothInputStream.java +++ b/core/java/android/bluetooth/BluetoothInputStream.java @@ -59,7 +59,7 @@ import java.io.InputStream; byte b[] = new byte[1]; int ret = mSocket.readNative(b, 0, 1); if (ret == 1) { - return (int)b[0]; + return (int)b[0] & 0xff; } else { return -1; }