diff --git a/rse/plugins/org.eclipse.rse.services.local/src/org/eclipse/rse/internal/services/local/shells/LocalShellThread.java b/rse/plugins/org.eclipse.rse.services.local/src/org/eclipse/rse/internal/services/local/shells/LocalShellThread.java index 1cdfff2f53c..4e9b1fe9aa4 100644 --- a/rse/plugins/org.eclipse.rse.services.local/src/org/eclipse/rse/internal/services/local/shells/LocalShellThread.java +++ b/rse/plugins/org.eclipse.rse.services.local/src/org/eclipse/rse/internal/services/local/shells/LocalShellThread.java @@ -1,5 +1,5 @@ /******************************************************************************** - * Copyright (c) 2002, 2006 IBM Corporation. All rights reserved. + * Copyright (c) 2002, 2006 IBM Corporation and others. All rights reserved. * This program and the accompanying materials are made available under the terms * of the Eclipse Public License v1.0 which accompanies this distribution, and is * available at http://www.eclipse.org/legal/epl-v10.html @@ -12,6 +12,7 @@ * * Contributors: * Javier Montalvo OrĂºs (Symbian) - 138619: Fix codepage on Win2K + * Lothar Werzinger (Tradescape) - 161838: Support terminating local shells ********************************************************************************/ package org.eclipse.rse.internal.services.local.shells; @@ -393,6 +394,8 @@ public class LocalShellThread extends Thread catch (IOException e) { System.out.println(e); + // make the thread exit; + _isShell = false; } } @@ -438,7 +441,7 @@ public class LocalShellThread extends Thread public boolean doThreadedWork() { - if (_stdInput == null) + if (_stdInput == null || _isShell == false) { return false; }