1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-22 06:02:11 +02:00

Bug 315461 - [launch] Invalid thread access exception during launch

This commit is contained in:
Ken Ryall 2010-06-03 17:19:19 +00:00
parent 912f531ec4
commit 8cf1d78978
2 changed files with 31 additions and 22 deletions

View file

@ -34,18 +34,22 @@ public class DsfDebugUITools {
* @since 2.1
*/
@SuppressWarnings("unchecked")
public static void enableActivity(String activityID, boolean enableit)
public static void enableActivity(final String activityID, final boolean enableit)
{
IWorkbenchActivitySupport workbenchActivitySupport = PlatformUI.getWorkbench().getActivitySupport();
IActivityManager activityManager = workbenchActivitySupport.getActivityManager();
Set<String> enabledActivityIds = new HashSet<String>(activityManager.getEnabledActivityIds());
boolean changed = false;
if (enableit)
changed = enabledActivityIds.add(activityID);
else
changed = enabledActivityIds.remove(activityID);
if (changed)
workbenchActivitySupport.setEnabledActivityIds(enabledActivityIds);
PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() {
public void run() {
IWorkbenchActivitySupport workbenchActivitySupport = PlatformUI.getWorkbench().getActivitySupport();
IActivityManager activityManager = workbenchActivitySupport.getActivityManager();
Set<String> enabledActivityIds = new HashSet<String>(activityManager.getEnabledActivityIds());
boolean changed = false;
if (enableit)
changed = enabledActivityIds.add(activityID);
else
changed = enabledActivityIds.remove(activityID);
if (changed)
workbenchActivitySupport.setEnabledActivityIds(enabledActivityIds);
}
});
}
}

View file

@ -122,18 +122,23 @@ public class LaunchUtils {
* @since 6.1
*/
@SuppressWarnings("unchecked")
public static void enableActivity(String activityID, boolean enableit)
public static void enableActivity(final String activityID, final boolean enableit)
{
IWorkbenchActivitySupport workbenchActivitySupport = PlatformUI.getWorkbench().getActivitySupport();
IActivityManager activityManager = workbenchActivitySupport.getActivityManager();
Set<String> enabledActivityIds = new HashSet<String>(activityManager.getEnabledActivityIds());
boolean changed = false;
if (enableit)
changed = enabledActivityIds.add(activityID);
else
changed = enabledActivityIds.remove(activityID);
if (changed)
workbenchActivitySupport.setEnabledActivityIds(enabledActivityIds);
PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable() {
public void run() {
IWorkbenchActivitySupport workbenchActivitySupport = PlatformUI.getWorkbench().getActivitySupport();
IActivityManager activityManager = workbenchActivitySupport.getActivityManager();
Set<String> enabledActivityIds = new HashSet<String>(activityManager.getEnabledActivityIds());
boolean changed = false;
if (enableit)
changed = enabledActivityIds.add(activityID);
else
changed = enabledActivityIds.remove(activityID);
if (changed)
workbenchActivitySupport.setEnabledActivityIds(enabledActivityIds);
}
});
}
}