Can the entry ".." become linked to someplace other than the parent directory? Is it possible to cause "tar" to create this weird behavior?
Scenario: I have a pre-built compiler to a embeded system, distributed as tar.gz files, which works perfectly in Ubuntu 10.04. When testing an upgrade to Ubuntu 12.04 in a VirtualBox VM, it failed to find out some header files. Exploring the files for the cause of the problem, I noticed it became lost following "/a/somewhat/convoluted/../../path/../full/of/up/../references/". Exploring a bit more, I found some strange behavior:
"ls /that/strange/../../path" shows me the files as expected.
typing "ls /that/strange/../../path" in bash for a list of files inside "/that/strange/../../path" (ie, triggering the filename completion without running "ls") shows me a DIFFERENT list of files.
when I fix the path interpreting the ".." by hand, both outputs are the same.
I suppose "ls" and the filename globbing differ in the way they find the files (opendir/readdir, glob, etc.) and one of these operations steps in a filesystem error. Running fsck in the VM resulted in nothing unusual. Same result for installing the compiler again in a new VM. "tar" returned no error. Do somebody got this kind of problem?