diff options
Diffstat (limited to 'loader')
| -rw-r--r-- | loader/atlas.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/loader/atlas.cpp b/loader/atlas.cpp index acc1d069..e811e61e 100644 --- a/loader/atlas.cpp +++ b/loader/atlas.cpp @@ -28,7 +28,9 @@ StringView loader_::make_atlas_path(char(&buf)[FILENAME_MAX], StringView dir, St bool loader_::check_atlas_name(StringView str) noexcept { - if (!str || str[0] == '.' || str[0] == '/') + constexpr auto first_char = + "_0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"_s; + if (!str || !first_char.find(str[0])) return false; if (str.findAny("\\\"'\n\r\t\a\033\0|$!%{}#^*?<>&;:^"_s) || str.find("/."_s)) return false; |
