When using emerge to find a fictitious package, portage attempts to iterate over a NoneType causing it to crash. This happens when the pretend flag is set. Reproducible: Always Steps to Reproduce: 1. run emerge -p fictitious_package 2. Observe crash 3. Actual Results: % emerge -p fictitious_package These are the packages that would be merged, in order: Calculating dependencies... done! Traceback (most recent call last): File "/usr/bin/emerge", line 43, in <module> retval = emerge_main() File "/usr/lib64/portage/pym/_emerge/main.py", line 1649, in emerge_main myopts, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/actions.py", line 285, in action_build settings, trees, myopts, myparams, myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 5885, in backtrack_depgraph myaction, myfiles, spinner) File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 5904, in _backtrack_depgraph success, favorites = mydepgraph.select_files(myfiles) File "/usr/lib64/portage/pym/_emerge/depgraph.py", line 1586, in select_files virts_p = root_config.settings.get_virts_p().get(atom_pn) File "/usr/lib64/portage/pym/portage/package/ebuild/config.py", line 1930, in get_virts_p return self._virtuals_manager.get_virts_p() File "/usr/lib64/portage/pym/portage/package/ebuild/_config/VirtualsManager.py", line 230, in get_virts_p if vkeysplit[1] not in self._virts_p: TypeError: argument of type 'NoneType' is not iterable Expected Results: emerge should display an error message saying fictitious_package does not exist Works with 2.2_rc69
This is fixed in git: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=988416d6a172458d49a787f053b8e44a22830857
This is fixed in 2.2_rc72.