diff --git a/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionManagerImpl.java b/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionManagerImpl.java index ceed02546452..b835ae2d187c 100644 --- a/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/actionSystem/impl/ActionManagerImpl.java @@ -177,7 +177,16 @@ public final class ActionManagerImpl extends ActionManagerEx implements Disposab String iconPath = stub.getIconPath(); if (iconPath != null) { Class actionClass = anAction.getClass(); - setIconFromClass(actionClass, actionClass.getClassLoader(), iconPath, anAction.getTemplatePresentation(), stub.getPluginId()); + ClassLoader classLoader = actionClass.getClassLoader(); + + if (stub.getPluginId() != null) { + final IdeaPluginDescriptor plugin = PluginManager.getPlugin(stub.getPluginId()); + if (plugin != null) { + classLoader = plugin.getPluginClassLoader(); + } + } + + setIconFromClass(actionClass, classLoader, iconPath, anAction.getTemplatePresentation(), stub.getPluginId()); } }