Project: Eclipse_Platform_UI
Bug 231636 [DynamicUI] Installing releng tools dynamically results in preference page in the property dialog
Reported: 2008-05-12 14:55:27 | Status: verified fixed

3.4 M7 1) Open the properties dialog (ensuring the properties cache is established) 2) install the releng tools via P2 3) Open the properties dialog and note that the Copyright preference page is now there. 4) click on it and note the CCE. The problem is that the baseclass for the properties page reader (ObjectContributorManager) hooks a listener into the extension tracker without a filter. This means that any new extension that comes into the system will be handled by each of the subclases of this manager (causing no end of grief I would imagine). One particular type of grief is this bug. The property page manager responds to incoming extension from the releng bundle, discarding most except for the preference page extension. This extension has a syntax very similar to that of the property page and as a result we accept the copyright preference page as a property page(!). We should be adding the listener for each registry type with an appropriate filter to preclude extensions we aren't interested in.

Files changed in fix:
bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectActionContributorManager.java bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ObjectContributorManager.java bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/decorators/LightweightDecoratorManager.java bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyPageContributorManager.java