From 516c3525c1254f36cf65154ee210e69dc12c63bd Mon Sep 17 00:00:00 2001 From: Martin Oberhuber < martin.oberhuber@windriver.com> Date: Tue, 10 Nov 2009 11:19:33 +0000 Subject: [PATCH] Bug 294719 - [terminal] SWT Widget disposed exception can happen in TerminalActionPaste::updateAction --- .../internal/terminal/control/actions/TerminalActionPaste.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/terminal/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/control/actions/TerminalActionPaste.java b/terminal/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/control/actions/TerminalActionPaste.java index 9f13b82ddf4..f79dd232478 100644 --- a/terminal/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/control/actions/TerminalActionPaste.java +++ b/terminal/org.eclipse.tm.terminal/src/org/eclipse/tm/internal/terminal/control/actions/TerminalActionPaste.java @@ -15,6 +15,7 @@ * Martin Oberhuber (Wind River) - fixed copyright headers and beautified * Anna Dushistova (MontaVista) - [227537] moved actions from terminal.view to terminal plugin * Uwe Stieber (Wind River) - [260372] [terminal] Certain terminal actions are enabled if no target terminal control is available + * Uwe Stieber (Wind River) - [294719] [terminal] SWT Widget disposed in TerminalActionPaste *******************************************************************************/ package org.eclipse.tm.internal.terminal.control.actions; @@ -52,7 +53,7 @@ public class TerminalActionPaste extends AbstractTerminalAction { public void updateAction(boolean aboutToShow) { ITerminalViewControl target = getTarget(); - boolean bEnabled = target != null; + boolean bEnabled = aboutToShow && target != null && target.getClipboard() != null && !target.getClipboard().isDisposed(); if (bEnabled) { String strText = (String) target.getClipboard().getContents( TextTransfer.getInstance());