diff options
| author | Wink Saville <wink@google.com> | 2011-11-10 15:25:03 +0000 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2011-11-10 15:25:03 +0000 |
| commit | 99d858b04b27b51e346fb5d3860e6953cee64ecd (patch) | |
| tree | 2564c53073ff5aeb8e96149c842d1269bbea9222 | |
| parent | 2e97db4981e7773e84deee37c394748076b1aafd (diff) | |
| parent | a092ba5667e9c055f4d5c83296c8c81471695747 (diff) | |
am a092ba56: am e562287c: Merge "[maguro] Update COMPREHENSION-TLV parser in CAT" into ics-mr0
* commit 'a092ba5667e9c055f4d5c83296c8c81471695747':
[maguro] Update COMPREHENSION-TLV parser in CAT
| -rw-r--r-- | telephony/java/com/android/internal/telephony/cat/ComprehensionTlv.java | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/telephony/java/com/android/internal/telephony/cat/ComprehensionTlv.java b/telephony/java/com/android/internal/telephony/cat/ComprehensionTlv.java index 99f662d9ee27..e5a2d31e5562 100644 --- a/telephony/java/com/android/internal/telephony/cat/ComprehensionTlv.java +++ b/telephony/java/com/android/internal/telephony/cat/ComprehensionTlv.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006 The Android Open Source Project + * Copyright (C) 2011 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -28,6 +28,7 @@ import java.util.List; * {@hide} */ class ComprehensionTlv { + private static final String LOG_TAG = "ComprehensionTlv"; private int mTag; private boolean mCr; private int mLength; @@ -88,8 +89,13 @@ class ComprehensionTlv { int endIndex = data.length; while (startIndex < endIndex) { ComprehensionTlv ctlv = ComprehensionTlv.decode(data, startIndex); - items.add(ctlv); - startIndex = ctlv.mValueIndex + ctlv.mLength; + if (ctlv != null) { + items.add(ctlv); + startIndex = ctlv.mValueIndex + ctlv.mLength; + } else { + CatLog.d(LOG_TAG, "decodeMany: ctlv is null, stop decoding"); + break; + } } return items; |
