diff options
| author | Andrey Loskutov | 2018-07-27 07:43:01 +0000 |
|---|---|---|
| committer | Andrey Loskutov | 2018-07-27 07:43:01 +0000 |
| commit | 91cef84d181a3ed1b4a2c91526b558b2c87e5a77 (patch) | |
| tree | 28697dd57f47245b26c6ee26bc57ae97809f83ee | |
| parent | 41a4facc09ecacf94e62af24583d13dd7ac0789d (diff) | |
| download | eclipse.platform.swt-91cef84d181a3ed1b4a2c91526b558b2c87e5a77.tar.gz eclipse.platform.swt-91cef84d181a3ed1b4a2c91526b558b2c87e5a77.tar.xz eclipse.platform.swt-91cef84d181a3ed1b4a2c91526b558b2c87e5a77.zip | |
Bug 532632 - fixed NPE on error reporting for new leak checks
Change-Id: I827c3e2de8f924fe741ea18f99fc09c54ffa19ce
Signed-off-by: Andrey Loskutov <loskutov@gmx.de>
| -rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java index 29f4102b5a..61ab5bbef1 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Display.java @@ -4966,7 +4966,7 @@ Widget removeWidget (long /*int*/ handle) { String debugInfoForIndex(long /*int*/ index) { String s = ", index: " + index; int idx = (int) index; - if(idx >= 0 && idx < widgetTable.length) { + if (idx >= 0 && idx < widgetTable.length) { s += ", current value at: " + widgetTable[idx]; } s += dumpWidgetTableInfo(); @@ -4979,16 +4979,16 @@ String dumpWidgetTableInfo() { IdentityHashMap<Widget, Collection<Integer>> disposed = new IdentityHashMap<>(); for (int i = 0; i < widgetTable.length; i++) { Widget w = widgetTable[i]; - if(w.isDisposed()) { + if (w != null && w.isDisposed()) { Collection<Integer> list = disposed.get(w); - if(list == null) { + if (list == null) { list = new ArrayList<>(); disposed.put(w, list); } list.add(Integer.valueOf(i)); } } - if(!disposed.isEmpty()) { + if (!disposed.isEmpty()) { sb.append(", leaked elements:"); Set<Entry<Widget,Collection<Integer>>> set = disposed.entrySet(); for (Entry<Widget, Collection<Integer>> entry : set) { |
