mirror of
https://github.com/openmoh/openmohaa.git
synced 2025-04-29 06:07:57 +03:00
Fix whole script file being printed sometimes on error
This commit is contained in:
parent
5ba6c006c2
commit
0d01ea939d
2 changed files with 7 additions and 4 deletions
|
@ -69,7 +69,7 @@ bool AbstractScript::GetSourceAt(size_t sourcePos, str *sourceLine, int& column,
|
||||||
for (i = 0; i < ARRAY_LEN(cachedInfo); i++) {
|
for (i = 0; i < ARRAY_LEN(cachedInfo); i++) {
|
||||||
sourceinfo_t *info = &cachedInfo[i];
|
sourceinfo_t *info = &cachedInfo[i];
|
||||||
|
|
||||||
if (sourcePos > info->sourcePos && (!minCachedInfo || info->sourcePos > minCachedInfo->sourcePos)) {
|
if (info->line && sourcePos > info->sourcePos && (!minCachedInfo || info->sourcePos > minCachedInfo->sourcePos)) {
|
||||||
minCachedInfo = info;
|
minCachedInfo = info;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -78,6 +78,7 @@ bool AbstractScript::GetSourceAt(size_t sourcePos, str *sourceLine, int& column,
|
||||||
start = minCachedInfo->sourcePos;
|
start = minCachedInfo->sourcePos;
|
||||||
line = minCachedInfo->line;
|
line = minCachedInfo->line;
|
||||||
column = minCachedInfo->column;
|
column = minCachedInfo->column;
|
||||||
|
posLine = minCachedInfo->startLinePos;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -107,9 +108,10 @@ bool AbstractScript::GetSourceAt(size_t sourcePos, str *sourceLine, int& column,
|
||||||
|
|
||||||
*p = old_token;
|
*p = old_token;
|
||||||
|
|
||||||
cachedInfo[cachedInfoIndex].sourcePos = sourcePos;
|
cachedInfo[cachedInfoIndex].sourcePos = sourcePos;
|
||||||
cachedInfo[cachedInfoIndex].line = line;
|
cachedInfo[cachedInfoIndex].line = line;
|
||||||
cachedInfo[cachedInfoIndex].column = column;
|
cachedInfo[cachedInfoIndex].column = column;
|
||||||
|
cachedInfo[cachedInfoIndex].startLinePos = posLine;
|
||||||
cachedInfoIndex = (cachedInfoIndex + 1) % ARRAY_LEN(cachedInfo);
|
cachedInfoIndex = (cachedInfoIndex + 1) % ARRAY_LEN(cachedInfo);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -41,6 +41,7 @@ typedef struct {
|
||||||
|
|
||||||
struct sourceinfo_t {
|
struct sourceinfo_t {
|
||||||
unsigned int sourcePos;
|
unsigned int sourcePos;
|
||||||
|
unsigned int startLinePos;
|
||||||
int column;
|
int column;
|
||||||
int line;
|
int line;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue