From de324a5fca37889afba76c0b357ffb7034a67f89 Mon Sep 17 00:00:00 2001 From: Ken Gilmer Date: Sat, 25 Jun 2011 13:46:34 +0900 Subject: bitbake commander: fix invalid thread access exception. Change-Id: Ic0e07f91f88fff1ccd27ce88d986062b783b6ca2 --- .../bc/ui/actions/AbstractBitbakeCommandAction.java | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'org.openembedded.bc.ui/src/org/openembedded') diff --git a/org.openembedded.bc.ui/src/org/openembedded/bc/ui/actions/AbstractBitbakeCommandAction.java b/org.openembedded.bc.ui/src/org/openembedded/bc/ui/actions/AbstractBitbakeCommandAction.java index 4e93eee..406c887 100644 --- a/org.openembedded.bc.ui/src/org/openembedded/bc/ui/actions/AbstractBitbakeCommandAction.java +++ b/org.openembedded.bc.ui/src/org/openembedded/bc/ui/actions/AbstractBitbakeCommandAction.java @@ -25,8 +25,10 @@ import org.eclipse.jface.resource.JFaceResources; import org.eclipse.jface.viewers.ISelection; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.swt.graphics.Color; +import org.eclipse.swt.widgets.Display; import org.eclipse.ui.IWorkbenchWindow; import org.eclipse.ui.IWorkbenchWindowActionDelegate; +import org.eclipse.ui.PlatformUI; import org.eclipse.ui.console.MessageConsole; import org.eclipse.ui.console.MessageConsoleStream; import org.openembedded.bc.bitbake.BBLanguageHelper; @@ -105,11 +107,19 @@ public abstract class AbstractBitbakeCommandAction implements IWorkbenchWindowAc */ protected IStatus execCommands(String[] cmds, final IProgressMonitor monitor) { MessageConsole mc = bbs.getConsole(); - final MessageConsoleStream cmd = mc.newMessageStream(); - cmd.setColor(commandColor); + final MessageConsoleStream cmd = mc.newMessageStream(); final MessageConsoleStream out = mc.newMessageStream(); final MessageConsoleStream err = mc.newMessageStream(); - err.setColor(errorColor); + + PlatformUI.getWorkbench().getDisplay().syncExec(new Runnable() { + + @Override + public void run() { + cmd.setColor(commandColor); + err.setColor(errorColor); + } + }); + try { for (int i = 0; i < cmds.length; ++i) { -- cgit 1.2.3-korg