Skip to content

Commit 9958258

Browse files
committed
show error if string literal is followed by non-quote entity-ref
1 parent 0351cf7 commit 9958258

File tree

1 file changed

+17
-9
lines changed

1 file changed

+17
-9
lines changed

src/xsltTokenDiagnostics.ts

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -839,11 +839,15 @@ export class XsltTokenDiagnostics {
839839
case XSLTokenLevelState.entityRef:
840840
let entityName = XsltTokenDiagnostics.getTextForToken(lineNumber, token, document);
841841
let validationResult;
842-
({ validationResult, entityName } = XsltTokenDiagnostics.validateEntityRef(entityName, dtdEnded, inheritedPrefixes));
843-
if (validationResult !== NameValidationError.None){
844-
token['error'] = ErrorType.EntityName;
845-
token['value'] = entityName;
842+
if (token.error) {
846843
problemTokens.push(token);
844+
} else {
845+
({ validationResult, entityName } = XsltTokenDiagnostics.validateEntityRef(entityName, dtdEnded, inheritedPrefixes));
846+
if (validationResult !== NameValidationError.None){
847+
token['error'] = ErrorType.EntityName;
848+
token['value'] = entityName;
849+
problemTokens.push(token);
850+
}
847851
}
848852
case XSLTokenLevelState.processingInstrValue:
849853
if (isXMLDeclaration) {
@@ -1320,12 +1324,16 @@ export class XsltTokenDiagnostics {
13201324
}
13211325
break;
13221326
case TokenLevelState.entityRef:
1323-
let validationResult, entityName;
1324-
({ validationResult, entityName } = XsltTokenDiagnostics.validateEntityRef(token.value, dtdEnded, inheritedPrefixes));
1325-
if (validationResult !== NameValidationError.None){
1326-
token['error'] = ErrorType.EntityName;
1327-
token['value'] = entityName;
1327+
if (token.error) {
13281328
problemTokens.push(token);
1329+
} else {
1330+
let validationResult, entityName;
1331+
({ validationResult, entityName } = XsltTokenDiagnostics.validateEntityRef(token.value, dtdEnded, inheritedPrefixes));
1332+
if (validationResult !== NameValidationError.None){
1333+
token['error'] = ErrorType.EntityName;
1334+
token['value'] = entityName;
1335+
problemTokens.push(token);
1336+
}
13291337
}
13301338
break;
13311339
}

0 commit comments

Comments
 (0)