It seems as if Apple’s APIs return different strings in e.g. a FileChooser
than File::findChildFiles
when using file names with umlauts. I.e. one are precomposed and the other a decomposed. Which leads to the problem that when comparing the same file (using File::operator ==()
) it doesn’t necessarily come back as equal.
If i do this instead:
#if JUCE_MAC || JUCE_IOS
return m_file.getFullPathName().convertToPrecomposedUnicode()
== other.m_file.getFullPathName().convertToPrecomposedUnicode();
#endif
results are as expected. Could we have normalization or something akin to my quick fix in File
's equality operator?