Steps to reproduce
From a fresh installation and clean workspace:
see groovy/groovy-eclipse#1660
When groovy bundles are refreshed to select a specific one, a property tester is part of that refresh. The next request to org.eclipse.core.internal.expressions.TypeExtensionManager#loadTesters fails with org.eclipse.core.runtime.InvalidRegistryObjectException.
The tester loader loop already catches CoreException and substitutes a null tester plus logs. I think this loop could also catch InvalidRegistryObjectException.
|
result[i]= new PropertyTesterDescriptor(config); |
IPropertyTester[] result= new IPropertyTester[typeConfigs.size()];
for (int i= 0; i < result.length; i++) {
IConfigurationElement config= typeConfigs.get(i);
try {
result[i]= new PropertyTesterDescriptor(config);
} catch (CoreException e) {
ILog.of(TypeExtensionManager.class).log(e.getStatus());
result[i]= NULL_PROPERTY_TESTER;
} catch (InvalidRegistryObjectException e) { // NEW
ILog.of(TypeExtensionManager.class).log(...);
result[i]= NULL_PROPERTY_TESTER;
}
}
Community
Steps to reproduce
From a fresh installation and clean workspace:
see groovy/groovy-eclipse#1660
When groovy bundles are refreshed to select a specific one, a property tester is part of that refresh. The next request to
org.eclipse.core.internal.expressions.TypeExtensionManager#loadTestersfails withorg.eclipse.core.runtime.InvalidRegistryObjectException.The tester loader loop already catches
CoreExceptionand substitutes a null tester plus logs. I think this loop could also catchInvalidRegistryObjectException.eclipse.platform/runtime/bundles/org.eclipse.core.expressions/src/org/eclipse/core/internal/expressions/TypeExtensionManager.java
Line 193 in d049690
Community