diff options
| author | Mathieu Chartier <mathieuc@google.com> | 2015-03-25 13:35:38 -0700 |
|---|---|---|
| committer | Mathieu Chartier <mathieuc@google.com> | 2015-03-27 18:55:50 -0700 |
| commit | 3d529c5b0ae06953d4415aabcd7cf83333c3ef83 (patch) | |
| tree | 6cf90605f2cd03bfa53a2c082e013e0466a809ca | |
| parent | 5fc9b336ebb6fc224b3e77af388024dea029fbb3 (diff) | |
| download | frameworks_base-3d529c5b0ae06953d4415aabcd7cf83333c3ef83.zip frameworks_base-3d529c5b0ae06953d4415aabcd7cf83333c3ef83.tar.gz frameworks_base-3d529c5b0ae06953d4415aabcd7cf83333c3ef83.tar.bz2 | |
Change getDeclaredFieldsUnchecked call to new return value
Required for related libcore change.
Bug: 19264997
Change-Id: I17ca0cf4b9ba853e59f4a6eff3a05d9d90cf23f9
| -rw-r--r-- | core/java/android/view/ViewDebug.java | 38 |
1 files changed, 15 insertions, 23 deletions
diff --git a/core/java/android/view/ViewDebug.java b/core/java/android/view/ViewDebug.java index 50e64c6..a237afd 100644 --- a/core/java/android/view/ViewDebug.java +++ b/core/java/android/view/ViewDebug.java @@ -1005,31 +1005,23 @@ public class ViewDebug { return fields; } - final ArrayList<Field> declaredFields = new ArrayList(); - klass.getDeclaredFieldsUnchecked(false, declaredFields); - - final ArrayList<Field> foundFields = new ArrayList<Field>(); - final int count = declaredFields.size(); - for (int i = 0; i < count; i++) { - final Field field = declaredFields.get(i); - - // Ensure the field type can be resolved. - try { - field.getType(); - } catch (NoClassDefFoundError e) { - continue; - } - - if (field.isAnnotationPresent(ExportedProperty.class)) { - field.setAccessible(true); - foundFields.add(field); - sAnnotations.put(field, field.getAnnotation(ExportedProperty.class)); + try { + final Field[] declaredFields = klass.getDeclaredFieldsUnchecked(false); + final ArrayList<Field> foundFields = new ArrayList<Field>(); + for (final Field field : declaredFields) { + // Fields which can't be resolved have a null type. + if (field.getType() != null && field.isAnnotationPresent(ExportedProperty.class)) { + field.setAccessible(true); + foundFields.add(field); + sAnnotations.put(field, field.getAnnotation(ExportedProperty.class)); + } } + fields = foundFields.toArray(new Field[foundFields.size()]); + map.put(klass, fields); + } catch (NoClassDefFoundError e) { + throw new AssertionError(e); } - fields = foundFields.toArray(new Field[foundFields.size()]); - map.put(klass, fields); - return fields; } @@ -1651,4 +1643,4 @@ public class ViewDebug { } }); } -}
\ No newline at end of file +} |
