From da5cd251bef4cf82ec9df5fbaba5e8b9e2b9c625 Mon Sep 17 00:00:00 2001 From: Napalys Klicius Date: Thu, 12 Jun 2025 14:25:00 +0200 Subject: [PATCH] Update javascript/ql/src/LanguageFeatures/TemplateSyntaxInStringLiteral.ql Co-Authored-By: Asger F <316427+asgerf@users.noreply.github.com> --- .../ql/src/LanguageFeatures/TemplateSyntaxInStringLiteral.ql | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/javascript/ql/src/LanguageFeatures/TemplateSyntaxInStringLiteral.ql b/javascript/ql/src/LanguageFeatures/TemplateSyntaxInStringLiteral.ql index 566a513bca0..4dd91b143dc 100644 --- a/javascript/ql/src/LanguageFeatures/TemplateSyntaxInStringLiteral.ql +++ b/javascript/ql/src/LanguageFeatures/TemplateSyntaxInStringLiteral.ql @@ -76,9 +76,8 @@ class CandidateStringLiteral extends StringLiteral { * ``` */ predicate hasObjectProvidingTemplateVariables(CandidateStringLiteral lit) { - exists(DataFlow::CallNode call, DataFlow::ObjectLiteralNode obj, DataFlow::Node stringArg | - stringArg = [StringConcatenation::getRoot(lit.flow()), lit.flow()] and - stringArg = call.getAnArgument() and + exists(DataFlow::CallNode call, DataFlow::ObjectLiteralNode obj | + call.getAnArgument() = [lit.flow(), StringConcatenation::getRoot(lit.flow())] and obj.flowsTo(call.getAnArgument()) and forex(string name | name = lit.getAReferencedVariable() | exists(obj.getAPropertyWrite(name))) )