Merge commit
authorEd Swartz <ed.swartz@nokia.com>
Tue, 06 Jul 2010 13:43:56 -0500
changeset 1579 bbceeefede97
parent 1578 07cfb1a5f33f (current diff)
parent 1576 ceccb3d7ade9 (diff)
child 1583 5562fcf06df5
Merge commit
--- a/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/error/parsers/SBSv2ErrorParser.java	Tue Jul 06 13:43:39 2010 -0500
+++ b/builder/com.nokia.carbide.cdt.builder/src/com/nokia/carbide/cdt/internal/builder/error/parsers/SBSv2ErrorParser.java	Tue Jul 06 13:43:56 2010 -0500
@@ -16,11 +16,17 @@
 */
 package com.nokia.carbide.cdt.internal.builder.error.parsers;
 
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
 import org.eclipse.cdt.core.ErrorParserManager;
 import org.eclipse.cdt.core.IMarkerGenerator;
+import org.eclipse.core.runtime.Path;
 
 public class SBSv2ErrorParser extends CarbideBaseErrorParser {
 
+	private final Pattern msgPattern = Pattern.compile("(.*):(\\d*):(\\d*):(.*)"); //$NON-NLS-1$
+
 	public SBSv2ErrorParser() {
 	}
 
@@ -57,7 +63,7 @@
 			
 			String text = line.substring(descStart, descEnd);
 			if (setFirstColon(text)) {
-				if (setFileNameAndLineNumber(text)) {
+				if (setFileNameAndLineNumber(text) || setSBSv2FileNameAndLineNumber(text)) {
 					setFile(errorParserManager);
 					setDescription(text);
 					errorParserManager.generateExternalMarker(msgIFile, msgLineNumber, msgDescription, severity, null, externalFilePath);
@@ -80,4 +86,21 @@
 		}
 	}
 
+	protected boolean setSBSv2FileNameAndLineNumber(String line) {
+		// Get the first Substring, which must be in the form of
+		// "fileName:line number:postion"
+		String firstSubstr = line.substring(msgFirstColon + 1).trim();
+		if (firstSubstr != null) {
+			Matcher matcher = msgPattern.matcher(firstSubstr);
+			if (matcher.matches()) {
+				msgFileName = matcher.group(1);
+				if (!Path.EMPTY.isValidPath(msgFileName)) {
+					return false;
+				}
+				msgLineNumber = Integer.parseInt(matcher.group(2));
+				return true;
+			}
+		}
+		return false;
+	}
 }
--- a/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/AbstractSymbianLaunchShortcut.java	Tue Jul 06 13:43:39 2010 -0500
+++ b/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/AbstractSymbianLaunchShortcut.java	Tue Jul 06 13:43:56 2010 -0500
@@ -157,7 +157,6 @@
 			public void run() {
 				final boolean[] event = { false };
 				Listener listener = new Listener() {
-					@Override
 					public void handleEvent(Event arg0) {
 						if ((arg0.stateMask & SWT.SHIFT) != 0 || arg0.keyCode == SWT.SHIFT)
 							pressed[0] = true;
--- a/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/LaunchPlugin.java	Tue Jul 06 13:43:39 2010 -0500
+++ b/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/LaunchPlugin.java	Tue Jul 06 13:43:56 2010 -0500
@@ -222,20 +222,19 @@
 	}
 	
 	private boolean getExePathsFromProjectAndDetermineIfX86(IProject project, List<IPath> exePaths) {
+		// changed logic to allow paths for executables for !isExecutable(path) for non-x86
+		// this allows new plug-and-play wizard to create attach configs for imported dlls (see bug 11444)
 		boolean isX86 = false;
         ICProject cProject = CoreModel.getDefault().create(project);
         if (cProject != null) {
 			try {
     			for (IBinary bin : cProject.getBinaryContainer().getBinaries()) {
-    				if (bin.isExecutable()) {
-    					IPath path = bin.getResource().getLocation();
-    					
-    					if (isEmulatorBinaryPath(path)) {
-							isX86 = true;
-						}
+					IPath path = bin.getResource().getLocation();
+					
+					isX86 = isX86 || isEmulatorBinaryPath(path); // only check once
 
+    				if (!isX86 || bin.isExecutable())
     					exePaths.add(path);
-    				}
     			}
 			} catch (CModelException e) {
 				log(e);
--- a/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/newwizard/DebugRunProcessSection.java	Tue Jul 06 13:43:39 2010 -0500
+++ b/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/newwizard/DebugRunProcessSection.java	Tue Jul 06 13:43:56 2010 -0500
@@ -76,7 +76,7 @@
 		}
 		
 		if (data.getExeSelection().equals(EExeSelection.ATTACH_TO_PROCESS)) {
-			data.setInstallPackage(true);
+			data.setInstallPackage(false);
 		} else {
 			Boolean detectedSysTrk = data.isSysTRKConnection(); // TRUE, FALSE, or null
 			boolean isSysTrk = detectedSysTrk == Boolean.TRUE || (detectedSysTrk == null && data.isInternalLayout());