|
Lines 55-60
Link Here
|
| 55 |
|
55 |
|
| 56 |
private final static String SHELL_SERVICE = "shell.service"; //$NON-NLS-1$ |
56 |
private final static String SHELL_SERVICE = "shell.service"; //$NON-NLS-1$ |
| 57 |
private final static String FILE_SERVICE = "file.service"; //$NON-NLS-1$ |
57 |
private final static String FILE_SERVICE = "file.service"; //$NON-NLS-1$ |
|
|
58 |
private final static String EXIT_CMD = "exit"; //$NON-NLS-1$ |
| 59 |
private final static String CMD_DELIMITER = ";"; //$NON-NLS-1$ |
| 58 |
|
60 |
|
| 59 |
/* |
61 |
/* |
| 60 |
* (non-Javadoc) |
62 |
* (non-Javadoc) |
|
Lines 259-266
Link Here
|
| 259 |
|
261 |
|
| 260 |
protected Process remoteShellExec(ILaunchConfiguration config, String remoteCommandPath, |
262 |
protected Process remoteShellExec(ILaunchConfiguration config, String remoteCommandPath, |
| 261 |
String arguments) throws CoreException { |
263 |
String arguments) throws CoreException { |
| 262 |
String remote_command = arguments == null ? spaceEscapify(remoteCommandPath) : |
264 |
// The exit command is called to force the remote shell to close after our command |
|
|
265 |
// is executed. This is to prevent a running process at the end of the debug session. |
| 266 |
// See Bug 158786. |
| 267 |
String real_remote_command = arguments == null ? spaceEscapify(remoteCommandPath) : |
| 263 |
spaceEscapify(remoteCommandPath) + " " + arguments; //$NON-NLS-1$ |
268 |
spaceEscapify(remoteCommandPath) + " " + arguments; //$NON-NLS-1$ |
|
|
269 |
String remote_command = real_remote_command + CMD_DELIMITER + EXIT_CMD; |
| 270 |
|
| 264 |
IShellService shellService = (IShellService) getConnectedRemoteService(config, SHELL_SERVICE); |
271 |
IShellService shellService = (IShellService) getConnectedRemoteService(config, SHELL_SERVICE); |
| 265 |
|
272 |
|
| 266 |
// This is necessary because runCommand does not actually run the command right now. |
273 |
// This is necessary because runCommand does not actually run the command right now. |