Rather than special caseing: + else { + String sysroot = DbgVariables.getStringValue("SYSROOT"); + if (sysroot.length() > 0) { + File parent = new File(sysroot); + f = new File(parent, dwflLine.getSourceFile()); + } + } the code can be constructed so that there is always a sysroot (a Sysroot object?) and anything needing to resolve a path can use that to do it.
* DebugInfoFrame.java (getLine): Get sysroot via DwflCache.getSysroot. * DwflCache.java (Mod.sysroot): New. (sysrootMap): New. (getDwfl): Set Mod.sysroot. (setSysroot): New. (getSysroot): New. * DbgVariables.java (DbgVariables): Remove SYSROOT.