You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if (lowercaseValues.contains(value.toLowerCase(Locale.ROOT))) {
6346
6350
intcounter = 0;
6347
6351
StringuniqueValue = value + "_" + counter;
6348
-
6349
-
while (seenValues.values().stream().map(v -> v.toLowerCase(Locale.ROOT)).collect(Collectors.toList()).contains(uniqueValue.toLowerCase(Locale.ROOT))) {
6352
+
while (lowercaseValues.contains(uniqueValue.toLowerCase(Locale.ROOT))) {
thrownewRuntimeException(String.format(Locale.ROOT, "Target files must be generated within the output directory; absoluteTarget=%s outDir=%s", absoluteTarget, outDir));
1444
1445
}
1445
1446
1446
-
if (seenFiles.stream().filter(f -> f.toLowerCase(Locale.ROOT).equals(absoluteTarget.toString().toLowerCase(Locale.ROOT))).findAny().isPresent()) {
1447
-
LOGGER.warn("Duplicate file path detected. Not all operating systems can handle case sensitive file paths. path={}", absoluteTarget.toString());
1447
+
// O(1) case-insensitive duplicate check via a pre-lowercased shadow set
1448
+
if (!seenFilesLower.add(absoluteTarget.toString().toLowerCase(Locale.ROOT))) {
1449
+
LOGGER.warn("Duplicate file path detected. Not all operating systems can handle case sensitive file paths. path={}", absoluteTarget);
0 commit comments