Treat gain as an unsigned int
Bug: 328131705
Test: Tested with CTS
Merged-In: I6437544bee3465b4f0c4a7f45277b87089af5192
Change-Id: I6437544bee3465b4f0c4a7f45277b87089af5192
diff --git a/nfc/java/android/nfc/cardemulation/PollingFrame.java b/nfc/java/android/nfc/cardemulation/PollingFrame.java
index ccd06cf..29d7bdf 100644
--- a/nfc/java/android/nfc/cardemulation/PollingFrame.java
+++ b/nfc/java/android/nfc/cardemulation/PollingFrame.java
@@ -157,11 +157,7 @@
mType = frame.getInt(KEY_POLLING_LOOP_TYPE);
byte[] data = frame.getByteArray(KEY_POLLING_LOOP_DATA);
mData = (data == null) ? new byte[0] : data;
- if (frame.containsKey(KEY_POLLING_LOOP_GAIN)) {
- mGain = frame.getByte(KEY_POLLING_LOOP_GAIN);
- } else {
- mGain = -1;
- }
+ mGain = frame.getInt(KEY_POLLING_LOOP_GAIN, -1);
mTimestamp = frame.getInt(KEY_POLLING_LOOP_TIMESTAMP);
}
@@ -233,7 +229,7 @@
Bundle frame = new Bundle();
frame.putInt(KEY_POLLING_LOOP_TYPE, getType());
if (getVendorSpecificGain() != -1) {
- frame.putByte(KEY_POLLING_LOOP_GAIN, (byte) getVendorSpecificGain());
+ frame.putInt(KEY_POLLING_LOOP_GAIN, (byte) getVendorSpecificGain());
}
frame.putByteArray(KEY_POLLING_LOOP_DATA, getData());
frame.putInt(KEY_POLLING_LOOP_TIMESTAMP, getTimestamp());