1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-08-19 22:25:52 +02:00

[244230] NPE when using SystemRegistry.getSubsystem(String)

This commit is contained in:
David Dykstal 2008-08-14 19:21:19 +00:00
parent 010cdc73c0
commit 4ec2655237
2 changed files with 10 additions and 12 deletions

View file

@ -274,10 +274,10 @@ public interface ISystemRegistry extends ISchedulingRule, IAdaptable, ISystemVie
/**
* Resolve a subsystem from it's absolute name
*
* The absolute name of a subsystem
* is denoted by <I>profileName</I>.<I>connectionName</I>:<I>subsystemConfigurationId</I>
* @param absoluteSubSystemName the name of the subsystem
*
* @return the subsystem
* @return the subsystem or null if the profile, connection, or subsystem configuration cannot be found.
*/
public ISubSystem getSubSystem(String absoluteSubSystemName);

View file

@ -785,16 +785,12 @@ public class SystemRegistry implements ISystemRegistry
return result;
}
/**
* Resolve a subsystem from it's absolute name. The absolute name of a subsystem
* is denoted by <I>profileName</I>.<I>connectionName</I>:<I>subsystemConfigurationId</I>
*
* @param absoluteSubSystemName the name of the subsystem
*
* @return the subsystem
/* (non-Javadoc)
* @see org.eclipse.rse.core.model.ISystemRegistry#getSubSystem(java.lang.String)
*/
public ISubSystem getSubSystem(String absoluteSubSystemName)
{
ISubSystem result = null;
// first extract subsystem id
int profileDelim = absoluteSubSystemName.indexOf("."); //$NON-NLS-1$
int connectionDelim = absoluteSubSystemName.indexOf(":", profileDelim + 1); //$NON-NLS-1$
@ -806,10 +802,12 @@ public class SystemRegistry implements ISystemRegistry
String srcSubSystemConfigurationId = absoluteSubSystemName.substring(connectionDelim + 1, absoluteSubSystemName.length());
ISystemProfile profile = getSystemProfile(srcProfileName);
return getSubSystem(profile, srcConnectionName, srcSubSystemConfigurationId);
if (profile != null) {
result = getSubSystem(profile, srcConnectionName, srcSubSystemConfigurationId);
}
}
return null;
return result;
}
/**