diff --git a/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImplSpecific.qll b/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImplSpecific.qll index c3366436d27..3f44d635a68 100644 --- a/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImplSpecific.qll +++ b/java/ql/lib/semmle/code/java/dataflow/internal/FlowSummaryImplSpecific.qll @@ -120,8 +120,11 @@ private predicate correspondingKotlinParameterDefaultsArgSpec( exists(int oldArgParsed | oldArgParsed = AccessPathSyntax::AccessPath::parseInt(oldArgNumber.splitAt(",").trim()) | - if ktExtensionFunctions(originalCallable, _, _) and oldArgParsed = 0 - then defaultsArgSpec = "Argument[0]" + if + ktExtensionFunctions(originalCallable, _, _) and + ktExtensionFunctions(defaultsCallable, _, _) and + oldArgParsed = 0 + then defaultsArgSpec = "Argument[" + paramOffset + "]" // 1 if dispatch receiver is present, 0 otherwise. else defaultsArgSpec = "Argument[" + (oldArgParsed + paramOffset) + "]" + rest ) )