<div dir="ltr"><div dir="ltr">On Mon, Feb 20, 2023 at 10:39 AM Ethan McCue <<a href="mailto:ethan@mccue.dev">ethan@mccue.dev</a>> wrote:</div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">To throw a unicode wrench in the mix.<br></div></blockquote><div><br></div><div>Hah!</div><div><br></div><div>Here's the root cause:</div><div style="margin-left:40px"><span style="font-family:monospace"><br></span></div><div style="margin-left:40px"><span style="font-family:monospace">$ cat FileSystem.java <br>import java.nio.file.*;<br>public class FileSystem {<br><br>    public static void main(String[] args) {<br>        String s = "cafe\u0301";<br>        showUTF(s);<br>        String t = FileSystems.getDefault().getPath(s).toString();<br>        showUTF(t);<br>    }<br><br>    public static void showUTF(String s) {<br>        StringBuilder buf = new StringBuilder(s.length() * 3);<br>        for (int i = 0; i < s.length(); i++) {<br>            if (i > 0)<br>                buf.append(' ');<br>            buf.append(String.format("%04x", (int)s.charAt(i)));<br>        }<br>        System.out.println(buf);<br>    }<br>}<br>$ javac FileSystem.java && java FileSystem<br>0063 0061 0066 0065 0301<br>0063 0061 0066 00e9</span></div><div><br></div><div>Looks like this happens on MacOS because <span style="font-family:monospace">MacOSXFileSystem.normalizeNativePath()</span> invokes <span style="font-family:monospace">MacOSXNativeDispatcher.normalizepath()</span>.</div></div><div class="gmail_quote"><br></div><div class="gmail_quote">Should this be considered a bug?<div><br></div><div>-Archie<br></div></div><div class="gmail_quote"><br></div>-- <br><div dir="ltr" class="gmail_signature">Archie L. Cobbs<br></div></div>