diff options
author | Siva Velusamy <vsiva@google.com> | 2011-10-06 11:59:55 -0700 |
---|---|---|
committer | Siva Velusamy <vsiva@google.com> | 2011-10-06 12:09:18 -0700 |
commit | 1cb7304d90ddcc2c316ebb3410d232f0ed4fc369 (patch) | |
tree | 11d45de3bb83c5756afc54a324adba30586064c6 /ddms/libs/ddmuilib | |
parent | 69d7ac9f2da566bb81bdb3e2ee5b80ac6d57a2c5 (diff) | |
download | sdk-1cb7304d90ddcc2c316ebb3410d232f0ed4fc369.zip sdk-1cb7304d90ddcc2c316ebb3410d232f0ed4fc369.tar.gz sdk-1cb7304d90ddcc2c316ebb3410d232f0ed4fc369.tar.bz2 |
Minor refactor: keep sizes of snapshot ArrayList's in sync.
Change-Id: I30aef911df1146ff9a64c4d08c4371c2937d4e94
Diffstat (limited to 'ddms/libs/ddmuilib')
-rw-r--r-- | ddms/libs/ddmuilib/src/com/android/ddmuilib/heap/NativeHeapPanel.java | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/ddms/libs/ddmuilib/src/com/android/ddmuilib/heap/NativeHeapPanel.java b/ddms/libs/ddmuilib/src/com/android/ddmuilib/heap/NativeHeapPanel.java index 5bbd487..7bea050 100644 --- a/ddms/libs/ddmuilib/src/com/android/ddmuilib/heap/NativeHeapPanel.java +++ b/ddms/libs/ddmuilib/src/com/android/ddmuilib/heap/NativeHeapPanel.java @@ -169,8 +169,7 @@ public class NativeHeapPanel extends BaseHeapPanel { // the list on future updates allocations = shallowCloneList(allocations); - mNativeHeapSnapshots.add(new NativeHeapSnapshot(allocations)); - mDiffSnapshots.add(null); // filled in lazily on demand + addNativeHeapSnapshot(new NativeHeapSnapshot(allocations)); updateDisplay(); // Attempt to resolve symbols in a separate thread. @@ -181,6 +180,14 @@ public class NativeHeapPanel extends BaseHeapPanel { t.start(); } + private void addNativeHeapSnapshot(NativeHeapSnapshot snapshot) { + mNativeHeapSnapshots.add(snapshot); + + // The diff snapshots are filled in lazily on demand. + // But the list needs to be the same size as mNativeHeapSnapshots, so we add a null. + mDiffSnapshots.add(null); + } + private List<NativeAllocationInfo> shallowCloneList(List<NativeAllocationInfo> allocations) { List<NativeAllocationInfo> clonedList = new ArrayList<NativeAllocationInfo>(allocations.size()); @@ -212,8 +219,7 @@ public class NativeHeapPanel extends BaseHeapPanel { c.getClientData().getPid()); if (importedSnapshots != null) { for (NativeHeapSnapshot n : importedSnapshots) { - mNativeHeapSnapshots.add(n); - mDiffSnapshots.add(null); + addNativeHeapSnapshot(n); } } @@ -221,8 +227,7 @@ public class NativeHeapPanel extends BaseHeapPanel { allocations = shallowCloneList(allocations); if (allocations.size() > 0) { - mNativeHeapSnapshots.add(new NativeHeapSnapshot(allocations)); - mDiffSnapshots.add(null); // filled in lazily on demand + addNativeHeapSnapshot(new NativeHeapSnapshot(allocations)); } } else { mSnapshotHeapButton.setEnabled(false); @@ -459,8 +464,7 @@ public class NativeHeapPanel extends BaseHeapPanel { NativeHeapSnapshot snapshot = importer.getImportedSnapshot(); addToImportedSnapshots(snapshot); // save imported snapshot for future use - mNativeHeapSnapshots.add(snapshot); // add to currently displayed snapshots as well - mDiffSnapshots.add(null); + addNativeHeapSnapshot(snapshot); // add to currently displayed snapshots as well updateDisplay(); } |