Review Request 124542: CMake fixes for Windows build

Luigi Toscano luigi.toscano at tiscali.it
Sun Aug 2 21:50:35 UTC 2015



On Ago. 1, 2015, 11:35 p.m., Kevin Funk wrote:
> > Looking back at the review which introduced the escaping, namely https://git.reviewboard.kde.org/r/120648/ , I escaped the comma as well in the first review. I don't remember why I removed them. Apart from that usage, comma are invalid characters in NTFS (according https://kb.acronis.com/content/39790) so we shouldn't hit them; they could work on ext[234]/xfs/whatever but I think that libxml2 could handle them. The only thing I would like to test (and if you volunteer for that I wouldn't complain :) is a test where the path to the DTD does contain a comma, to be sure that not escaping it does work on Linux. Or we could just call it as "don't do that" and forget about it :)
> 
> Dāvis Mosāns wrote:
>     Comma is not invalid character for NTFS, maybe you meant colon ":"?
>     Anyway in either case NTFS have 2 file namespaces, one is Win32 where invalid characters are
>     
>      * NUL
>      * / (slash)
>      * \ (backslash)
>      * : (colon)
>      * * (asterisk)
>      * ? (Question mark)
>      * " (quote)
>      * < (less than)
>      * > (greater than)
>      * | (pipe)
>     
>     and other is POSIX namespace where all Unicode code points are valid except NUL and / (slash).
>     On Linux, NTFS-3G by default will create all files in POSIX namespace thus it will allow creating filename with colon ":" and other "illegal" characters in NTFS.
>     And on Windows if you use WinAPI directly you can also create such filenames in POSIX namespace.
>     
>     As for which characters to escape in URI, see https://url.spec.whatwg.org/#url-code-points and also RFCs 1738, 2396, 3986. Both comma and colon is allowed in URI so seems bug is somewhere else and this is just a workaround.

Yes, sorry, I meant colon. The entire sentence should be read with "colon" instead of "comma".
I guess we mostly care for the Win32 namespace, but in any case, colon are needed there for the drive letter. Anyway, as you mentioned, colon are allowed in URI and the proper format for an URI in windows is file:///C:/whatever/etc/etc1/etc2/myfile.txt, so it looks like a problem in libxml2, but given that the timeframe for fixing that would be too long, I would say to workaround it for now by escaping the colon (in the proper place).


- Luigi


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/124542/#review83305
-----------------------------------------------------------


On Ago. 1, 2015, 11:40 a.m., Kevin Funk wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/124542/
> -----------------------------------------------------------
> 
> (Updated Ago. 1, 2015, 11:40 a.m.)
> 
> 
> Review request for Documentation, KDE Frameworks and Luigi Toscano.
> 
> 
> Bugs: 348061
>     https://bugs.kde.org/show_bug.cgi?id=348061
> 
> 
> Repository: kdoctools
> 
> 
> Description
> -------
> 
> BUG: 348061
> 
> 
> Diffs
> -----
> 
>   cmake/uriencode.cmake e5f3c3acd93d3871e44b6e6fb29ad7113e18d751 
> 
> Diff: https://git.reviewboard.kde.org/r/124542/diff/
> 
> 
> Testing
> -------
> 
> Adding ':' to the list of escaped characters is probably not an ideal solution, but let me hear your ideas.
> 
> 
> Thanks,
> 
> Kevin Funk
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20150802/3f2880f3/attachment.html>


More information about the Kde-frameworks-devel mailing list