JD.LIST.ADD

JD.LIST.ADD occurs when an operation is performed on a container, for example, addAll, removeAll, retainAll or containsAll, but the argument is a container itself. This is definitely a typo.

Vulnerability and risk

This is not an error in itself, but since it makes no sense, there is an error in the logic. For example, instead of writing con1.addAll(con2), the programmer wrote con1.addAll(con1). The severity of this error depends on where and how the code is used.

Mitigation and prevention

Fix the name of the method argument or, perhaps, replace removeAll with list.clean().

Example 1

Copy
     private Collection foo(Collection list12_3,
                            Collection list12_4) {
         if (list12_3.size() < list12_4.size()) {
             list12_3.addAll(list12_4);
             return list12_3;
         } else {
             list12_4.addAll(list12_4);
             return list12_4;
         }
 
     }

JD.LIST.ADD is reported for 'addAll' call on line 17 : Container 'list12_4' calls 'addAll' with itself as an argument. This code does nothing, or there is simpler way to do it. Probably a typo.