diff --git a/bundles/com.espressif.idf.ui/src/com/espressif/idf/ui/handlers/RunActionHandler.java b/bundles/com.espressif.idf.ui/src/com/espressif/idf/ui/handlers/RunActionHandler.java index dd87f1e17..2aa14522b 100644 --- a/bundles/com.espressif.idf.ui/src/com/espressif/idf/ui/handlers/RunActionHandler.java +++ b/bundles/com.espressif.idf.ui/src/com/espressif/idf/ui/handlers/RunActionHandler.java @@ -48,12 +48,23 @@ public Object execute(ExecutionEvent event) throws ExecutionException { ILaunchBarManager launchBarManager = UIPlugin.getService(ILaunchBarManager.class); new StopLaunchBuildHandler().stop(); + ILaunchConfiguration config = launchBarManager.getActiveLaunchConfiguration(); if (config == null) { return Status.OK_STATUS; } + boolean isEspLaunchConfig = config.getType().getIdentifier() + .contentEquals(IDFLaunchConstants.RUN_LAUNCH_CONFIG_TYPE); + boolean isEspDebugConfig = config.getType().getIdentifier() + .contentEquals(IDFLaunchConstants.DEBUG_LAUNCH_CONFIG_TYPE); + + if (!isEspLaunchConfig && !isEspDebugConfig) + { + return super.execute(event); + } + ILaunchMode launchMode = launchBarManager.getActiveLaunchMode(); if (launchMode == null) { @@ -74,8 +85,7 @@ public Object execute(ExecutionEvent event) throws ExecutionException } return Status.CANCEL_STATUS; } - if (launchMode.getIdentifier().equals(ILaunchManager.DEBUG_MODE) - && config.getType().getIdentifier().contentEquals(IDFLaunchConstants.RUN_LAUNCH_CONFIG_TYPE)) + if (launchMode.getIdentifier().equals(ILaunchManager.DEBUG_MODE) && isEspLaunchConfig) { List suitableDescNames = findSuitableDescNames(projectName, IDFLaunchConstants.DEBUG_LAUNCH_CONFIG_TYPE); @@ -86,8 +96,7 @@ public Object execute(ExecutionEvent event) throws ExecutionException } returnCode = runActionBasedOnDescCount(launchBarManager, suitableDescNames); } - else if (launchMode.getIdentifier().equals(ILaunchManager.RUN_MODE) - && config.getType().getIdentifier().contentEquals(IDFLaunchConstants.DEBUG_LAUNCH_CONFIG_TYPE)) + else if (launchMode.getIdentifier().equals(ILaunchManager.RUN_MODE) && isEspDebugConfig) { List suitableDescNames = findSuitableDescNames(projectName, IDFLaunchConstants.RUN_LAUNCH_CONFIG_TYPE);