diff options
author | Chris Ward <chris@chrisgward.com> | 2012-10-01 21:20:17 +1000 |
---|---|---|
committer | Chris Ward <chris@chrisgward.com> | 2012-10-01 21:20:17 +1000 |
commit | f4b45f5ca06d877ce7a0ae7bc02f28f2da786354 (patch) | |
tree | 72ec004d5b266a68e2733bf130410ba343f087b7 | |
parent | 8855d2525a61d5ad286cac16fd0b1552f7b96acf (diff) | |
download | Essentials-f4b45f5ca06d877ce7a0ae7bc02f28f2da786354.tar Essentials-f4b45f5ca06d877ce7a0ae7bc02f28f2da786354.tar.gz Essentials-f4b45f5ca06d877ce7a0ae7bc02f28f2da786354.tar.lz Essentials-f4b45f5ca06d877ce7a0ae7bc02f28f2da786354.tar.xz Essentials-f4b45f5ca06d877ce7a0ae7bc02f28f2da786354.zip |
Fixing bad file names in Windows (Fixes #2924)
-rw-r--r-- | Essentials/src/com/earth2me/essentials/Util.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/Essentials/src/com/earth2me/essentials/Util.java b/Essentials/src/com/earth2me/essentials/Util.java index c1f7cd014..72c1accef 100644 --- a/Essentials/src/com/earth2me/essentials/Util.java +++ b/Essentials/src/com/earth2me/essentials/Util.java @@ -26,7 +26,9 @@ public class Util public static String sanitizeFileName(final String name) { - final String newName = INVALIDFILECHARS.matcher(name.toLowerCase(Locale.ENGLISH)).replaceAll("_"); + String newName = INVALIDFILECHARS.matcher(name.toLowerCase(Locale.ENGLISH)).replaceAll("_"); + if(Pattern.compile("^(CON|PRN|AUX|NUL|COM[1-9]|LPT[1-9])(\\.(.+))?$", Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE | Pattern.COMMENTS).matcher(newName).matches()) + newName = "_" + newName; return newName; } |