Avoid double-translation of positions (?)
This commit is contained in:
parent
a761e7a5b7
commit
8a51e87f38
|
@ -55,20 +55,22 @@ const boot: tslib.server.PluginModuleFactory = ({ typescript: ts }) => {
|
|||
span(s: undefined): undefined;
|
||||
span(s: ts.TextSpan | undefined): ts.TextSpan | undefined;
|
||||
span(s: ts.TextSpan | undefined): ts.TextSpan | undefined {
|
||||
if (s !== void 0) {
|
||||
if (s !== void 0 && !('__syndicate_translated__' in s)) {
|
||||
const newStart = this.loc(s.start);
|
||||
if (newStart === void 0) throw new Error("Source position unavailable for TextSpan " + JSON.stringify(s));
|
||||
s.start = newStart;
|
||||
(s as any).__syndicate_translated__ = true;
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
diagnostic<T extends ts.Diagnostic>(d: T, ds: T[]) {
|
||||
if (d.start !== void 0) {
|
||||
if (d.start !== void 0 && !('__syndicate_translated__' in d)) {
|
||||
const p = this.info.targetToSourceMap.get(d.start);
|
||||
if (p === null) return;
|
||||
if (p.firstItem.synthetic) return;
|
||||
d.start = p.firstItem.start.pos + p.offset;
|
||||
(d as any).__syndicate_translated__ = true;
|
||||
}
|
||||
ds.push(d);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue