Bug 378184 - [Compatibility] Part with custom title image loses the image after drop
diff --git a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/SWTPartRenderer.java b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/SWTPartRenderer.java
index bacf1e4..4deccaf 100644
--- a/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/SWTPartRenderer.java
+++ b/bundles/org.eclipse.e4.ui.workbench.renderers.swt/src/org/eclipse/e4/ui/workbench/renderers/swt/SWTPartRenderer.java
@@ -16,6 +16,7 @@
 import org.eclipse.e4.core.contexts.IEclipseContext;
 import org.eclipse.e4.core.services.log.Logger;
 import org.eclipse.e4.ui.internal.workbench.swt.AbstractPartRenderer;
+import org.eclipse.e4.ui.model.application.MApplicationElement;
 import org.eclipse.e4.ui.model.application.ui.MElementContainer;
 import org.eclipse.e4.ui.model.application.ui.MUIElement;
 import org.eclipse.e4.ui.model.application.ui.MUILabel;
@@ -167,6 +168,14 @@
 	}
 
 	protected Image getImage(MUILabel element) {
+		if (element instanceof MApplicationElement) {
+			Object image = ((MApplicationElement) element).getTransientData()
+					.get(IPresentationEngine.OVERRIDE_ICON_IMAGE_KEY);
+			if (image instanceof Image && !((Image) image).isDisposed()) {
+				return (Image) image;
+			}
+		}
+
 		IEclipseContext localContext = context;
 		String iconURI = element.getIconURI();
 		if (iconURI != null && iconURI.length() > 0) {