From 9533f12e2427357f5ad2fffa3956caafbc4b2415 Mon Sep 17 00:00:00 2001 From: Owen Mansel-Chan Date: Wed, 4 Aug 2021 14:01:00 +0100 Subject: [PATCH] Add explanatory commented for MapIterator model --- java/ql/src/semmle/code/java/frameworks/apache/Collections.qll | 2 ++ 1 file changed, 2 insertions(+) diff --git a/java/ql/src/semmle/code/java/frameworks/apache/Collections.qll b/java/ql/src/semmle/code/java/frameworks/apache/Collections.qll index 782f9cd1ec4..2cd0c7d2445 100644 --- a/java/ql/src/semmle/code/java/frameworks/apache/Collections.qll +++ b/java/ql/src/semmle/code/java/frameworks/apache/Collections.qll @@ -84,6 +84,8 @@ private class ApacheCollectionsModel extends SummaryModelCsv { "org.apache.commons.collections4;IterableGet;true;mapIterator;;;MapValue of Argument[-1];MapValue of ReturnValue;value", "org.apache.commons.collections4;KeyValue;true;getKey;;;MapKey of Argument[-1];ReturnValue;value", "org.apache.commons.collections4;KeyValue;true;getValue;;;MapValue of Argument[-1];ReturnValue;value", + // Note that MapIterator implements Iterator, so it iterates over the keys of the map. + // In order for the models of Iterator to work we have to use Element instead of MapKey for key data. "org.apache.commons.collections4;MapIterator;true;getKey;;;Element of Argument[-1];ReturnValue;value", "org.apache.commons.collections4;MapIterator;true;getValue;;;MapValue of Argument[-1];ReturnValue;value", "org.apache.commons.collections4;MapIterator;true;next;;;Element of Argument[-1];ReturnValue;value",