Now allowing screen names with underscores.
This commit is contained in:
parent
aeb3f760d0
commit
368d8cae39
|
@ -318,7 +318,7 @@ bool
|
||||||
CConfig::isValidScreenName(const CString& name) const
|
CConfig::isValidScreenName(const CString& name) const
|
||||||
{
|
{
|
||||||
// name is valid if matches validname
|
// name is valid if matches validname
|
||||||
// name ::= [A-Za-z0-9] | [A-Za-z0-9][-A-Za-z0-9]*[A-Za-z0-9]
|
// name ::= [_A-Za-z0-9] | [_A-Za-z0-9][-_A-Za-z0-9]*[_A-Za-z0-9]
|
||||||
// domain ::= . name
|
// domain ::= . name
|
||||||
// validname ::= name domain*
|
// validname ::= name domain*
|
||||||
|
|
||||||
|
@ -337,13 +337,14 @@ CConfig::isValidScreenName(const CString& name) const
|
||||||
}
|
}
|
||||||
|
|
||||||
// check first and last characters
|
// check first and last characters
|
||||||
if (!isalnum(name[b]) || !isalnum(name[e - 1])) {
|
if (!(isalnum(name[b]) || name[b] == '_') ||
|
||||||
|
!(isalnum(name[e - 1]) || name[e - 1] == '_')) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// check interior characters
|
// check interior characters
|
||||||
for (CString::size_type i = b; i < e; ++i) {
|
for (CString::size_type i = b; i < e; ++i) {
|
||||||
if (!isalnum(name[i]) && name[i] != '-') {
|
if (!isalnum(name[i]) && name[i] != '_' && name[i] != '-') {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue