start= end + 1; end= trace.indexOf('\n', start); }
} catch (IOException e) { TableItem tableItem= new TableItem(fTable, SWT.NONE); tableItem.setText(trace); }
	protected void fillTable(String trace) {		int start= 0;		int end= trace.indexOf('\n', start);				TableItem tableItem= new TableItem(fTable, SWT.NONE);		String itemLabel= trace.substring(start, end).replace('\t', ' ').replace('\r', ' ').replace('\n', ' ');		tableItem.setText(itemLabel);		tableItem.setImage(fExceptionIcon);		start= end + 1;		end= trace.indexOf('\n', start);				while(end != -1){			itemLabel= trace.substring(start,end).replace('\t', ' ').replace('\r', ' ').replace('\n', ' ');			if (!itemLabel.trim().equals("")) {				tableItem= new TableItem(fTable, SWT.NONE);				tableItem.setText(itemLabel);				// heuristic for detecting a stack frame - works for JDK				if ((itemLabel.indexOf("at ") > 0)) {					tableItem.setImage(fStackIcon);				}			}			start= end + 1;			end= trace.indexOf('\n', start);		}	}