
On 14 August 2010 15:27, Dmitry Goncharov <dgoncharov@unison.com> wrote:
This bug was fixed two month ago. Have a look https://svn.boost.org/trac/boost/ticket/3863
No, that's what caused this problem. What happens is that you when run a program that uses program_options, the shell unquotes the arguments, so an argument with a space in is not quoted. Then program options calls lexical_cast to convert the argument from a string to a filesystem path. Lexical cast uses filesystem's stream extractor to perform this conversion. But since there's a space, it only extracts part of the file name. Lexical cast notices that only some of the string has been extracted, realises that something has gone wrong and throws an exception. There's also a double unencoding issue if the file's name contains quotes. Daniel