Looks OK, but g_strstrip needs its result to be freed, so this is actually leaking (and always was).
+MakeCaseInsensitiveShellGlob(const char* existingString) {
aExistingString
You should also add a comment that aExistingString is a UTF8 string, but that this function is OK because g_ascii_isalpha will return false for any non-ASCII character in the string so all non-ASCII characters are just passed through.
Looks OK, but g_strstrip needs its result to be freed, so this is actually leaking (and always was).
+MakeCaseInsens itiveShellGlob( const char* existingString) {
aExistingString
You should also add a comment that aExistingString is a UTF8 string, but that this function is OK because g_ascii_isalpha will return false for any non-ASCII character in the string so all non-ASCII characters are just passed through.