Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 3d1d491

Browse files
committed
Model java.lang.Object.clone() better for access paths.
Model value flow for Element, MapKey and MapValue. This assumes that clone() is a shallow copy.
1 parent cfa0d46 commit 3d1d491

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

java/ql/lib/semmle/code/java/dataflow/internal/ContainerFlow.qll

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,9 @@ private class ContainerFlowSummaries extends SummaryModelCsv {
9595
override predicate row(string row) {
9696
row =
9797
[
98+
"java.lang;Object;true;clone;;;MapKey of Argument[-1];MapKey of ReturnValue;value",
99+
"java.lang;Object;true;clone;;;MapValue of Argument[-1];MapValue of ReturnValue;value",
100+
"java.lang;Object;true;clone;;;Element of Argument[-1];Element of ReturnValue;value",
98101
"java.util;Map$Entry;true;getKey;;;MapKey of Argument[-1];ReturnValue;value",
99102
"java.util;Map$Entry;true;getValue;;;MapValue of Argument[-1];ReturnValue;value",
100103
"java.util;Map$Entry;true;setValue;;;MapValue of Argument[-1];ReturnValue;value",

0 commit comments

Comments
 (0)