diff options
author | Silenio Quarti <silenio> | 2005-10-19 22:33:47 +0000 |
---|---|---|
committer | Silenio Quarti <silenio> | 2005-10-19 22:33:47 +0000 |
commit | 068cfa0a5eeab22523547e6324d2916c3eb036d4 (patch) | |
tree | 624003706b90b3a951a7b3907c79c282ba95d313 | |
parent | bf225c1008125f637557b1a30bcff4467cee116f (diff) | |
download | eclipse.platform.swt-068cfa0a5eeab22523547e6324d2916c3eb036d4.tar.gz eclipse.platform.swt-068cfa0a5eeab22523547e6324d2916c3eb036d4.tar.xz eclipse.platform.swt-068cfa0a5eeab22523547e6324d2916c3eb036d4.zip |
fixing junit test setSelection(new Treeitem[]{null})
-rw-r--r-- | bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Tree.java | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Tree.java b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Tree.java index 15c1ec6172..24bc5f13f3 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Tree.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/carbon/org/eclipse/swt/widgets/Tree.java @@ -2384,12 +2384,14 @@ public void setSelection (TreeItem [] items) { deselectAll (); int length = items.length; if (length == 0 || ((style & SWT.SINGLE) != 0 && length > 1)) return; + int count = 0; int[] ids = new int [length]; for (int i=0; i<length; i++) { - if (items [i] == null) error (SWT.ERROR_INVALID_ARGUMENT); - if (items [i].isDisposed ()) error (SWT.ERROR_INVALID_ARGUMENT); - ids [i] = items [i].id; - showItem (items [i], false); + if (items [i] != null) { + if (items [i].isDisposed ()) error (SWT.ERROR_INVALID_ARGUMENT); + ids [count++] = items [i].id; + showItem (items [i], false); + } } ignoreSelect = true; /* @@ -2407,12 +2409,12 @@ public void setSelection (TreeItem [] items) { OS.GetDataBrowserSelectionFlags (handle, selectionFlags); OS.SetDataBrowserSelectionFlags (handle, selectionFlags [0] & ~OS.kDataBrowserNeverEmptySelectionSet); } - OS.SetDataBrowserSelectedItems (handle, ids.length, ids, OS.kDataBrowserItemsAssign); + OS.SetDataBrowserSelectedItems (handle, count, ids, OS.kDataBrowserItemsAssign); if ((style & SWT.SINGLE) != 0) { OS.SetDataBrowserSelectionFlags (handle, selectionFlags [0]); } ignoreSelect = false; - if (length > 0) showItem (items [0], true); + if (length > 0 && items [0] != null) showItem (items [0], true); } /** |