diff options
| author | Vikas Chandra | 2016-07-05 09:57:31 +0000 |
|---|---|---|
| committer | Vikas Chandra | 2016-07-05 09:57:31 +0000 |
| commit | 5256f11f769c968aec010731c541430bc9493557 (patch) | |
| tree | f3da168a79d7a34eb2afa6eac8dc24967365a74a | |
| parent | 91057909622705d35b95a262fb8492c54c8554a6 (diff) | |
| download | eclipse.pde.ui-5256f11f769c968aec010731c541430bc9493557.tar.gz eclipse.pde.ui-5256f11f769c968aec010731c541430bc9493557.tar.xz eclipse.pde.ui-5256f11f769c968aec010731c541430bc9493557.zip | |
( comment 9 of ) Bug 475797 - [patch] Target platform misses bundle
after version of workspace bundle gets changed
| -rw-r--r-- | ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java index 86acef46f2..7be11846da 100644 --- a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java +++ b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PluginModelManager.java @@ -925,8 +925,25 @@ public class PluginModelManager implements IModelProviderListener { break; } } - if (isActive) - fState.addBundle(model, true); + if (isActive) { + // refresh everything related to this bundle model id + fEntries.remove(newID); + fState.removeBundleDescription(desc); + for (int i = 0; i < fExternalManager.getAllModels().length; i++) { + IPluginModelBase modelExternal = fExternalManager.getAllModels()[i]; + if (modelExternal.getPluginBase().getId().equals(newID)) { + addToTable(fEntries, new IPluginModelBase[] { modelExternal }); + } + } + IPluginModelBase[] models = fWorkspaceManager.getPluginModels(); + for (int i = 0; i < models.length; i++) { + IPluginModelBase modelWorkspace = models[i]; + if (modelWorkspace.getPluginBase().getId().equals(newID)) { + addToTable(fEntries, new IPluginModelBase[] { modelWorkspace }); + addWorkspaceBundleToState(fEntries, modelWorkspace); + } + } + } } else // if the target plug-in has become disabled/unchecked, remove its bundle // description from the state |
