зеркало из https://github.com/github/codeql.git
JavaScript: Split up a predicate to avoid bad join order.
This commit is contained in:
Родитель
d91e6a4893
Коммит
ee62706ad2
|
@ -157,10 +157,12 @@ class InvokeNode extends DataFlow::SourceNode {
|
|||
* `name` is set to `result`.
|
||||
*/
|
||||
DataFlow::ValueNode getOptionArgument(int i, string name) {
|
||||
exists(ObjectLiteralNode obj |
|
||||
obj.flowsTo(getArgument(i)) and
|
||||
obj.hasPropertyWrite(name, result)
|
||||
)
|
||||
getOptionsArgument(i).hasPropertyWrite(name, result)
|
||||
}
|
||||
|
||||
pragma[noinline]
|
||||
private ObjectLiteralNode getOptionsArgument(int i) {
|
||||
result.flowsTo(getArgument(i))
|
||||
}
|
||||
|
||||
/** Gets an abstract value representing possible callees of this call site. */
|
||||
|
|
Загрузка…
Ссылка в новой задаче