Description: |
(text/html)
As reported in <a href="http://stackoverflow.com/q/21439453/301832">this Stack Overflow question</a>, it looks like there's an evil edge case that's gone wrong in <tt>file normalize</tt>.
<p>
Directory structure setup:
<pre>
/tmp/fileA.txt
/tmp/sidedir/fileA.txt
/tmp/subdir/fileA.txt
/tmp/subdir/sidedir_link -> /tmp/sidedir
</pre>
Problem trace:
<pre>
wish% file normalize sidedir_link/fileA.txt
/tmp/sidedir/fileA.txt
wish% ::utils::realpath sidedir_link/fileA.txt
/tmp/sidedir/fileA.txt
wish% file normalize sidedir_link/../fileA.txt
/tmp/subdir/fileA.txt
wish% ::utils::realpath sidedir_link/../fileA.txt
/tmp/fileA.txt
</pre>
<blockquote>“<i>Note:</i> The difference is <tt>/tmp/subdir/fileA.txt</tt> versus <tt>/tmp/fileA.txt</tt>.”</blockquote>
It's reportedly an issue with both 8.4.9 and 8.6.1 so I expect it to be present in all other 8.4, 8.5 and 8.6 versions.
|