Revert "Remove special handling for length field."
This reverts commit cda4eded9861bea93e2467bdd65fc7ba8b41dfc9.
Bug: 18012893
Change-Id: Ie83ae3a1afb0bf8ca73b3a3597b149ab264274b4
diff --git a/src/java/com/android/internal/telephony/uicc/UiccCarrierPrivilegeRules.java b/src/java/com/android/internal/telephony/uicc/UiccCarrierPrivilegeRules.java
index 0aec4d1..5b3c096 100644
--- a/src/java/com/android/internal/telephony/uicc/UiccCarrierPrivilegeRules.java
+++ b/src/java/com/android/internal/telephony/uicc/UiccCarrierPrivilegeRules.java
@@ -161,7 +161,8 @@
public String parseLength(String data) {
int offset = tag.length();
int firstByte = Integer.parseInt(data.substring(offset, offset + 2), 16);
- if (firstByte < SINGLE_BYTE_MAX_LENGTH) {
+ // TODO: remove second condition before launch. b/18012893
+ if (firstByte < SINGLE_BYTE_MAX_LENGTH || (offset + 2 + firstByte * 2 == data.length())) {
length = firstByte * 2;
lengthBytes = data.substring(offset, offset + 2);
} else {