On 19 June 2017 at 22:52, Peter Dimov via Boost
The question whether to support such filenames is more a matter of principle. Namely, whether it is the job of the Nowide library to tell you what filenames you may use or not. One might argue that it should be of no concern to it whether, or for what reason, I need such filenames.
I think the ruling principle should be the unicode standard. Nowide should support the unicode standard and no more (at least in its' intentions). One of the intentions of the standard, as I read it, is to guarantee that a conversion can *un-ambiguously (and safely) round-trip*. On windows, if WTF-8 (what's in a name? Apart from the obvious, even Wobbly sounds bizarre), CESU-8 or Modified UTF-8 are ways to achieve that, I think that they should be supported. If not, an exception should be thrown when encountering these invalid encodings, as this is in my view an IO issue (the un-certain environment in which an application has to live), in which context, throwing seems to be the norm. I'm with Frédéric Bron on this one, though. I don't understand why invalid encodings are found in the wild in the first place and why they should continue to exist in the wild. The whole thing sounds like a vector for exploits, malicious code to generate invalid encodings after which buffer-overruns open up the system. Something I cannot understand is that some of those on this list who are most critical of Windows in view of security concerns are also the same people who happily perpetuate these weaknesses. Microsoft is very much in front here, by dropping support for OS'es (and therfore their associated compilers and CRT's), Boost should do the same and adopt rigour: "Ceterum autem censeo Carthaginem esse delendam" What's not terribly clear either is whether we are talking about NTFS or Explorer (and then there is WinFS lurking in the shadows, bound to be released someday). Windows does (many) other things that are weird, like the way it deals with capitalized names, long paths etc., NTFS itself does actually not have these issues and does quite a bit more than what the Explorer shell can do. degski -- "*Ihre sogenannte Religion wirkt bloß wie ein Opiat reizend, betäubend, Schmerzen aus Schwäche stillend.*" - Novalis 1798