Package: aptitude
Version: 0.4.11.1-1
Severity: grave

The program get terminated at very start.

The exception std::out_of_range is thrown at pkg_grouppolicy.cc:325 
(pkg_grouppolicy_section::add_package):

   323                section = (sections_remaining.at(0) == '/'
   324                           ? sections_remaining.substr(1, next_split)
   325                           : sections_remaining.substr(0, next_split));

due to sections_remaining string emptiness. The string get empty from very 
start at 272:

   270    else
   271      {
   272        section=pkg.VersionList().Section();
   273
   274        // Find the first section divider ('/'); if the split mode is
   275        // supposed to include only the part of the section preceding it

This is not the first iteration so the pkg (pkgCache) is initialized partly 
properly. The problem gets occured when pkg.Name() is "gsfonts-other". I 
looked into apt list and ascertained that the Section: field is not null for 
gsfonts-other (non-free/text). I suspect, that /var/cache/pkgcache.bin get 
build somehow wrongly. But to figure where in the code it get build is long 
enough task for me. Is there anyone who knows the code enough to give me a 
clue where to dig next?

By the way, at 273 the check should be done, that std::string 'section' is not 
empty.

Package: apt
Version: 0.7.11



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to