From d02d7eb162e6b3b34c95f2fcd1798807e9c1b391 Mon Sep 17 00:00:00 2001 From: Kushal Munir < kmunir@ca.ibm.com> Date: Wed, 4 Oct 2006 14:39:45 +0000 Subject: [PATCH] Bug 158530: NullPointerException if dstore fails to connect. This applies to both remote file and processes subsystems. Although the user does not see any messages as a result, we should not get null pointer exceptions. Solution is to handle the case of not being connected when resolving filters. --- .../files/core/subsystems/RemoteFileSubSystem.java | 5 +++++ .../core/subsystem/impl/RemoteProcessSubSystemImpl.java | 4 ++++ 2 files changed, 9 insertions(+) diff --git a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java index 3dbb5e92875..2b6d84ebdf0 100644 --- a/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java +++ b/rse/plugins/org.eclipse.rse.subsystems.files.core/src/org/eclipse/rse/subsystems/files/core/subsystems/RemoteFileSubSystem.java @@ -392,6 +392,11 @@ public abstract class RemoteFileSubSystem extends SubSystem implements IRemoteFi throws java.lang.reflect.InvocationTargetException, java.lang.InterruptedException { + + if (!isConnected()) { + return null; + } + Object[] children = null; Vector vChildren = new Vector(); Vector vMessages = new Vector(); diff --git a/rse/plugins/org.eclipse.rse.subsystems.processes.core/src/org/eclipse/rse/subsystems/processes/core/subsystem/impl/RemoteProcessSubSystemImpl.java b/rse/plugins/org.eclipse.rse.subsystems.processes.core/src/org/eclipse/rse/subsystems/processes/core/subsystem/impl/RemoteProcessSubSystemImpl.java index 0e82956bd4c..8ab65c7c3bd 100644 --- a/rse/plugins/org.eclipse.rse.subsystems.processes.core/src/org/eclipse/rse/subsystems/processes/core/subsystem/impl/RemoteProcessSubSystemImpl.java +++ b/rse/plugins/org.eclipse.rse.subsystems.processes.core/src/org/eclipse/rse/subsystems/processes/core/subsystem/impl/RemoteProcessSubSystemImpl.java @@ -123,6 +123,10 @@ public abstract class RemoteProcessSubSystemImpl extends SubSystem implements throws InvocationTargetException, InterruptedException { + if (!isConnected()) { + return null; + } + HostProcessFilterImpl rpf = new HostProcessFilterImpl(filterString); IRemoteProcessContext context = new RemoteProcessContext(this, null, rpf); IRemoteProcess[] ps = null;