diff options
Diffstat (limited to 'src/modules.js')
-rw-r--r-- | src/modules.js | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/modules.js b/src/modules.js index 6b8d880a..e2509965 100644 --- a/src/modules.js +++ b/src/modules.js @@ -163,9 +163,20 @@ var Debugging = { getIdentifier: function(lineNum) { if (!this.on) return null; - var sourceFile = this.llvmLineToSourceFile[lineNum]; - if (!sourceFile) return null; - return sourceFile.split('/').slice(-1)[0] + ':' + this.llvmLineToSourceLine[lineNum]; + if (lineNum === undefined) { + lineNum = Framework.currItem.lineNum; + assert(lineNum !== undefined); + } + var approx = false; + var sourceFile; + while (lineNum >= 0) { + var sourceFile = this.llvmLineToSourceFile[lineNum]; + if (sourceFile) break; + lineNum--; + approx = true; + } + if (!sourceFile) return 'UNKNOWN'; + return sourceFile.split('/').slice(-1)[0] + ':' + (approx ? '~' : '') + this.llvmLineToSourceLine[lineNum]; } }; |