-L../tt/../../output/ppc => -L../outuut/ppc (corrupt, tt does not exist). -L../tt/.././output/ppc => -L./oututt/ppc (corrupt)
I think the algorithm that gbuild uses is something like this Starting from ../tt/.././output/ppc: - Prepend the path to the config file to the path given in the config file (shared-libs/../tt/.././output/ppc) - Starting from the beginning each time, search for "/\./" or "/[^/]+/\.\./" and remove each occurrence with "/" At least that's how I would implement it. It's unlikely that they are using regular expressions of course. It is likely that they simply scan through the string and then use memcpy, memmove or strcpy move the remainder of the string forward to effect the replacement. So I would suspect those kind of functions. Have there been any changes in this area between libc 2.13 and 2.15? -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/932621 Title: String corruption To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/eglibc/+bug/932621/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs