Skip to content

Commit 472b41f

Browse files
committed
JS: Update React to handle string literals being SourceNodes
1 parent 39c204a commit 472b41f

File tree

1 file changed

+5
-1
lines changed
  • javascript/ql/src/semmle/javascript/frameworks

1 file changed

+5
-1
lines changed

javascript/ql/src/semmle/javascript/frameworks/React.qll

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,11 @@ abstract class ReactComponent extends ASTNode {
248248
* Holds if `f` always returns a JSX element or fragment, or a React element.
249249
*/
250250
private predicate alwaysReturnsJSXOrReactElements(Function f) {
251-
forex(Expr e | e.flow().(DataFlow::SourceNode).flowsToExpr(f.getAReturnedExpr()) |
251+
forex(Expr e |
252+
e.flow().(DataFlow::SourceNode).flowsToExpr(f.getAReturnedExpr()) and
253+
// Allow returning string constants in addition to JSX/React elemnts.
254+
not exists(e.getStringValue())
255+
|
252256
e instanceof JSXNode or
253257
e instanceof ReactElementDefinition
254258
)

0 commit comments

Comments
 (0)