Qt: Fix filename check

On *nix only check for the separator, on Windows for all
invalid characters as defined in
https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file

Change-Id: I5842ca9f0926cc9d6ce9b839be226051497cf647
Reviewed-on: https://code.wireshark.org/review/34055
Petri-Dish: Roland Knall <rknall@gmail.com>
Tested-by: Petri Dish Buildbot
Reviewed-by: Roland Knall <rknall@gmail.com>
This commit is contained in:
Roland Knall 2019-07-22 16:17:54 +02:00
parent 91ed69488f
commit 8198413514
1 changed files with 8 additions and 2 deletions

View File

@ -775,9 +775,15 @@ int ProfileModel::importProfilesFromDir(QString dirname, int * skippedCnt, bool
bool ProfileModel::checkNameValidity(QString name, QString *msg)
{
QString message;
QString invalid_dir_chars("\\/:*?\"<>|");
bool invalid = false;
#ifdef _WIN32
/* According to https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file */
QString invalid_dir_chars = "<>:\"/\\\|?*";
#else
QString invalid_dir_chars = QDir::separator();
#endif
for ( int cnt = 0; cnt < invalid_dir_chars.length() && ! invalid; cnt++ )
{
if ( name.contains(invalid_dir_chars[cnt]) )