/** * @see ILaunchListener#launchChanged(ILaunch) */ @Override public void launchChanged(final ILaunch launch) { IProcess[] processes= launch.getProcesses(); for (IProcess process : processes) { if (process.getStreamsProxy() == null) { continue; } if (getConsoleDocument(process) == null) { // create a new console in a separated thread, see bug 355011. Job job = new ConsoleCreation(launch, process); job.schedule(); } } List<IProcess> removed = getRemovedProcesses(launch); if (removed != null) { for (IProcess p : removed) { removeProcess(p); } } }