diff --git a/src/main/java/org/apache/commons/io/FilenameUtils.java b/src/main/java/org/apache/commons/io/FilenameUtils.java index c3a2a2dcfa5..bd1c13168ab 100644 --- a/src/main/java/org/apache/commons/io/FilenameUtils.java +++ b/src/main/java/org/apache/commons/io/FilenameUtils.java @@ -326,7 +326,14 @@ private static String doGetFullPath(final String fileName, final boolean include if (end == 0) { end++; } - return fileName.substring(0, end); + final String path = fileName.substring(0, end); + if (!includeEndSeparator && path.length() > prefix) { + final char lastChar = path.charAt(path.length() - 1); + if (lastChar == '/' || lastChar == '\\') { + return path.substring(0, path.length() - 1); + } + } + return path; } /**