I looked a bit further into this. It basically boils down to the
horrible function Packages::Search::read_entry_simple() which is much
too terse and too cryptic in its return value. It should be completely
reimplemented. Which is not that bad since it is only used in two
places in the code anyway.