If `parent' file of a cascading profile contains strings that are longer than 127 chars (this happens when profile is deep, e.g. /usr/portage/profiles/default-linux/amd64/2005.1/no-multilib/parent), then profile is not parsed fully. The problem is caused by too small buffer: bool CascadingProfile::getParentProfile(string &path_buffer) { int _buflen = 128; // here char _buf[_buflen]; Reproducible: Always Steps to Reproduce:
Fixed in upstream-cvs. This bug shouldn't currently affect anyone, because the longest string from the "parent"-files is "../../../default-linux/amd64/2005.0/no-multilib" (48 character). Can you confirm this?
The bug is caused by parsing 'parent' files with long strings inside of them. usr/portage/profiles/default-linux/amd64/2005.1/no-multilib/parent contains string '# $Header: /var/cvsroot/gentoo-x86/profiles/default-linux/amd64/2005.1/ no-multilib/parent,v 1.1 2005/06/04 21:20:09 eradicator Exp $', which is 132 symbols long.
fixed