if (string == null) break;
public void setItems (String [] items) {	checkWidget();	if (items == null) error (SWT.ERROR_NULL_ARGUMENT);	if (items.length == 0) {		removeAll();		return;	}		int index = 0;	int [] table = new int [items.length];	String codePage = getCodePage ();	while (index < items.length) {		String string = items [index];		if (string == null) break; 		byte [] buffer = Converter.wcsToMbcs (codePage, encodeString(string), true);		int xmString = OS.XmStringCreateLocalized (buffer);		if (xmString == 0) break;		table [index++] = xmString;	}	int ptr = OS.XtMalloc (index * 4);	OS.memmove (ptr, table, index * 4);	int [] argList1 = {OS.XmNitems, ptr, OS.XmNitemCount, index};	OS.XtSetValues (handle, argList1, argList1.length / 2);	for (int i=0; i<index; i++) OS.XmStringFree (table [i]);	OS.XtFree (ptr);	if (index < items.length) error (SWT.ERROR_ITEM_NOT_ADDED);		int [] argList2 = {OS.XmNtextField, 0};	OS.XtGetValues (handle, argList2, argList2.length / 2);	boolean warnings = display.getWarnings ();	display.setWarnings (false);	OS.XmTextSetString (argList2[1], new byte[1]);	display.setWarnings(warnings);	int [] argList3 = {OS.XmNlist, 0};	OS.XtGetValues (handle, argList3, argList3.length / 2);	int [] argList4 = {OS.XmNselectedItemCount, 0, OS.XmNselectedItems, 0};	OS.XtSetValues (argList3 [1], argList4, argList4.length / 2);}