|
Lines 41-46
Link Here
|
| 41 |
import org.eclipse.core.runtime.CoreException; |
41 |
import org.eclipse.core.runtime.CoreException; |
| 42 |
import org.eclipse.core.runtime.IProgressMonitor; |
42 |
import org.eclipse.core.runtime.IProgressMonitor; |
| 43 |
import org.eclipse.core.runtime.IStatus; |
43 |
import org.eclipse.core.runtime.IStatus; |
|
|
44 |
import org.eclipse.core.runtime.Platform; |
| 44 |
import org.eclipse.core.runtime.Status; |
45 |
import org.eclipse.core.runtime.Status; |
| 45 |
import org.eclipse.core.runtime.jobs.ISchedulingRule; |
46 |
import org.eclipse.core.runtime.jobs.ISchedulingRule; |
| 46 |
import org.eclipse.core.runtime.jobs.Job; |
47 |
import org.eclipse.core.runtime.jobs.Job; |
|
Lines 1327-1333
Link Here
|
| 1327 |
String hostPath = (String) attributes.get(ICBreakpoint.SOURCE_HANDLE); |
1328 |
String hostPath = (String) attributes.get(ICBreakpoint.SOURCE_HANDLE); |
| 1328 |
|
1329 |
|
| 1329 |
if (hostPath != null) { |
1330 |
if (hostPath != null) { |
| 1330 |
ISourceLookupDMContext srcDmc = DMContexts.getAncestorOfType(dmc, ISourceLookupDMContext.class); |
1331 |
|
|
|
1332 |
// For Windows, specifying the full path does not work well with GDB. |
| 1333 |
// In that case, we only specify the file name and live with the |
| 1334 |
// scalability issues. |
| 1335 |
// See bug232415 |
| 1336 |
String os = Platform.getOS(); |
| 1337 |
if (os.startsWith("win")) { //$NON-NLS-1$ |
| 1338 |
int filenameStartIndex = hostPath.lastIndexOf('\\'); |
| 1339 |
filenameStartIndex += filenameStartIndex == 0 ? 0 : 1; |
| 1340 |
attributes.put(ATTR_DEBUGGER_PATH, hostPath.substring(filenameStartIndex)); |
| 1341 |
rm.done(); |
| 1342 |
return; |
| 1343 |
} |
| 1344 |
|
| 1345 |
ISourceLookupDMContext srcDmc = DMContexts.getAncestorOfType(dmc, ISourceLookupDMContext.class); |
| 1331 |
if (srcDmc != null) { |
1346 |
if (srcDmc != null) { |
| 1332 |
fSourceLookup.getDebuggerPath(srcDmc, hostPath, |
1347 |
fSourceLookup.getDebuggerPath(srcDmc, hostPath, |
| 1333 |
new DataRequestMonitor<String>(getExecutor(), rm) { |
1348 |
new DataRequestMonitor<String>(getExecutor(), rm) { |