diff options
-rw-r--r-- | bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/StatusPart.java | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/StatusPart.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/StatusPart.java index 3edea87c613..0c6347fb733 100644 --- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/StatusPart.java +++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/part/StatusPart.java @@ -12,11 +12,12 @@ package org.eclipse.ui.internal.part; import java.io.PrintWriter; import java.io.StringWriter; - import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IStatus; import org.eclipse.jface.dialogs.IDialogConstants; import org.eclipse.swt.SWT; +import org.eclipse.swt.events.DisposeEvent; +import org.eclipse.swt.events.DisposeListener; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; import org.eclipse.swt.graphics.Color; @@ -206,8 +207,13 @@ public class StatusPart { } } }); - button.setImage(descriptor.getImageDescriptor().createImage()); - button - .setToolTipText(WorkbenchMessages.ErrorLogUtil_ShowErrorLogTooltip); + final Image image = descriptor.getImageDescriptor().createImage(); + button.setImage(image); + button.setToolTipText(WorkbenchMessages.ErrorLogUtil_ShowErrorLogTooltip); + button.addDisposeListener(new DisposeListener() { + public void widgetDisposed(DisposeEvent e) { + image.dispose(); + } + }); } } |