It's not a bug, it has been more or less on purpose. The INI file code was adapted from some kind of library. It purposely adds the ^M character on non-windows platforms so that the same INI file can be read by both platforms. True that this is a questionable practice nowadays, since transferring files from one platform to the other usually handles CRLF conversions as well, so I understand your report and am not against fixing this. However, I'm probably not gonna fix this myself; feel free to contribute that fix to IniFile.cpp
