From 950f133f77d2f390e9a069015aa4c64e776a9d03 Mon Sep 17 00:00:00 2001 From: Martin Oberhuber Date: Thu, 18 Aug 2011 11:42:02 -0400 Subject: [PATCH] bug 345750: [Scanner Discovery] Per File Build output parser misses includes with drive-relative paths when sources are behind a linked resource --- .../gnu/GCCPerFileBOPConsoleParserUtility.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java index a29caeb42a8..2c331364dad 100644 --- a/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java +++ b/build/org.eclipse.cdt.make.core/src/org/eclipse/cdt/make/internal/core/scannerconfig/gnu/GCCPerFileBOPConsoleParserUtility.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2004, 2010 IBM Corporation and others. + * Copyright (c) 2004, 2011 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -10,6 +10,7 @@ * Martin Oberhuber (Wind River Systems) - bug 155096 * Gerhard Schaber (Wind River Systems) * Markus Schorn (Wind River Systems) + * Martin Oberhuber (Wind River) - bug 345750: discover drive-relative paths *******************************************************************************/ package org.eclipse.cdt.make.internal.core.scannerconfig.gnu; @@ -223,6 +224,14 @@ public class GCCPerFileBOPConsoleParserUtility extends AbstractGCCBOPConsolePars * @return filePath : IPath - not null */ public IPath getAbsolutePath(String filePath) { + IPath p = getAbsolutePath2(filePath); + if (p.getDevice()==null) { + p = p.setDevice(getWorkingDirectory().getDevice()); + } + return p; + } + + private IPath getAbsolutePath2(String filePath) { IPath pFilePath; if (filePath.startsWith("/")) { //$NON-NLS-1$ return convertCygpath(new Path(filePath));