Files
openide/java/java-tests/testData/inspection/dataFlow/fixture/StringEqualityNewStringInMethod.java
Tagir Valeev 8466dca993 [java-dfa] containsConstant should ignore locality if values are compared by equals
Fixes IDEA-265089 ConstantCondition always false incorrectly reported on String.equals with String literal on left side

GitOrigin-RevId: 4e128a8308a9813bba953e107400c51879a6e7f2
2021-03-25 05:55:08 +00:00

18 lines
463 B
Java

public class StringEqualityNewStringInMethod {
// IDEA-265089
public boolean bad() {
return "baah".equals(toString("baah".getBytes("UTF-8")));
}
public boolean good() {
return "baah".equals(new String("baah".getBytes("UTF-8"), 0, 4, "UTF-8"));
}
public boolean good2() {
return toString("baah".getBytes("UTF-8")).equals("baah");
}
private static String toString(final byte[] data) {
return new String(data, 0, 4, "UTF-8");
}
}