debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/AttachLaunchDelegate.java
branchRCL_2_1
changeset 404 d40ec9228b9c
parent 0 fb279309251b
equal deleted inserted replaced
386:1eb192be3ff4 404:d40ec9228b9c
   129 								// get processes on the device
   129 								// get processes on the device
   130 								OSProcess[] processesOnTarget = cwDebugSession.getTargetProcesses();
   130 								OSProcess[] processesOnTarget = cwDebugSession.getTargetProcesses();
   131 								
   131 								
   132 								// Ask user to choose a process
   132 								// Ask user to choose a process
   133 								String defaultProcessName = exeFile.getPath().removeFileExtension().lastSegment();
   133 								String defaultProcessName = exeFile.getPath().removeFileExtension().lastSegment();
   134 								OSProcess attachTarget = chooseProcessTarget(processesOnTarget, defaultProcessName);
   134 								OSProcess attachTarget = null;
       
   135 								String choosenProcessTarget = config.getAttribute(SettingsData.AttachToProcessDialog_Selection, "");
       
   136 								if (choosenProcessTarget.length() > 0) {
       
   137 									attachTarget = chooseProcessTargetNoUI(processesOnTarget, choosenProcessTarget);
       
   138 								} else {
       
   139 									attachTarget = chooseProcessTarget(processesOnTarget, defaultProcessName);									
       
   140 								}
   135 								
   141 								
   136 								if (attachTarget == null) {
   142 								if (attachTarget == null) {
   137 									this.cancel(LaunchMessages.getString("LocalAttachLaunchDelegate.No_Process_ID_selected"), 0); //$NON-NLS-1$
   143 									this.cancel(LaunchMessages.getString("LocalAttachLaunchDelegate.No_Process_ID_selected"), 0); //$NON-NLS-1$
   138 								} else {
   144 								} else {
   139 									String processName = attachTarget.parseProcess().getProcessName();
   145 									String processName = attachTarget.parseProcess().getProcessName();
   193 			}
   199 			}
   194 		});
   200 		});
   195 
   201 
   196 		return attachTarget;
   202 		return attachTarget;
   197 	}
   203 	}
       
   204 	
       
   205 	private OSProcess chooseProcessTargetNoUI(final OSProcess[] processesOnTarget, final String choosenProcessName) {
       
   206 		attachTarget = null;
       
   207 
       
   208 		for (OSProcess process : processesOnTarget) {
       
   209 			if (process.parseProcess().getProcessName().equals(choosenProcessName)) {
       
   210 				attachTarget = process;
       
   211 				break;
       
   212 			}
       
   213 		}
       
   214 
       
   215 		return attachTarget;
       
   216 	}
   198 }
   217 }