Bug 374421 - Infinite recursion if context provider is not set
diff --git a/bundles/org.eclipse.e4.core.contexts/src/org/eclipse/e4/core/internal/contexts/ContextObjectSupplier.java b/bundles/org.eclipse.e4.core.contexts/src/org/eclipse/e4/core/internal/contexts/ContextObjectSupplier.java
index c40770c..f9ff76c 100644
--- a/bundles/org.eclipse.e4.core.contexts/src/org/eclipse/e4/core/internal/contexts/ContextObjectSupplier.java
+++ b/bundles/org.eclipse.e4.core.contexts/src/org/eclipse/e4/core/internal/contexts/ContextObjectSupplier.java
@@ -217,7 +217,8 @@
 	static public ContextObjectSupplier getObjectSupplier(IEclipseContext context, IInjector injector) {
 		if (context == null)
 			return null;
-		ContextObjectSupplier supplier = context.getLocal(ContextObjectSupplier.class);
+		// don't track this dependency if we are called in RaT
+		ContextObjectSupplier supplier = (ContextObjectSupplier) ((EclipseContext) context).internalGet((EclipseContext) context, ContextObjectSupplier.class.getName(), true);
 		if (supplier != null)
 			return supplier;
 		ContextObjectSupplier objectSupplier = new ContextObjectSupplier(context, injector);