mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-21 21:52:10 +02:00
Bug 573719: Display error on shell open failed
Save shell before disposing control so error message has somewhere to go Change-Id: I3bcaa0e8f23a8c177309e72b6d9dfbb8afb72cf4
This commit is contained in:
parent
f71d92114f
commit
261af5106c
1 changed files with 4 additions and 1 deletions
|
@ -30,6 +30,7 @@ import org.eclipse.core.runtime.Platform;
|
||||||
import org.eclipse.jface.dialogs.MessageDialog;
|
import org.eclipse.jface.dialogs.MessageDialog;
|
||||||
import org.eclipse.osgi.util.NLS;
|
import org.eclipse.osgi.util.NLS;
|
||||||
import org.eclipse.swt.custom.CTabItem;
|
import org.eclipse.swt.custom.CTabItem;
|
||||||
|
import org.eclipse.swt.widgets.Shell;
|
||||||
import org.eclipse.tm.internal.terminal.emulator.VT100Emulator;
|
import org.eclipse.tm.internal.terminal.emulator.VT100Emulator;
|
||||||
import org.eclipse.tm.internal.terminal.emulator.VT100TerminalControl;
|
import org.eclipse.tm.internal.terminal.emulator.VT100TerminalControl;
|
||||||
import org.eclipse.tm.internal.terminal.provisional.api.ISettingsStore;
|
import org.eclipse.tm.internal.terminal.provisional.api.ISettingsStore;
|
||||||
|
@ -209,6 +210,8 @@ public class ProcessConnector extends AbstractStreamsConnector {
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
// Disconnect right away
|
// Disconnect right away
|
||||||
disconnect();
|
disconnect();
|
||||||
|
// Save the shell so the error message can have somewhere to display
|
||||||
|
Shell shell = control.getShell();
|
||||||
// Lookup the tab item
|
// Lookup the tab item
|
||||||
CTabItem item = ConsoleManager.getInstance().findConsole(control);
|
CTabItem item = ConsoleManager.getInstance().findConsole(control);
|
||||||
if (item != null)
|
if (item != null)
|
||||||
|
@ -221,7 +224,7 @@ public class ProcessConnector extends AbstractStreamsConnector {
|
||||||
// Repackage into a more user friendly error
|
// Repackage into a more user friendly error
|
||||||
msg = NLS.bind(Messages.ProcessConnector_error_creatingProcess, settings.getImage(), msg);
|
msg = NLS.bind(Messages.ProcessConnector_error_creatingProcess, settings.getImage(), msg);
|
||||||
// Open an error dialog
|
// Open an error dialog
|
||||||
MessageDialog.openError(control.getShell(), Messages.ProcessConnector_error_title, msg);
|
MessageDialog.openError(shell, Messages.ProcessConnector_error_title, msg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue