StringUtils: adjust Split() to return an empty array if the input string is empty

I've came across this in my media import work. Due to the nature of StringUtils::Split always returning an array with at least one (empty) string (even if the input value was empty) all the values in CVideoInfoTag which are translated from a string to an array of strings (genre, studio et al.) will not be empty but will contain a single empty string.

Does anyone (@jmarshallnz maybe) know the reason behind StringUtils::Split() always returning at least one string in the array? That behaviour is completely unintuitive for me.