strings: Prevent crash

This commit is contained in:
Daniel Oaks 2017-01-22 12:44:05 +10:00
parent c2fedfb177
commit ea0121aeff
1 changed files with 5 additions and 0 deletions

View File

@ -18,6 +18,7 @@ const (
var ( var (
errInvalidCharacter = errors.New("Invalid character") errInvalidCharacter = errors.New("Invalid character")
errEmpty = errors.New("String is empty")
) )
// Casefold returns a casefolded string, without doing any name or channel character checks. // Casefold returns a casefolded string, without doing any name or channel character checks.
@ -31,6 +32,8 @@ func CasefoldChannel(name string) (string, error) {
if err != nil { if err != nil {
return "", err return "", err
} else if len(lowered) == 0 {
return "", errEmpty
} }
if lowered[0] != '#' { if lowered[0] != '#' {
@ -55,6 +58,8 @@ func CasefoldName(name string) (string, error) {
if err != nil { if err != nil {
return "", err return "", err
} else if len(lowered) == 0 {
return "", errEmpty
} }
// space can't be used // space can't be used