Bug 102150 RCP splashscreen stays forever in case of error
If a serious error occurs during the startup of an RCP application, like a missing plugin etc. so that the application could not start, the splash screen of the application stays for ever. This happens if the application is started by PDE using the "Run as eclipse application" menu, but the process has been stopped using the "Stop" button. I had to kill the new eclipse.exe process using the windows taskmanager.
bundles/org.eclipse.core.commands/src/org/eclipse/core/commands/Command.java
final IExecutionListener listener = listeners[i];
					listener.postExecuteSuccess(getId(), returnValue);
				}
			}
		}
	}
	/**
	 * Notifies the execution listeners for this command that an attempt to
	 * execute is about to start.
	 * 
	 * @param event
	 *            The execution event that will be used; never <code>null</code>.
	 */
	private final void firePreExecute(final ExecutionEvent event) {
		if (executionListeners != null) {
			final int executionListenersSize = executionListeners.size();
			if (executionListenersSize > 0) {
				/*
				 * Bug 88629. Copying to an array avoids a
				 * ConcurrentModificationException if someone tries to remove
				 * the listener while handling the event.
				 */
				final IExecutionListener[] listeners = (IExecutionListener[]) executionListeners
						.toArray(new IExecutionListener[executionListenersSize]);
				for (int i = 0; i < executionListenersSize; i++) {
					final IExecutionListener listener = listeners[i];
					listener.preExecute(getId(), event);
				}
			}
		}