All pastes #2005762 Raw Edit

agrr

public text v1 · immutable
#2005762 ·published 2010-11-29 16:01 UTC
rendered paste body
--------------------------------------------------------------------------------Profile data file '/root/callgrind.out.1583' (creator: callgrind-3.6.0)--------------------------------------------------------------------------------I1 cache: D1 cache: LL cache: Timerange: Basic block 0 - 1217828861Trigger: Program terminationProfiled target:  /usr/bin/apt-get check (PID 1583, part 1)Events recorded:  IrEvents shown:     IrEvent sort order: IrThresholds:       99Include dirs:     User annotated:   Auto-annotation:  on--------------------------------------------------------------------------------           Ir --------------------------------------------------------------------------------5,081,557,078  PROGRAM TOTALS--------------------------------------------------------------------------------           Ir  file:function--------------------------------------------------------------------------------5,068,315,809  /home/mandrake/rpm/BUILD/glibc-2.12.1/csu/../sysdeps/i386/elf/start.S:0x0804e430 [/usr/bin/apt-get]5,068,308,210  ???:(below main) [/lib/i686/libc-2.12.1.so]5,067,737,060  /home/agrr/apt-rpm/cmdline/apt-get.cc:main5,067,737,058  cmdline/apt-get.cc:main [/usr/bin/apt-get]5,018,068,649  /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc:CommandLine::DispatchArg(CommandLine::Dispatch*, bool)5,018,068,649  apt-pkg/contrib/cmndline.cc:CommandLine::DispatchArg(CommandLine::Dispatch*, bool) [/usr/lib/libapt-pkg.so.4.0.0]5,018,060,970  /home/agrr/apt-rpm/cmdline/apt-get.cc:DoCheck(CommandLine&)5,018,051,579  cmdline/apt-get.cc:DoCheck(CommandLine&) [/usr/bin/apt-get]4,961,954,193  /home/agrr/apt-rpm/apt-pkg/cachefile.cc:pkgCacheFile::Open(OpProgress&, bool)4,961,954,046  apt-pkg/cachefile.cc:pkgCacheFile::Open(OpProgress&, bool) [/usr/lib/libapt-pkg.so.4.0.0]2,833,757,947  apt-pkg/cachefile.cc:pkgCacheFile::BuildCaches(OpProgress&, bool) [/usr/lib/libapt-pkg.so.4.0.0]2,787,906,094  /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgMakeStatusCache(pkgSourceList&, OpProgress&, MMap**, bool)2,787,896,930  apt-pkg/pkgcachegen.cc:pkgMakeStatusCache(pkgSourceList&, OpProgress&, MMap**, bool) [/usr/lib/libapt-pkg.so.4.0.0]2,637,994,003  apt-pkg/pkgcachegen.cc:BuildCache(pkgCacheGenerator&, OpProgress&, unsigned long&, unsigned long, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >) [/usr/lib/libapt-pkg.so.4.0.0]2,637,588,831  /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::MergeList(pkgCacheGenerator::ListParser&, pkgCache::VerIterator*)2,630,876,013  apt-pkg/pkgcachegen.cc:pkgCacheGenerator::MergeList(pkgCacheGenerator::ListParser&, pkgCache::VerIterator*) [/usr/lib/libapt-pkg.so.4.0.0]2,126,621,293  /home/agrr/apt-rpm/apt-pkg/depcache.cc:pkgDepCache::Init(OpProgress*)2,119,781,086  apt-pkg/depcache.cc:pkgDepCache::Init(OpProgress*) [/usr/lib/libapt-pkg.so.4.0.0]2,104,085,474  apt-pkg/depcache.cc:pkgDepCache::Update(OpProgress*) [/usr/lib/libapt-pkg.so.4.0.0]2,075,550,392  apt-pkg/depcache.cc:pkgDepCache::DependencyState(pkgCache::DepIterator&) [/usr/lib/libapt-pkg.so.4.0.0]2,069,974,247  apt-pkg/../include/apt-pkg/depcache.h:pkgDepCache::DependencyState(pkgCache::DepIterator&)2,067,214,706  /home/agrr/apt-rpm/apt-pkg/depcache.cc:pkgDepCache::CheckDep(pkgCache::DepIterator, int, pkgCache::PkgIterator&)2,050,810,593  apt-pkg/depcache.cc:pkgDepCache::CheckDep(pkgCache::DepIterator, int, pkgCache::PkgIterator&) [/usr/lib/libapt-pkg.so.4.0.0]1,990,281,481  /home/agrr/apt-rpm/apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::CheckDep(char const*, pkgCache::DepIterator)1,989,557,047  apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::CheckDep(char const*, pkgCache::DepIterator) [/usr/lib/libapt-pkg.so.4.0.0]1,984,383,500  apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::CheckDep(char const*, int, char const*) [/usr/lib/libapt-pkg.so.4.0.0]1,927,612,011  /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmPkgIndex::Merge(pkgCacheGenerator&, OpProgress&) const1,927,607,657  apt-pkg/rpm/rpmindexfile.cc:rpmUrpmPkgIndex::Merge(pkgCacheGenerator&, OpProgress&) const [/usr/lib/libapt-pkg.so.4.0.0]1,308,745,005  ???:rpmdsSingle [/usr/lib/librpm-5.3.so]1,274,344,333  /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::VersionHash()1,218,034,937  apt-pkg/rpm/rpmlistparser.cc:rpmListParser::VersionHash() [/usr/lib/libapt-pkg.so.4.0.0]  954,168,775  ???:rpmdsNewDNEVR [/usr/lib/librpm-5.3.so]  877,686,141  /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::NewVersion(pkgCache::VerIterator)  860,670,730  ???:malloc [/lib/i686/libc-2.12.1.so]  855,609,995  apt-pkg/rpm/rpmlistparser.cc:rpmListParser::NewVersion(pkgCache::VerIterator) [/usr/lib/libapt-pkg.so.4.0.0]  795,406,426  apt-pkg/rpm/rpmhandler.cc:RPMHandler::PutDep(char const*, char const*, evrFlags_e, unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) [/usr/lib/libapt-pkg.so.4.0.0]  786,631,588  ???:_int_malloc [/lib/i686/libc-2.12.1.so]  731,898,665  ???:0x0002fcf0 [/usr/lib/librpm-5.3.so]  710,244,953  /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::Merge(pkgCacheGenerator&, OpProgress&) const  710,244,829  apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::Merge(pkgCacheGenerator&, OpProgress&) const [/usr/lib/libapt-pkg.so.4.0.0]  707,337,298  ???:rpmnsParse [/usr/lib/librpmdb-5.3.so]  704,448,432  ???:msort_with_tmp'2 [/lib/i686/libc-2.12.1.so]  702,212,815  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&)  637,952,073  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) [/usr/lib/libapt-pkg.so.4.0.0]  598,741,493  ???:rpmExpand [/usr/lib/librpmio-5.3.so]  584,555,198  apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) [/usr/lib/libapt-pkg.so.4.0.0]  584,555,198  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&)  512,097,577  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::tokenize(std::string, std::string*, int, std::string&) [/usr/lib/libapt-pkg.so.4.0.0]  510,382,546  apt-pkg/rpm/rpmhandler.cc:RPMHandler::InternalDep(char const*, char const*, evrFlags_e) [/usr/lib/libapt-pkg.so.4.0.0]  505,921,748  ???:free [/lib/i686/libc-2.12.1.so]  501,433,594  /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:RPMUrpmHandler::tokenize(std::string, std::string*, int, std::string&)  496,780,324  ???:rpmioFreePoolItem [/usr/lib/librpmio-5.3.so]  465,421,147  ???:rpmdsRpmlib [/usr/lib/librpm-5.3.so]  461,081,845  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMHandler::EVR()  450,460,686  apt-pkg/rpm/rpmlistparser.cc:rpmListParser::ParseDepends(pkgCache::VerIterator, unsigned int) [/usr/lib/libapt-pkg.so.4.0.0]  435,831,047  apt-pkg/rpm/rpmhandler.cc:RPMHandler::EVR() [/usr/lib/libapt-pkg.so.4.0.0]  427,295,464  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::parsePkgName(std::string, RPMUrpmHandler::infoToken) [/usr/lib/libapt-pkg.so.4.0.0]  365,188,888  ???:rpmdsCompare [/usr/lib/librpm-5.3.so]  334,567,719  ???:_int_free [/lib/i686/libc-2.12.1.so]  314,643,278  ???:0x0002fb90 [/usr/lib/librpm-5.3.so]  306,558,084  ???:std::string::find_first_of(char const*, unsigned int, unsigned int) const [/usr/lib/libstdc++.so.6.0.14]  298,429,520  apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Version() [/usr/lib/libapt-pkg.so.4.0.0]  288,834,511  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::ParseDepends(char const*, char const*, std::string&, std::string&, std::string&) [/usr/lib/libapt-pkg.so.4.0.0]  283,673,517  ???:operator new(unsigned int) [/usr/lib/libstdc++.so.6.0.14]  279,779,051  ???:rpmdsMerge [/usr/lib/librpm-5.3.so]  265,781,622  ???:std::string::_Rep::_S_create(unsigned int, unsigned int, std::allocator<char> const&) [/usr/lib/libstdc++.so.6.0.14]  265,330,009  apt-pkg/rpm/rpmlistparser.cc:rpmListParser::ParseProvides(pkgCache::VerIterator) [/usr/lib/libapt-pkg.so.4.0.0]  258,177,330  /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Step()  246,454,381  apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Step() [/usr/lib/libapt-pkg.so.4.0.0]  239,869,279  ???:0x00011680'2 [/lib/libpcre.so.0.0.1]  230,769,299  ???:operator delete(void*) [/usr/lib/libstdc++.so.6.0.14]  227,104,459  ???:memchr [/lib/i686/libc-2.12.1.so]  218,502,098  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Arch()  210,752,592  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Arch() [/usr/lib/libapt-pkg.so.4.0.0]  203,989,254  ???:std::string::_Rep::_M_destroy(std::allocator<char> const&) [/usr/lib/libstdc++.so.6.0.14]  196,600,490  ???:std::string::assign(char const*, unsigned int) [/usr/lib/libstdc++.so.6.0.14]  179,155,763  ???:__strlen_sse2 [/lib/i686/libc-2.12.1.so]  178,632,883  ???:calloc [/lib/i686/libc-2.12.1.so]  175,759,545  ???:yarnTwist [/usr/lib/librpmio-5.3.so]  168,444,821  /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Version()  166,030,596  ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&, unsigned int, unsigned int) [/usr/lib/libstdc++.so.6.0.14]  162,615,222  /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:RPMHandler::PutDep(char const*, char const*, evrFlags_e, unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&)  161,508,140  ???:rpmdsNext [/usr/lib/librpm-5.3.so]  153,376,352  ???:std::string::_M_replace_safe(unsigned int, unsigned int, char const*, unsigned int) [/usr/lib/libstdc++.so.6.0.14]  146,524,412  apt-pkg/pkgcachegen.cc:CollectFileProvides(pkgCacheGenerator&, OpProgress&, unsigned long&, unsigned long, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >) [/usr/lib/libapt-pkg.so.4.0.0]  146,054,908  /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::MergeFileProvides(pkgCacheGenerator::ListParser&)  145,003,214  ???:qsort [/lib/i686/libc-2.12.1.so]  144,969,014  ???:qsort_r [/lib/i686/libc-2.12.1.so]  143,920,918  ???:msort_with_tmp [/lib/i686/libc-2.12.1.so]  141,589,200  ???:expandMacros [/usr/lib/librpmio-5.3.so]  140,428,799  apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Architecture() [/usr/lib/libapt-pkg.so.4.0.0]  140,289,730  apt-pkg/pkgcachegen.cc:pkgCacheGenerator::MergeFileProvides(pkgCacheGenerator::ListParser&) [/usr/lib/libapt-pkg.so.4.0.0]  135,356,176  ???:std::string::_M_mutate(unsigned int, unsigned int, unsigned int) [/usr/lib/libstdc++.so.6.0.14]  134,293,423  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Version() [/usr/lib/libapt-pkg.so.4.0.0]  133,331,068  ???:rpmEVRparse [/usr/lib/librpmdb-5.3.so]  133,299,523  /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.tcc:char* std::string::_S_construct<char*>(char*, char*, std::allocator<char> const&, std::forward_iterator_tag) [/usr/bin/apt-get]  132,994,858  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Release() [/usr/lib/libapt-pkg.so.4.0.0]  129,831,318  ???:rpmioPutPool [/usr/lib/librpmio-5.3.so]  129,110,947  /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const  121,281,186  ???:malloc_consolidate [/lib/i686/libc-2.12.1.so]  120,542,265  ???:0x0002fa80 [/usr/lib/librpm-5.3.so]  119,034,416  ???:0x0002f800 [/usr/lib/librpm-5.3.so]  118,861,458  ???:rpmmiNext [/usr/lib/librpmdb-5.3.so]  113,902,231  /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.tcc:char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) [/usr/lib/libapt-pkg.so.4.0.0]  108,963,426  ???:headerGet [/usr/lib/librpmdb-5.3.so]  107,485,143  ???:mireRegexec [/usr/lib/librpmio-5.3.so]  105,726,891  ???:stpcpy [/lib/i686/libc-2.12.1.so]  105,302,094  ???:pcreposix_regexec [/usr/lib/libpcreposix.so.1.0.0]  100,715,544  ???:yarnPossess [/usr/lib/librpmio-5.3.so]  100,096,784  ???:pcre_exec [/lib/libpcre.so.0.0.1]   90,750,301  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Epoch() [/usr/lib/libapt-pkg.so.4.0.0]   90,228,222  ???:isspace [/lib/i686/libc-2.12.1.so]   88,708,852  ???:rpmioLinkPoolItem [/usr/lib/librpmio-5.3.so]   88,706,050  ???:rpmioGetPool [/usr/lib/librpmio-5.3.so]   88,530,373  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Group()   86,424,139  ???:0x00011680 [/lib/libpcre.so.0.0.1]   85,731,079  /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::ListParser::NewDepends(pkgCache::VerIterator, std::string, std::string, unsigned int, unsigned int)   84,439,841  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::InstalledSize()   80,631,233  /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:RPMUrpmHandler::parsePkgName(std::string, RPMUrpmHandler::infoToken)   80,019,355  /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmPkgIndex::MergeFileProvides(pkgCacheGenerator&, OpProgress&) const   80,019,355  apt-pkg/rpm/rpmindexfile.cc:rpmUrpmPkgIndex::MergeFileProvides(pkgCacheGenerator&, OpProgress&) const [/usr/lib/libapt-pkg.so.4.0.0]   79,599,088  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::Skip()   79,599,088  apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::Skip() [/usr/lib/libapt-pkg.so.4.0.0]   79,466,559  ???:rpmnsClassify [/usr/lib/librpmdb-5.3.so]   77,029,778  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Group() [/usr/lib/libapt-pkg.so.4.0.0]   75,357,043  ???:std::string::compare(char const*) const [/usr/lib/libstdc++.so.6.0.14]   74,527,645  ???:headerLoad [/usr/lib/librpmdb-5.3.so]   74,004,436  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::InstalledSize() [/usr/lib/libapt-pkg.so.4.0.0]   73,315,644  ???:pthread_mutex_lock [/lib/i686/libpthread-2.12.1.so]   70,992,297  ???:0x00030320 [/usr/lib/librpmio-5.3.so]   70,410,794  apt-pkg/pkgcachegen.cc:pkgCacheGenerator::NewPackage(pkgCache::PkgIterator&, std::string) [/usr/lib/libapt-pkg.so.4.0.0]   69,331,719  /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:UrpmListSection::FindS(char const*) const   69,242,764  ???:pthread_mutex_unlock [/lib/i686/libpthread-2.12.1.so]   67,635,159  ???:__memcpy_ssse3 [/lib/i686/libc-2.12.1.so]   66,334,134  /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::MergeFileProvides(pkgCacheGenerator&, OpProgress&) const   66,334,134  apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::MergeFileProvides(pkgCacheGenerator&, OpProgress&) const [/usr/lib/libapt-pkg.so.4.0.0]   64,260,742  /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:RPMUrpmHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&)   61,862,902  apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Skip() [/usr/lib/libapt-pkg.so.4.0.0]   61,862,902  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Skip()   61,220,544  apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::GetSTag(rpmTag_e) [/usr/lib/libapt-pkg.so.4.0.0]   61,220,544  /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::GetSTag(rpmTag_e)   61,173,416  /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::UsePackage(pkgCache::PkgIterator, pkgCache::VerIterator)   60,816,626  /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListFile::Step(UrpmListSection&)   60,769,196  apt-pkg/rpm/urpmlistfile.cc:UrpmListFile::Step(UrpmListSection&) [/usr/lib/libapt-pkg.so.4.0.0]   60,500,429  ???:realloc [/lib/i686/libc-2.12.1.so]   59,604,792  apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::Scan(char const*, unsigned long) [/usr/lib/libapt-pkg.so.4.0.0]   59,178,448  apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const [/usr/lib/libapt-pkg.so.4.0.0]   59,029,078  apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Package() [/usr/lib/libapt-pkg.so.4.0.0]   57,653,136  ???:0x00016adf [/lib/i686/libc-2.12.1.so]   57,036,500  /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Architecture()   57,023,476  ???:__pthread_mutex_unlock_usercnt [/lib/i686/libpthread-2.12.1.so]   56,953,953  /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, std::string&, bool)   56,661,706  ???:__strcmp_ssse3 [/lib/i686/libc-2.12.1.so]   55,839,837  /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:RPMUrpmHandler::ParseDepends(char const*, char const*, std::string&, std::string&, std::string&)   55,319,467  apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, std::string&, bool) [/usr/lib/libapt-pkg.so.4.0.0]   55,021,484  apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, std::vector<std::string, std::allocator<std::string> >&, bool) [/usr/lib/libapt-pkg.so.4.0.0]   54,806,754  ???:0x00019dc0 [/usr/lib/librpmdb-5.3.so]   53,952,219  apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::Find(char const*, char const*&, char const*&) const [/usr/lib/libapt-pkg.so.4.0.0]   52,302,302  /home/agrr/apt-rpm/cmdline/cmdline.cc:cmdCacheFile::Sort()   52,126,507  cmdline/cmdline.cc:cmdCacheFile::Sort() [/usr/bin/apt-get]   52,076,308  apt-pkg/pkgcachegen.cc:pkgCacheGenerator::ListParser::NewDepends(pkgCache::VerIterator, std::string, std::string, unsigned int, unsigned int) [/usr/lib/libapt-pkg.so.4.0.0]   51,135,597  ???:rpmReadConfigFiles [/usr/lib/librpm-5.3.so]   50,354,050  ???:pthread_cond_broadcast@@GLIBC_2.3.2 [/lib/i686/libpthread-2.12.1.so]---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/rpm/rpmhandler.cc--------------------------------------------------------------------------------        Ir -- line 62 ----------------------------------------         .  // rpmsq.h here but it's not valid C++ in many existing rpm versions so          .  // just declare rpmsqCaught extern.. sigh.         .  #ifdef RPM_HAVE_RPMSQISCAUGHT         .  #include <rpm/rpmsq.h>         .  #else         .  extern sigset_t rpmsqCaught;         .           .  static int rpmsqIsCaught(int signum)         30  {        10  => ???:0x0002e057 (5x)        20     return sigismember(&rpmsqCaught, signum);     7,546  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       155  => ???:sigismember (5x)        20  }         .  #endif         .           .  // An attempt to deal with false zero epochs from repomd. With older rpm's we         .  // can only blindly trust the repo admin created the repository with options         .  // suitable for those versions. For rpm >= 4.2.1 this is linked with         .  // promoteepoch behavior - if promoteepoch is used then epoch hiding must         .  // not happen.         .  bool HideZeroEpoch;         .           .  extern map<string,int> rpmIndexSizes;         .           .  string RPMHandler::EVR()   261,120  {    52,224  => ???:0x0002e057 (26112x)   208,896     string e = Epoch();20,922,707  => apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::Epoch() (2397x)90,750,301  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Epoch() (23715x)   208,896     string v = Version();17,095,988  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::Version() (2397x)134,293,423  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Version() (23715x)   208,896     string r = Release();132,994,858  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Release() (23715x)17,485,668  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::Release() (2397x)   156,672     string evr = ""; 1,906,176  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (26112x)    78,336     if (e.empty() == true) {    33,558        evr = v + '-' + r;   434,757  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (4794x) 1,201,547  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (2397x)   166,005     } else if (HideZeroEpoch && e == "0") {   280,644        evr = v + '-' + r; 3,711,301  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (40092x) 8,254,713  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (20046x)         .     } else {   106,401        evr = e + ':' + v + '-' + r; 7,812,887  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (14676x)13,918,080  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (7338x)         .     }         .     return evr;   182,784  }         .           .  unsigned int RPMHandler::DepOp(rpmsenseFlags rpmflags) 2,533,020  {   506,604  => ???:0x0002e057 (253302x)         .     unsigned int Op = 0;         .     rpmsenseFlags flags = (rpmsenseFlags)(rpmflags & RPMSENSE_SENSEMASK);   506,604     if (flags == RPMSENSE_ANY) {   206,122        Op = pkgCache::Dep::NoOp;    94,360     } else if (flags & RPMSENSE_LESS) {     6,723        if (flags & RPMSENSE_EQUAL)    26,892  	  Op = pkgCache::Dep::LessEq;         .        else         .  	  Op = pkgCache::Dep::Less;    80,914     } else if (flags & RPMSENSE_GREATER) {     6,227        if (flags & RPMSENSE_EQUAL)    24,908  	  Op = pkgCache::Dep::GreaterEq;         .        else         .  	  Op = pkgCache::Dep::Greater;    68,460     } else if (flags & RPMSENSE_EQUAL) {    34,230        Op = pkgCache::Dep::Equals;         .     } else {         .        /* can't happen, right? */         .        _error->Error(_("Impossible flags %d in %s"), rpmflags, Name().c_str());         .     }         .           .     return Op; 1,519,812  }         .           .  bool RPMHandler::HasFile(const char *File)         .  {         .     if (*File == '\0')         .        return false;         .           .     vector<string> Files;         .     FileList(Files);-- line 132 ------------------------------------------ line 149 ----------------------------------------         .     for (vector<string>::iterator I = PkgFiles.begin(); I != PkgFiles.end(); I++) {         .        if ((*I).find(Mask) != string::npos) {         .  	 Files.push_back(*I);         .        }         .     }         .  }         .           .  bool RPMHandler::InternalDep(const char *name, const char *ver, rpmsenseFlags flag)  2,045,152  {   511,288  => ???:0x0002e057 (255644x)   511,288     if ((flag & RPMSENSE_RPMLIB)) {     2,341       rpmds rpmlibProv = NULL;         .       rpmds ds = rpmdsSingle(RPMTAG_PROVIDENAME,    21,069  			    name, ver?ver:NULL, flag); 9,277,481  => ???:rpmdsSingle (2341x)     9,364       rpmdsRpmlib(&rpmlibProv, NULL);     5,915  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)465,421,147  => ???:rpmdsRpmlib (2341x)    14,046       int res = rpmdsSearch(rpmlibProv, ds);   412,620  => ???:rpmdsSearch (2341x)    21,069       rpmdsFree(ds); 4,880,045  => ???:rpmioFreePoolItem (2341x)    14,046       rpmdsFree(rpmlibProv); 2,552,308  => ???:rpmioFreePoolItem (2341x)     9,364       if (res)         .  	return true;         .     }         .           .     /*TODO:         .     if ((flag & RPMSENSE_INTERP)) {         .       rpmds rpmlibProv = NULL;         .       rpmds ds = rpmdsSingle(RPMTAG_PROVIDENAME,         .  			    name, ver?ver:NULL, flag);-- line 174 ------------------------------------------ line 176 ----------------------------------------         .       int res = rpmdsSearch(rpmlibProv, ds);         .       rpmdsFree(ds);         .       rpmdsFree(rpmlibProv);         .       if (res)         .  	return true;         .     }*/         .           .     // uhhuh, any of these changing would require full cache rebuild... 1,270,360     if (strncmp(name, "getconf(", strlen("getconf(")) == 0)         .     {         .       rpmds getconfProv = NULL;         .       rpmds ds = rpmdsSingle(RPMTAG_PROVIDENAME,         .  			    name, ver?ver:NULL, flag);         .       rpmdsGetconf(&getconfProv, NULL);         .       int res = rpmdsSearch(getconfProv, ds);         .       rpmdsFree(ds);         .       rpmdsFree(getconfProv);         .       if (res)         .  	 return true;         .     }         .   1,268,247     if (strncmp(name, "cpuinfo(", strlen("cpuinfo(")) == 0)         .     {         1       rpmds cpuinfoProv = NULL;         .       rpmds ds = rpmdsSingle(RPMTAG_PROVIDENAME,         9  			    name, ver?ver:NULL, flag);     1,480  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    11,261  => ???:rpmdsSingle (1x)         4       rpmdsCpuinfo(&cpuinfoProv, NULL);     1,489  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 1,233,427  => ???:rpmdsCpuinfo (1x)         4       int res = rpmdsSearch(cpuinfoProv, ds);     1,473  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       604  => ???:rpmdsSearch (1x)         9       rpmdsFree(ds);       992  => ???:rpmioFreePoolItem (1x)         7       rpmdsFree(cpuinfoProv);     1,513  => ???:rpmioFreePoolItem (1x)         4       if (res)         .  	 return true;         .     }         .   1,269,394     if (strncmp(name, "sysinfo(", strlen("sysinfo(")) == 0)         .     {         .       rpmds sysinfoProv = NULL;         .       rpmds ds = rpmdsSingle(RPMTAG_PROVIDENAME,         .  			    name, ver?ver:NULL, flag);         .       rpmdsCpuinfo(&sysinfoProv, NULL);         .       int res = rpmdsSearch(sysinfoProv, ds);         .       rpmdsFree(ds);         .       rpmdsFree(sysinfoProv);         .       if (res)         .  	 return true;         .     }         .   1,267,395     if (strncmp(name, "uname(", strlen("uname(")) == 0)         .     {         .       rpmds unameProv = NULL;         .       rpmds ds = rpmdsSingle(RPMTAG_PROVIDENAME,         .  			    name, ver?ver:NULL, flag);         .       rpmdsUname(&unameProv, NULL);         .       int res = rpmdsSearch(unameProv, ds);         .       rpmdsFree(ds);         .       rpmdsFree(unameProv);         .       if (res)         .  	 return true;         .     }         .   3,231,930     if (strlen(name) > 5 && name[strlen(name)-1] == ')' && 7,091,905  => ???:__strlen_sse2 (253302x)   238,944         ((strchr("Rr_", name[0]) != NULL &&    26,949  	 strchr("Ww_", name[1]) != NULL &&         6  	 strchr("Xx_", name[2]) != NULL &&         .  	 name[3] == '(') ||   358,416  	 strncmp(name, "exists(", strlen("exists(")) == 0 ||   358,416  	 strncmp(name, "executable(", strlen("executable(")) == 0 ||   358,416  	 strncmp(name, "readable(", strlen("readable(")) == 0 ||   358,416  	 strncmp(name, "writable(", strlen("writable("))== 0 ))         .     {         .        int res = rpmioAccess(name, NULL, X_OK);         .        if (res == 0)     2,342  	 return true;         .     }         .           .     /* TODO         .      * - /etc/rpm/sysinfo provides         .      * - macro probe provides         .      * - actually implement soname() and access() dependencies         .      */ 2,029,172     if (strncmp(name, "soname(", strlen("soname(")) == 0)         .     {         .        cout << "FIXME, ignoring soname() dependency: " << name << endl;         .        return true;         .     }   253,302     return false; 1,533,864  }         .           .  bool RPMHandler::PutDep(const char *name, const char *ver, rpmsenseFlags flags,          .  			unsigned int Type, vector<Dependency*> &Deps) 2,556,440  {   511,288  => ???:0x0002e057 (255644x) 2,300,796     if (InternalDep(name, ver, flags) == true) {510,382,546  => apt-pkg/rpm/rpmhandler.cc:RPMHandler::InternalDep(char const*, char const*, evrFlags_e) (255644x)     1,707  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)         .        return true;         .     }         .     506,604     if (Type == pkgCache::Dep::Depends) {   369,666        if (flags & RPMSENSE_PREREQ)         .  	 Type = pkgCache::Dep::PreDepends;   369,666        else if (flags & RPMSENSE_MISSINGOK)         .  	 Type = pkgCache::Dep::Suggests;         .        else         .  	 Type = pkgCache::Dep::Depends;         .     }         .   1,013,208     Dependency *Dep = new Dependency;34,253,939  => ???:operator new(unsigned int) (253302x)         .     Dep->Name = name;   759,906     Dep->Version = ver;         .   2,786,322     if (HideZeroEpoch && Dep->Version.substr(0, 2) == "0:") {11,208,092  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (253302x)    18,009        Dep->Version = Dep->Version.substr(2);    46,023  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2001x)         .     }         .   1,773,114     Dep->Op = DepOp(flags);       795  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 5,614,876  => apt-pkg/rpm/rpmhandler.cc:RPMHandler::DepOp(evrFlags_e) (253302x)   759,906     Dep->Type = Type;         .     Deps.push_back(Dep);         .     return true; 1,789,508  }         .           .  string RPMHdrHandler::Epoch()    19,176  {     4,794  => ???:0x0002e057 (2397x)         .     uint32_t val;    23,970     ostringstream epoch("");   174,981  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (2397x)    23,970     raptHeader h(HeaderP);   467,415  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::~raptHeader() (2397x)   469,812  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::raptHeader(headerToken_s*) (2397x)         .      19,176     if (h.getTag(RPMTAG_EPOCH, val)) {       795  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)13,196,830  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, unsigned int&) (2397x)         .        epoch << val;         .     }         .     return epoch.str();    16,779  }         .           .  off_t RPMHdrHandler::GetITag(rpmTag Tag)     5,344  {     1,336  => ???:0x0002e057 (668x)       668     uint32_t val = 0;     5,344     raptHeader h(HeaderP);   130,260  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::~raptHeader() (668x)   130,928  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::raptHeader(headerToken_s*) (668x)         .       4,008     h.getTag(Tag, val);  3,791,725  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, unsigned int&) (668x)       668     return val;     4,676  }         .           .  string RPMHdrHandler::GetSTag(rpmTag Tag)    76,374  {    16,972  => ???:0x0002e057 (8486x)    50,916     string str = "";   619,478  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (8486x)    67,888     raptHeader h(HeaderP); 1,656,960  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::~raptHeader() (8486x) 1,665,417  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::raptHeader(headerToken_s*) (8486x)     2,928  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)         .      50,916     h.getTag(Tag, str);       813  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)56,953,953  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, std::string&, bool) (8486x)         .     return str;    59,402  }         .           .           .  bool RPMHdrHandler::PRCO(unsigned int Type, vector<Dependency*> &Deps)    16,912  {     4,228  => ???:0x0002e057 (2114x)         .     rpmTag deptype = RPMTAG_REQUIRENAME;    12,684     switch (Type) {         .        case pkgCache::Dep::Depends:       668  	 deptype = RPMTAG_REQUIRENAME;         .  	 break;         .        case pkgCache::Dep::Obsoletes:     1,336  	 deptype = RPMTAG_OBSOLETENAME;         .  	 break;         .        case pkgCache::Dep::Conflicts:       668  	 deptype = RPMTAG_CONFLICTNAME;       668  	 break;         .        case pkgCache::Dep::Provides:        55  	 deptype = RPMTAG_PROVIDENAME;        55  	 break;         .        case pkgCache::Dep::Suggests:        55  	 deptype = RPMTAG_SUGGESTSNAME;        55  	 break;         .  #if 0 // Enhances dep type is not even known to apt, sigh..         .        case pkgCache::Dep::Enhances:         .  	 deptype = RPMTAG_ENHANCES;         .  	 break;         .  #endif         .        default:         .  	 /* can't happen... right? */         .  	 return false;         .  	 break;         .     }         .     rpmds ds = NULL;    14,798     ds = rpmdsNew(HeaderP, deptype, 0);     7,141  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)59,434,369  => ???:rpmdsNew (2114x)     5,263     if (ds != NULL) {    57,460        while (rpmdsNext(ds) >= 0) {45,399,695  => ???:rpmdsNext (14365x)     1,441  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   252,434  	 PutDep(rpmdsN(ds), rpmdsEVR(ds), rpmdsFlags(ds), Type, Deps);496,041,237  => apt-pkg/rpm/rpmhandler.cc:RPMHandler::PutDep(char const*, char const*, evrFlags_e, unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) (13286x)   279,006  => ???:rpmdsN (13286x)     4,275  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (3x)   186,004  => ???:rpmdsEVR (13286x)   186,004  => ???:rpmdsFlags (13286x)         .        }         .     }    14,798     rpmdsFree(ds); 1,268,309  => ???:rpmioFreePoolItem (2114x)     2,114     return true;    12,684  }         .  #else         .  {         .     vector<string> names, versions;         .     vector<uint32_t> flags;         .     rpmTag deptag, depver, depflags;         .     raptHeader h(HeaderP);         .           .     switch (Type) {-- line 371 ------------------------------------------ line 406 ----------------------------------------         .  	 ni++; vi++; fi++;         .        }         .     }         .     return true;         .  }         .  #endif         .           .  bool RPMHdrHandler::FileList(vector<string> &FileList)     4,291  {     1,226  => ???:0x0002e057 (613x)     4,904     raptHeader h(HeaderP);   119,535  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::~raptHeader() (613x)   120,148  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::raptHeader(headerToken_s*) (613x)     3,678     h.getTag(RPMTAG_OLDFILENAMES, FileList); 3,503,264  => /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, std::vector<std::string, std::allocator<std::string> >&, bool) (613x)         .     // it's ok for a package not have files          .     return true;      3,678  }         .           .  bool RPMHdrHandler::ChangeLog(vector<ChangeLogEntry *> &ChangeLogs)         .  {         .     vector<string> names, texts;         .     vector<uint32_t> times;         .     raptHeader h(HeaderP);         .           .     if (h.getTag(RPMTAG_CHANGELOGTIME, times)) {-- line 427 ------------------------------------------ line 727 ----------------------------------------         .     MD5Summation MD5;         .     FileFd File(sFilePath, FileFd::ReadOnly);         .     MD5.AddFD(File.Fd(), File.Size());         .     File.Close();         .     return MD5.Result().Value();         .  }         .           .          10  RPMDBHandler::RPMDBHandler(bool WriteLock)         2  => ???:0x0002e057 (1x)         5     : Handler(0), WriteLock(WriteLock)         .  {         1     RpmIter = NULL;        15     string Dir = _config->Find("RPM::RootDir");        17  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)     3,486  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::Find(char const*, char const*) const (1x)         .           3     rpmReadConfigFiles(NULL, NULL); 2,791,427  => ???:rpmReadConfigFiles (1x)         8     ID = DataPath(false);    39,282  => apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::DataPath(bool) (1x)         .           3     RPMPackageData::Singleton()->InitMinArchScore();   219,985  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmpackagedata.cc:RPMPackageData::Singleton() (1x)    19,779  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)     3,695  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmpackagedata.cc:RPMPackageData::InitMinArchScore() (1x)         .           .     // Everytime we open a database for writing, it has its         .     // mtime changed, and kills our cache validity. As we never         .     // change any information in the database directly, we will         .     // restore the mtime and save our cache.         .     struct stat St;         7     stat(DataPath(false).c_str(), &St);    13,105  => apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::DataPath(bool) (1x)         3     DbFileMtime = St.st_mtime;         .           3     Handler = rpmtsCreate();     1,473  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    25,725  => ???:rpmtsCreate (1x)         3     rpmtsSetVSFlags(Handler, (pgpVSFlags_e)-1);     1,561  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        11  => ???:rpmtsSetVSFlags (1x)         6     rpmtsSetRootDir(Handler, Dir.c_str());     1,544  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       303  => ???:rpmtsSetRootDir (1x)         9     RpmIter = rpmtsInitIterator(Handler, (rpmTag)RPMDBI_PACKAGES, NULL, 0); 3,226,758  => ???:rpmtsInitIterator (1x)     1,576  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)         2     if (RpmIter == NULL) {         .        _error->Error(_("could not create RPM database iterator"));         .        return;         .     }         .     // iSize = rpmdbGetIteratorCount(RpmIter);         .     // This doesn't seem to work right now. Code in rpm (4.0.4, at least)         .     // returns a 0 from rpmdbGetIteratorCount() if rpmtsInitIterator() is         .     // called with RPMDBI_PACKAGES or with keyp == NULL. The algorithm         .     // below will be used until there's support for it.         2     iSize = 0;         .     rpmmi countIt;         8     countIt = rpmtsInitIterator(Handler, (rpmTag)RPMDBI_PACKAGES, NULL, 0);     1,769  => ???:rpmtsInitIterator (1x)     2,464     while (rpmmiNext(countIt) != NULL)     1,642  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)39,445,998  => ???:rpmmiNext (616x)     1,230        iSize++;         7     rpmmiFree(countIt);    14,510  => ???:rpmioFreePoolItem (1x)     2,144  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)         .           4     rpmIndexSizes[ID] = iSize;         .           .           .     // Restore just after opening the database, and just after closing.         2     if (WriteLock) {         .        struct utimbuf Ut;         3        Ut.actime = DbFileMtime;         1        Ut.modtime = DbFileMtime;        12        utime(DataPath(false).c_str(), &Ut);       175  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)     7,384  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        11  => ???:utime (1x)    13,234  => apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::DataPath(bool) (1x)         .     }         6  }         .          20  RPMDBHandler::~RPMDBHandler()         2  => ???:0x0002e057 (1x)         .  {         3     if (RpmIter != NULL)         7        rpmmiFree(RpmIter);   118,854  => ???:rpmioFreePoolItem (1x)         .           .     /*         .      * If termination signal, do nothing as rpmdb has already freed         .      * our ts set behind our back and rpmtsFree() will crash and burn with a         .      * doublefree within rpmlib.         .      * There's a WTF involved as rpmCheckSignals() actually calls exit()         .      * so we shouldn't even get here really?!         .      */        12     if (rpmsqIsCaught(SIGINT) ||      7,781  => apt-pkg/rpm/rpmhandler.cc:rpmsqIsCaught(int) (1x)         2         rpmsqIsCaught(SIGQUIT) ||        47  => apt-pkg/rpm/rpmhandler.cc:rpmsqIsCaught(int) (1x)         2         rpmsqIsCaught(SIGHUP) ||        47  => apt-pkg/rpm/rpmhandler.cc:rpmsqIsCaught(int) (1x)         2         rpmsqIsCaught(SIGTERM) ||        47  => apt-pkg/rpm/rpmhandler.cc:rpmsqIsCaught(int) (1x)         2         rpmsqIsCaught(SIGPIPE)) {        47  => apt-pkg/rpm/rpmhandler.cc:rpmsqIsCaught(int) (1x)         .        /* do nothing */         3     } else if (Handler != NULL) {         8        rpmtsFree(Handler);   114,047  => ???:rpmioFreePoolItem (1x)         .     }         .           .     // Restore just after opening the database, and just after closing.         2     if (WriteLock) {         .        struct utimbuf Ut;         2        Ut.actime = DbFileMtime;         1        Ut.modtime = DbFileMtime;        12        utime(DataPath(false).c_str(), &Ut);       158  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)        11  => ???:utime (1x)    16,329  => apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::DataPath(bool) (1x)         .     }        15  }   143,224  => apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::~RPMDBHandler()'2 (1x)       678  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       120  => ???:operator delete(void*) (1x)         .           .  string RPMDBHandler::DataPath(bool DirectoryOnly)        80  {        16  => ???:0x0002e057 (8x)        64     string File = "packages.rpm";     2,463  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (8x)        40     char *tmp = (char *) rpmExpand("%{_dbpath}", NULL);    38,326  => ???:rpmExpand (8x)    19,776  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        96     string DBPath(_config->Find("RPM::RootDir")+tmp);    26,264  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::Find(char const*, char const*) const (8x)        16     free(tmp);     7,358  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       509  => ???:free (8x)         .          40     if (rpmExpandNumeric("%{_dbapi}") >= 3)     2,135  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    29,511  => ???:rpmExpandNumeric (8x)        16        File = "Packages";        16     if (DirectoryOnly == true)         .         return DBPath;         .     else        80         return DBPath+"/"+File;     1,264  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (8x)     8,267  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)    17,565  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (8x)        56  }         .       3,696  bool RPMDBHandler::Skip()     9,856  {     2,464  => ???:0x0002e057 (1232x)     3,696     if (RpmIter == NULL)     1,232         return false;     3,696     HeaderP = rpmmiNext(RpmIter);79,509,910  => ???:rpmmiNext (1232x)     4,928     iOffset = rpmmiInstance(RpmIter);     1,706  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    51,744  => ???:rpmmiInstance (1232x)         .     if (HeaderP == NULL)         .        return false;         .     return true;     6,160  }         .           .  bool RPMDBHandler::Jump(off_t Offset)         .  {         .     iOffset = Offset;         .     // rpmdb indexes are hardcoded uint32_t, the size must match here         .     uint32_t rpmOffset = iOffset;         .     if (RpmIter == NULL)         .        return false;-- line 849 ------------------------------------------ line 865 ----------------------------------------         .     rpmmiFree(RpmIter);         .     RpmIter = rpmtsInitIterator(Handler, RPMTAG_NVRA, PkgName.c_str(), 0);         .           .     HeaderP = rpmmiNext(RpmIter);         .     return (HeaderP != NULL);         .  }         .           .  void RPMDBHandler::Rewind()        16  {         4  => ???:0x0002e057 (2x)         6     if (RpmIter == NULL)         .        return;        14     rpmmiFree(RpmIter);     6,154  => ???:rpmioFreePoolItem (2x)        14     RpmIter = rpmtsInitIterator(Handler, (rpmTag)RPMDBI_PACKAGES, NULL, 0);     2,436  => ???:rpmtsInitIterator (2x)         2     iOffset = 0;        10  }         .           .  #ifdef APT_WITH_REPOMD         .  RPMRepomdHandler::RPMRepomdHandler(string File): RPMHandler(),         .        Primary(NULL), Root(NULL), PrimaryPath(File), HavePrimary(false)         .  {         .     string DBBase = PrimaryPath.substr(0, File.size() - strlen("primary.xml"));         .     FilelistPath = DBBase + "filelists.xml";         .     OtherPath = DBBase + "other.xml";-- line 887 ------------------------------------------ line 1719 ----------------------------------------         .  #endif /* WITH_SQLITE3 */         .           .  #endif /* APT_WITH_REPOMD */         .           .  /**         .   * Constructor         .   *         .   */       136  RPMUrpmHandler::RPMUrpmHandler(string SynthesisFilename):  File(SynthesisFilename, FileFd::ReadOnly), Tags(&File, (size_t)File.Size())         8  => ???:0x0002e057 (4x)       757  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       108  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (4x)     1,088  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::Size() (4x)     2,759  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListFile::UrpmListFile(FileFd*, unsigned int) (4x)         .  {         8     synthesis_filename = SynthesisFilename;        16     ID = SynthesisFilename;        24     iSize = (off_t)File.Size();       544  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::Size() (4x)        12     rpmIndexSizes[SynthesisFilename] = iSize;         .          24  }         .           .  /**         .   * Destructor         .   */         .         104  RPMUrpmHandler::~RPMUrpmHandler()         8  => ???:0x0002e057 (4x)         .  {        60  }       703  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)     2,005  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::~RPMUrpmHandler()'2 (4x)       647  => ???:operator delete(void*) (4x)         .           .  bool RPMUrpmHandler::Jump(off_t Offset)         .  {         .     return Tags.Jump(Section, Offset);         .  }         .           .           .  bool RPMUrpmHandler::Skip()   166,047  {    47,442  => ???:0x0002e057 (23721x)         .      47,442     iOffset = Tags.Offset();   118,605     Tags.Step(Section);     1,595  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)60,816,626  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListFile::Step(UrpmListSection&) (23721x)    94,884     if(_error->PendingError() == true)   450,756  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (23721x)         .     {         9        _error->Discard();       888  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:GlobalError::Discard() (3x)       730  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        57  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (3x)         3        return false;         .     }    23,721     return true;    94,884  }         .           .           6  void RPMUrpmHandler::Rewind(){         6     iOffset = 0;         .     //cleanLines();         6  }         .           .  /**         .   * Accessor functions         .   */         .           .  bool RPMUrpmHandler::PRCO(unsigned int Type, vector<Dependency*> &Deps)   569,160  {   126,480  => ???:0x0002e057 (63240x)    63,240     const char *Start = NULL;    63,240     const char *Stop = NULL;         .     409,415     switch (Type)         .     {         .        case pkgCache::Dep::Depends:    79,050           if (Section.Find("requires",Start,Stop) == false)         .              return true;         .           break;         .        case pkgCache::Dep::Conflicts:    94,860           if (Section.Find("conflicts",Start,Stop) == false)         .              return true;         .           break;         .        case pkgCache::Dep::Obsoletes:    94,860           if (Section.Find("obsoletes",Start,Stop) == false)         .              return true;         .           break;         .        case pkgCache::Dep::Provides:    47,430           if (Section.Find("provides",Start,Stop) == false)         .              return true;         .           break;         .        case pkgCache::Dep::Suggests:   426,870           if (Section.Find("suggests",Start,Stop) == false)42,183,108  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::Find(char const*, char const*&, char const*&) const (63240x)    33,265              return true;         .  	 break;         .     }    89,925     string Package; 4,950,501  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (29975x)    89,925     string Version; 2,479,637  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (29975x)    59,950     string Op;12,308,433  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (29975x)         .           .     while(true)         .     { 2,423,580        Start = ParseDepends(Start,Stop,Package,Version,Op);288,834,511  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::ParseDepends(char const*, char const*, std::string&, std::string&, std::string&) (242358x)       944  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   484,716        if (Start == 0)         .           return _error->Error("Problem parsing dependency - Type %d for package %s",Type, Name().c_str());         .           .        rpmsenseFlags RpmOp;         .     484,716        if (Op == "==")   242,358           RpmOp = (rpmsenseFlags)RPMSENSE_EQUAL;   417,796        else if (Op == ">=")    208,898           RpmOp =  (rpmsenseFlags)(RPMSENSE_GREATER | RPMSENSE_EQUAL);   405,956        else if (Op == "> ")    202,978           RpmOp =  (rpmsenseFlags)RPMSENSE_GREATER;   405,874        else if (Op == "<=")    202,937           RpmOp = (rpmsenseFlags)(RPMSENSE_LESS | RPMSENSE_EQUAL);         .        else if (Op == "< ")    807,912           RpmOp =(rpmsenseFlags)RPMSENSE_LESS;         .        else          .           RpmOp=RPMSENSE_ANY;         .   2,665,938       PutDep(Package.c_str(), Version.c_str(), RpmOp, Type, Deps);299,365,189  => apt-pkg/rpm/rpmhandler.cc:RPMHandler::PutDep(char const*, char const*, evrFlags_e, unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) (242358x)     2,113  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)         .       //std::cerr << "inserted dep: "<< Package << " ver: "<<Version <<endl;         .     969,432        if (Start == Stop)         .           break;         .     }         .      29,975     return true;   442,680  }         .           .           .  // ListParser::ParseDepends - Parse a dependency element		/*{{{*/         .  // ---------------------------------------------------------------------         .  /* This parses the dependency elements out of a standard string in place,         .     bit by bit. */         .  /* TODO: Test this big mess, for gods sake!  */         .  const char * RPMUrpmHandler::ParseDepends(const char *Start,const char *Stop,         .  					string &Package,string &Ver,         .  					string &Op) 1,938,864  {   484,716  => ???:0x0002e057 (242358x)         .     // Parse off the package name         .     const char *I = Start;71,835,311     for (;I != Stop && isspace(*I) == 0 && *I != '[' && *I != ']' &&149,098,626  => ???:isspace (4219774x)         .  	*I != '@'; I++);         .           .     // Stash the package name 1,923,665     Package.assign(Start,I - Start);52,802,141  => ???:std::string::assign(char const*, unsigned int) (242358x)         .              .     // Parse a version   908,636     if (I != Stop && *I == '[')         .     {         .        // Skip the '('   695,880        for (I++; I != Stop && ((*I) == '*' || (*I) == ']' || (*I) == '['); I++);         .         270,358        if((*I) == '@' | I == Stop) //é o tal caso...         .        {    18,144        Ver = string();   154,224  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (9072x)         .        Op = "*";         .        }   137,184        else if ((*I)=='=' || (*I)=='>' ||(*I)=='<')         .        {   137,184            Op = string(I,I+2); 1,051,744  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (45728x)         .            I+=2;         .                     .            // Skip whitespace   860,670            for (;I != Stop && ( isspace(*I) != 0 ); I++); 1,549,206  => ???:isspace (86067x)         .            Start = I;         .             4,601,774            for (;I != Stop && *I != '[' && *I != ']'; I++); //This part is always right except on this stupid corner case:  kmod(aacraid)[== 1.1-5[2456]-ms]         .           .            if ((*I) == '[')           .            {       150                for (;I != Stop && *I != ']'; I++); /*Greatest hack ever, managed to not hardcode the actual corner case */        20                I++;        85                for (;I != Stop && *I != ']'; I++);         .            }         .            // Skip trailing whitespace         .            const char *End = I;         .               548,736            Ver = string(Start,End-Start); 1,051,744  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (45728x)11,793,674  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, unsigned int, std::allocator<char> const&) (45728x)    45,728            I++;         .        }         .     }         .     else         .     {   375,116        Ver = string(); 5,446,198  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (187558x)         .        Op = "*";         .     }         .           .        484,716     if (I == Stop)          .          return Stop;         .     else if((*I)=='@') 1,486,681       return I+1;         .     else return 0; 1,696,506  }         .           .           .  #if 0         .  									/*}}}*/         .  // ListParser::ParseDepends - Parse a dependency element		/*{{{*/         .  // ---------------------------------------------------------------------         .  /* This parses the dependency elements out of a standard string in place,         .     bit by bit. */-- line 1909 ------------------------------------------ line 2030 ----------------------------------------         .                 .        // HACK around bad package definitions         .        default:         .        Op = pkgCache::Dep::Equals;         .        break;         .     }         .     return I;         .  }   126,480  off_t RPMUrpmHandler::InstalledSize(){    31,620  => ???:0x0002e057 (15810x)         .     string tok[3];   284,580     tokenize(Section.FindS("info"),tok,3,RPMUrpmHandler::pkgDelimiter);13,584,192  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const (15810x)55,668,410  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::tokenize(std::string, std::string*, int, std::string&) (15810x)   221,340     return strtol(tok[2].c_str(), NULL, 0); 3,992,954  => ???:strtol (15810x)    94,860  }         .           .      79,080  string RPMUrpmHandler::Name(){    15,816  => ???:0x0002e057 (7908x)   126,528     return parsePkgName(Section.FindS("info"),PKGNAME);     2,681  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)36,339,752  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::parsePkgName(std::string, RPMUrpmHandler::infoToken) (7908x) 6,792,663  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const (7908x)    55,356  }         .           .  string RPMUrpmHandler::Summary(){         .           .     return Section.FindS("summary");         .  }         .           .  string RPMUrpmHandler::Arch()   395,280  {    79,056  => ???:0x0002e057 (39528x)   632,448     return parsePkgName(Section.FindS("info"),PKGARCH);175,139,206  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::parsePkgName(std::string, RPMUrpmHandler::infoToken) (39528x)34,229,906  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const (39528x)   276,696  }         .           .  string RPMUrpmHandler::Epoch()   213,435  {    47,430  => ???:0x0002e057 (23715x)         .           .     string tok[2];   569,160     tokenize(Section.FindS("info"),tok,2,RPMUrpmHandler::pkgDelimiter);20,370,745  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const (23715x)60,107,826  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::tokenize(std::string, std::string*, int, std::string&) (23715x)   118,575     return tok[1];   640,305  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (23715x)         .     166,005  }         .     173,910  string RPMUrpmHandler::Group(){    31,620  => ???:0x0002e057 (15810x)         .     string tok[4];   316,200     tokenize(Section.FindS("info"),tok,4,RPMUrpmHandler::pkgDelimiter);13,434,689  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const (15810x)62,235,429  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::tokenize(std::string, std::string*, int, std::string&) (15810x)   300,390     return tok[3];   426,870  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (15810x)   110,670  }         .     237,150  string RPMUrpmHandler::Version(){    47,430  => ???:0x0002e057 (23715x)   379,440     return parsePkgName(Section.FindS("info"),PKGVERSION);108,545,743  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::parsePkgName(std::string, RPMUrpmHandler::infoToken) (23715x)20,355,382  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const (23715x)   166,005  }         .     237,150  string RPMUrpmHandler::Release(){    47,430  => ???:0x0002e057 (23715x)   379,440     return parsePkgName(Section.FindS("info"),PKGRELEASE);107,270,763  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::parsePkgName(std::string, RPMUrpmHandler::infoToken) (23715x)20,343,370  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindS(char const*) const (23715x)   166,005  }         .           .  string RPMUrpmHandler::FileName(){         .     string tok[2];         .     tokenize(Section.FindS("info"),tok,2,RPMUrpmHandler::pkgDelimiter);         .     return string(tok[0]) + ".rpm";         .  }         .           .  bool RPMUrpmHandler::HasFile(const char *File ){         .     return true;         .  }         .      47,430  off_t RPMUrpmHandler::FileSize(){    15,810  => ???:0x0002e057 (7905x)         .     /*Temporary workaround for obsolete code on perl-URPM (see urpm.xs function sigsize_to_filesize ())          .      * We really need accurate filesize for rpm packages */         .     const int rpmheaderOffset = 16;          .      63,240     return Section.FindI("filesize") + rpmheaderOffset;       777  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 6,609,378  => /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::FindI(char const*, long) const (7905x)         .      31,620  }         .           .  /*         .   * Stub implementations present just to please the pkgcachegenerator         .   */         .           .  string RPMUrpmHandler::Vendor(){         .           .     return "";-- line 2107 ------------------------------------------ line 2134 ----------------------------------------         .     return "";         .  }         .           .  /*         .   *TODO: rever para confirmar se nao quebrou         .   *         .   */         .  string RPMUrpmHandler::parsePkgName(string p,infoToken t)   758,928  {   189,732  => ???:0x0002e057 (94866x)         .     string tok[3]; 1,328,124     tokenize(p,tok,3,RPMUrpmHandler::pkgDelimiter);       852  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 5,122,716  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (94866x)334,085,912  => apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::tokenize(std::string, std::string*, int, std::string&) (94866x)   379,464     string pkgname(tok[0]); 2,561,358  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (94866x)         .     int pkglen=pkgname.length();         .     int index1,index2,index3;    94,866     index1= pkgname.find_last_of('.');   189,732     if(t==PKGARCH)    39,528        return pkgname.substr(index1+1,pkglen-index1); //Arch   166,014     index2=pkgname.find_last_of('-',index1-1);   110,676     if(t==PKGRELEASE)    23,715        return pkgname.substr(index2+1,index1-index2-1); //Release    94,869     index3=pkgname.find_last_of('-',index2-1);    63,246     if(t==PKGVERSION)   284,589        return pkgname.substr(index3+1,index2-index3-1); //Version    23,724     if(t==PKGNAME)     7,908        return pkgname.substr(0,index3);			//Name         .     853,794     return "";   664,062  }         .           .  /*          .   * Initialization of static constants         .   *         .   */        13  string RPMUrpmHandler::DEPSREGEX = "([^[]*)(\\[\\*\\]){0,1}\\[([<>=]+) (.+?)\\]";       164  => ???:__cxa_atexit (1x)       764  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)        14  string RPMUrpmHandler::pkgDelimiter = "@";        82  => ???:__cxa_atexit (1x)       354  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)         .  CachedRegex RPMUrpmHandler::requiresRegex = CachedRegex(DEPSREGEX.c_str());         .           .           .  /* Parse the elemnents of a provides, requires, obsoletes or conflicts         .   * version restriction         .   *         .   * There are 3 cases:         .   ** No version (shared libraries, features, etc.)-- line 2176 ------------------------------------------ line 2326 ----------------------------------------         .           .  	//regfree(&Pattern); //Static variables should never be freed !         .  	return Return;         .  }         .           .           .  void RPMUrpmHandler::tokenize(string str, string *array, int n_matches,         .        string &delimiters) 1,502,010  {   300,402  => ???:0x0002e057 (150201x)         .     string::size_type lastPos = str.find_first_not_of(delimiters, 0);         .     // Find first "non-delimiter".         .     string::size_type pos = str.find_first_of(delimiters, lastPos);   150,195     int i=0; 3,833,955     while ((string::npos != pos || string::npos != lastPos) && i < n_matches)         .     {         .        // Found a token, add it to the vector. 1,778,625        array[i]=str.substr(lastPos, pos - lastPos);         .        // Skip delimiters.  Note the "not_of"         .        lastPos = str.find_first_not_of(delimiters, pos);         .        // Find next "non-delimiter"         .        pos = str.find_first_of(delimiters, lastPos);   426,870        i++;         .     }   901,206  }         .           .  vector<string>* RPMUrpmHandler::tokenize(string &str, string &delimiters)         .  {         .  	vector<string>* tokens= new vector<string>();         .      //Good maximum size guess to avoid a lot of reallocations          .      //TODO: Needs testing to ensure it never breaks in practice         .      unsigned int MAX_SIZE = str.size()/4;         .      tokens->reserve(MAX_SIZE);-- line 2357 ------------------------------------------ line 2366 ----------------------------------------         .          // Found a token, add it to the vector.         .          tokens->push_back(str.substr(lastPos, pos - lastPos));         .          // Skip delimiters.  Note the "not_of"         .          lastPos = str.find_first_not_of(delimiters, pos);         .          // Find next "non-delimiter"         .          pos = str.find_first_of(delimiters, lastPos);         .      }         .      return tokens;   206,802  }         2  => ???:0x0002e057 (1x)         .           .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: cmdline/cmdline.cc--------------------------------------------------------------------------------       Ir -- line 189 ----------------------------------------        .        default: return "";        .     }        .  }        .          .  // SigWinch - Window size change signal handler                         /*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  void SigWinch(int)        3  {        .     // Riped from GNU ls        .  #ifdef TIOCGWINSZ        .     struct winsize ws;        .         10     if (ioctl(1, TIOCGWINSZ, &ws) != -1 && ws.ws_col >= 5)    7,366  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       12  => ???:ioctl (1x)        3        ScreenWidth = ws.ws_col - 1;        .  #endif        2  }        .          .  // CacheFile::NameComp - QSort compare by name                          /*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  pkgCache *cmdCacheFile::SortCache = 0;        .  int cmdCacheFile::NameComp(const void *a,const void *b)2,316,400  {4,053,700     if (*(pkgCache::Package **)a == 0 || *(pkgCache::Package **)b == 0)        .        return *(pkgCache::Package **)a - *(pkgCache::Package **)b;        .          .     const pkgCache::Package &A = **(pkgCache::Package **)a;        .     const pkgCache::Package &B = **(pkgCache::Package **)b;        .  4,632,800     return strcmp(SortCache->StrP + A.Name,SortCache->StrP + B.Name);    7,424  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)20,622,271  => ???:__strcmp_ssse3 (579100x)  579,100  }        .                                                                          /*}}}*/        .  // CacheFile::Sort - Sort by name                                       /*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  void cmdCacheFile::Sort()        6  {        3     delete [] List;        6     List = new pkgCache::Package *[Cache->Head().PackageCount];   22,732  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    1,497  => ???:operator new[](unsigned int) (1x)        7     memset(List,0,sizeof(*List)*Cache->Head().PackageCount);    7,431  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   19,271  => ???:__memset_sse2 (1x)        1     pkgCache::PkgIterator I = Cache->PkgBegin();  175,786     for (;I.end() != true; I++)    1,003  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)1,975,341  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::PkgIterator::operator++(int) (43947x)  175,784        List[I->ID] = I;        .          1     SortCache = *this;        8     qsort(List,Cache->Head().PackageCount,sizeof(*List),NameComp);50,655,819  => ???:qsort (1x)    7,398  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        5  }        .          9  cmdCacheFile::~cmdCacheFile()      858  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  456,826  => /home/agrr/apt-rpm/apt-pkg/cachefile.cc:pkgCacheFile::~pkgCacheFile() (1x)        .  {        3     if (List) {        2        delete [] List;    7,767  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       96  => ???:operator delete[](void*) (1x)        .     }        3  }        .          .  // ShowBroken - Debugging aide						/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This prints out the names of all the packages that are broken along        .     with the name of each each broken dependency and a quite version         .     description.        .             .     The output looks like:        .   The following packages have unmet dependencies:        .       exim: Depends: libc6 (>= 2.1.94) but 2.1.3-10 is to be installed        .             Depends: libldap2 (>= 2.0.2-2) but it is not going to be installed        .             Depends: libsasl7 but it is not going to be installed           .   */        .  void ShowBroken(ostream &out,cmdCacheFile &Cache,bool Now,pkgDepCache::State *State)        9  {        6     out << _("The following packages have unmet dependencies:") << endl;    6,518  => ???:gettext (1x)    8,844  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    3,988  => ???:std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*) (1x)  219,735     for (unsigned J = 0; J < Cache->Head().PackageCount; J++)        .     {  175,784        pkgCache::PkgIterator I(Cache,Cache.List[J]);        .           87,892        if (Now == true)        .        {   87,892  	 if (Cache[I].NowBroken() == false)        .  	    continue;        .        }        .        else        .        {        .  	 if (Cache[I].InstBroken() == false)        .  	    continue;        .        }        .                .        // Print out each package and the failed dependencies        .        out <<"  " <<  I.Name() << ":";       45        size_t Indent = strlen(I.Name()) + 3;      236  => ???:__strlen_sse2 (9x)        .        bool First = true;        .        pkgCache::VerIterator Ver;        .               36        if (Now == true)        .  	 Ver = I.CurrentVer();        .        else        .  	 Ver = Cache[I].InstVerIter(Cache);        .               18        if (Ver.end() == true)        .        {        .  	 out << endl;        .  	 continue;        .        }        .                .        for (pkgCache::DepIterator D = Ver.DependsList(); D.end() == false;)        .        {        .  	 // Compute a single dependency element (glob or)        .  	 pkgCache::DepIterator Start;        .  	 pkgCache::DepIterator End;      798  	 D.GlobOr(Start,End);    1,162  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    6,594  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::DepIterator::GlobOr(pkgCache::DepIterator&, pkgCache::DepIterator&) (114x)        .          .           // CNC:2003-02-22 - IsImportantDep() currently calls IsCritical(), so        .           //		     these two are currently doing the same thing. Check        .           //		     comments in IsImportantDep() definition.        .  #if 0        .  	 if (Cache->IsImportantDep(End) == false)        .  	    continue;        .  #else      342  	 if (End.IsCritical() == false)        .  	    continue;        .  #endif        .  	       228  	 if (Now == true)        .  	 {      456  	    if ((Cache[End] & pkgDepCache::DepGNow) == pkgDepCache::DepGNow)        .  	       continue;        .  	 }        .  	 else        .  	 {        .  	    if ((Cache[End] & pkgDepCache::DepGInstall) == pkgDepCache::DepGInstall)        .  	       continue;        .  	 }        .  	         .  	 bool FirstOr = true;        .  	 while (1)        .  	 {       22  	    if (First == false)      104  	       for (unsigned J = 0; J != Indent; J++)        .  		  out << ' ';       29  	    First = false;        .          6  	    if (FirstOr == false)        .  	    {        .  	       for (size_t J = 0; J != strlen(End.DepType()) + 3; J++)        .  		  out << ' ';        .  	    }        .  	    else        .  	       out << ' ' << End.DepType() << ": ";      228  	    FirstOr = false;        .  	            .  	    out << Start.TargetPkg().Name();        .  	         .  	    // Show a quick summary of the version requirements       21  	    if (Start.TargetVer() != 0)        .  	       out << " (" << Start.CompType() << " " << Start.TargetVer() << ")";        .  	            .  	    /* Show a summary of the target package if possible. In the case        .  	       of virtual packages we show nothing */	         .  	    pkgCache::PkgIterator Targ = Start.TargetPkg();       44  	    if (Targ->ProvidesList == 0)        .  	    {        .  	       out << ' ';        .  	       pkgCache::VerIterator Ver = Cache[Targ].InstVerIter(Cache);        .  	       if (Now == true)        .  		  Ver = Targ.CurrentVer();        .  	       	            .  	       if (Ver.end() == false)        .  	       {-- line 355 ------------------------------------------ line 367 ----------------------------------------        .  		     else        .  			out << _("but it is a virtual package");        .  		  }		          .  		  else        .  		     out << (Now?_("but it is not installed"):_("but it is not going to be installed"));        .  	       }	               .  	    }        .  	           22  	    if (Start != End)        .  	       out << _(" or");        .  	    out << endl;        .  	           22  	    if (Start == End)        .  	       break;        .  	    Start++;        .  	 }	         .        }	            .     }           6  }        .  									/*}}}*/        .  // ShowNew - Show packages to newly install				/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  void ShowNew(ostream &out,cmdCacheFile &Cache,pkgDepCache::State *State)        .  {        .     /* Print out a list of packages that are going to be installed extra        .        to what the user asked */-- line 393 ------------------------------------------ line 1990 ----------------------------------------        .        for (; F != ChangeLog.end(); F++) {        .  	 ptm = localtime(&(*F)->Time);        .  	 strftime(buf, sizeof(buf), "%a %b %d %Y", ptm);        .  	 cout << "* " << buf << " " << (*F)->Author << endl;        .  	 cout << (*F)->Text << endl << endl;        .        }        .     }        .     return true;  351,991  }        .          .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/rpm/rpmindexfile.cc--------------------------------------------------------------------------------    Ir -- line 31 ----------------------------------------     .  #include <apt-pkg/error.h>     .  #include <apt-pkg/strutl.h>     .  #include <apt-pkg/acquire-item.h>     .       .  #include <apti18n.h>     .       .  #include <sys/stat.h>     .  									/*}}}*/     5  vector<pkgRepository *> RepList; 1,066  => ???:__cxa_atexit (1x)     .       .  // Hack to avoid potentially very expensive CreateHandler() calls from     .  // indexfile progress reporting. It's only used for progress so it doesn't     .  // really matter if it's even accurate.     5  map<string,int> rpmIndexSizes;    82  => ???:__cxa_atexit (1x)     .       .       .  off_t rpmIndexFile::Size() const    72  {    16  => ???:0x0002e057 (8x)     .     off_t Res;    88     string IP = IndexPath();278,416  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::IndexPath() const (8x) 1,910  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (8x)     .      32     if (rpmIndexSizes.find(IP) == rpmIndexSizes.end()) {     3        RPMHandler *Handler = CreateHandler();39,974  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::CreateHandler() const (1x)     .        Res = Handler->Size();     4        delete Handler; 1,823  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::~RPMUrpmHandler() (1x)     .     } else {    14        Res = rpmIndexSizes[IP];     .     }     .     return Res;    56  }     .       .  									/*}}}*/     .       .       .  // rpmListIndex::Release* - Return the URI to the release file		/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  inline string rpmListIndex::ReleaseFile(string Type) const-- line 68 ------------------------------------------ line 599 ----------------------------------------     .    */     .     return true;     .  }     .  									/*}}}*/     .  // rpmUrpmIndex::Info - One liner describing the URPM index URI		/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  string rpmUrpmIndex::Info(string Type) const    27  {     6  => ???:0x0002e057 (3x)    90  	string Info = ::URI::SiteOnly(URI) + ' ' + Dist; 1,677  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (9x)   660  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    81  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (3x) 1,646  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (3x)14,798  => /home/agrr/apt-rpm/apt-pkg/contrib/strutl.cc:URI::SiteOnly(std::string) (3x)     .       .     Info += " ";     .     Info += Type;     .     return Info;    21  }     .  									/*}}}*/     .  // rpmUrpmIndex::Index* - Return the URI to the URPM index files		/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  inline string rpmUrpmIndex::IndexFile(string Type) const     .  {    42     return _config->FindDir("Dir::State::lists") +12,732  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (21x)   882  	  URItoFileName(IndexURI(Type));15,480  => apt-pkg/rpm/rpmindexfile.cc:rpmUrpmIndex::IndexURI(std::string) const (21x)599,138  => /home/agrr/apt-rpm/apt-pkg/contrib/strutl.cc:URItoFileName(std::string) (21x) 9,309  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (63x) 2,107  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)   567  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (21x)13,495  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (21x)109,206  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindDir(char const*, char const*) const (21x)     .  }     .       .       .  string rpmUrpmIndex::IndexURI(string Type) const   168  {    42  => ???:0x0002e057 (21x)    42     RPMPackageData *rpmdata = RPMPackageData::Singleton();   420  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmpackagedata.cc:RPMPackageData::Singleton() (21x)     .     string Res;     .       .     //Res = URI + Dist + ".cz";   294     Res = URI + Dist;   483  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (21x)12,771  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (21x)     .      84     if (rpmdata->HasIndexTranslation() == true)     .     {     .        map<string,string> Dict;     .        Dict["uri"] = URI;     .        Dict["dist"] = Dist;     .        Dict["sect"] = Section;     .        Dict["type"] = Type;     .        rpmdata->TranslateIndex(Res, Dict);     .     }     .       .     return Res;   147  }     .  									/*}}}*/     .  // rpmUrpmIndex::Exists - Check if the RPM index is available		/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  bool rpmUrpmIndex::Exists() const    45  {    10  => ???:0x0002e057 (5x)    55     return FileExists(IndexPath());208,134  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::IndexPath() const (5x) 1,072  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (5x)   675  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileExists(std::string) (5x)    35  }     .  									/*}}}*/     .  // rpmUrpmIndex::Describe - Give a descriptive path to the URPM index	/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  string rpmUrpmIndex::Describe(bool Short) const     .  {     .     char S[300];     .     if (Short == true)-- line 660 ------------------------------------------ line 739 ----------------------------------------     .     //"release");     .     return true;     .  }     .  									/*}}}*/     .  // rpmUrpmPkgIndex::Merge - Load the index file into a cache		/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  bool rpmUrpmPkgIndex::Merge(pkgCacheGenerator &Gen,OpProgress &Prog) const     9  {     2  => ???:0x0002e057 (1x)    11     string PackageFile = IndexPath();34,975  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::IndexPath() const (1x)    23  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)     4     RPMHandler *Handler = CreateHandler();37,347  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::CreateHandler() const (1x)     .      25     Prog.SubProgress(0,Info("primary"));   796  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2x) 5,951  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x) 2,494  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::SubProgress(unsigned long, std::string) (1x) 7,824  => apt-pkg/rpm/rpmindexfile.cc:rpmUrpmIndex::Info(std::string) const (1x)   283  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)    14     ::URI Tmp(URI);    23  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)    81  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (1x)    13     string pkgFileDescription = Tmp.Host+" "+ Section;  /* AG: Generate an adequate string for URPM repos eliminating old Debianism */   355  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2x)   548  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (1x)    28     if (Gen.SelectFile(PackageFile, pkgFileDescription, *this) == false)    46  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2x)   993  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)41,370  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::SelectFile(std::string, std::string, pkgIndexFile const&, unsigned long) (1x)    54  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (2x)     .     {     .        delete Handler;     .        return _error->Error(_("Problem with SelectFile %s"),PackageFile.c_str());     .     }     .       .     // Store the IMS information     .     pkgCache::PkgFileIterator File = Gen.GetCurFile();     .     struct stat St;     4     if (stat(PackageFile.c_str(),&St) != 0)     .     {     .        delete Handler;     .        return _error->Errno("stat",_("Failed to stat %s"), PackageFile.c_str());     .     }     2     File->Size = St.st_size;     2     File->mtime = St.st_mtime;     .       .     /*     .      * ALTERAR? a classe rpmUrpmListParser para que serve?     .      * estou a passar um  URPMHandler esperemos que nao colida     .      */     8     rpmListParser Parser(Handler);    71  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::rpmListParser(RPMHandler*) (1x) 1,489  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)   171  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::~rpmListParser() (1x)     3     if (_error->PendingError() == true)    19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)     .     {     .        delete Handler;     .        return _error->Error(_("Problem opening %s"),PackageFile.c_str());     .     }     .       7     if (Gen.MergeList(Parser) == false) 1,171  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)1,927,476,114  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::MergeList(pkgCacheGenerator::ListParser&, pkgCache::VerIterator*) (1x)     .     {     .        delete Handler;     .        return _error->Error(_("Problem with MergeList %s"),PackageFile.c_str());     .     }     .       7     delete Handler;   412  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::~RPMUrpmHandler() (1x)     .       .     // Check the release file     .     // This has to be uncomented for supporting URPM release file - hdlists?     .     /*     .     string RelFile = ReleasePath();     .       .     if (FileExists(RelFile) == true)     .     {     .        FileFd Rel(RelFile,FileFd::ReadOnly);     .        if (_error->PendingError() == true)     .  	 return false;     .        Parser.LoadReleaseInfo(File,Rel);     .        Rel.Seek(0);     .     }     .     */     2     return true;     7  }     .  									/*}}}*/     .  // rpmUrpmPkgIndex::MergeFileProvides - Process file dependencies if any	/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  bool rpmUrpmPkgIndex::MergeFileProvides(pkgCacheGenerator &Gen,     .  					OpProgress &Prog) const    18  {     4  => ???:0x0002e057 (2x)    22     string PackageFile = IndexPath();69,080  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::IndexPath() const (2x)   790  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2x)     8     RPMHandler *Handler = CreateHandler();122,826  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::CreateHandler() const (2x)    16     rpmListParser Parser(Handler);   142  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::rpmListParser(RPMHandler*) (2x)   420  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::~rpmListParser() (2x)     6     if (_error->PendingError() == true) {    38  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (2x)     .        delete Handler;     .        return _error->Error(_("Problem opening %s"),PackageFile.c_str());     .     }     .     // We call SubProgress with Size(), since we won't call SelectFile() here.    62     Prog.SubProgress(Size(),Info("pkglist"));   372  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (4x) 4,988  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::SubProgress(unsigned long, std::string) (2x)12,554  => apt-pkg/rpm/rpmindexfile.cc:rpmUrpmIndex::Info(std::string) const (2x)70,602  => apt-pkg/rpm/rpmindexfile.cc:rpmIndexFile::Size() const (2x)   586  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (2x)    14     if (Gen.MergeFileProvides(Parser) == false) 1,044  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)79,734,911  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::MergeFileProvides(pkgCacheGenerator::ListParser&) (2x)     .        return _error->Error(_("Problem with MergeFileProvides %s"),     .  			   PackageFile.c_str());    10     delete Handler; 1,196  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::~RPMUrpmHandler() (2x)     4     return true;    14  }     .  									/*}}}*/     .  // rpmUrpmPkgIndex::FindInCache - Find this index				/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  pkgCache::PkgFileIterator rpmUrpmPkgIndex::FindInCache(pkgCache &Cache) const    10  {     2  => ???:0x0002e057 (1x)    11     string FileName = IndexPath();34,848  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::IndexPath() const (1x)   221  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)     .     pkgCache::PkgFileIterator File = Cache.FileBegin();     6     for (; File.end() == false; File++)     .     {     .        if (FileName != File.FileName())     .  	 continue;     .       .        struct stat St;     .        if (stat(File.FileName(),&St) != 0)     .  	 return pkgCache::PkgFileIterator(Cache);     .       .        if ((unsigned)St.st_size != File->Size || St.st_mtime != File->mtime)     .  	 return pkgCache::PkgFileIterator(Cache);     .        return File;     .     }     .       .     return File;     7  }     .       .  pkgSrcRecords::Parser *rpmUrpmSrcIndex::CreateSrcParser() const     .  {     .     return new rpmSrcRecordParser(IndexPath(), this);     .  }     .       .  // rpmUrpmSrcIndex::GetIndexes - Fetch the index files			/*{{{*/     .  // ----------------------------------------------------------------------- line 859 ------------------------------------------ line 1199 ----------------------------------------     .     return Res;     .  }     .       .  #endif /* APT_WITH_REPOMD */     .       .  // DatabaseIndex::rpmDatabaseIndex - Constructor			/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     8  rpmDatabaseIndex::rpmDatabaseIndex()     2  => ???:0x0003f9b8 (1x)     .  {     2  }     .  									/*}}}*/     .       .  string rpmDatabaseIndex::IndexPath() const     .  {     .     return rpmSys.GetDBHandler()->DataPath(false);     .  }     .       .  // DatabaseIndex::Size - Return the size of the index			/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  off_t rpmDatabaseIndex::Size() const    30  {    10  => ???:0x0002e057 (5x)    20     return rpmSys.GetDBHandler()->Size();   757  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   105  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::GetDBHandler() (5x)    20  }     .  									/*}}}*/     .  // DatabaseIndex::CreateHandler - Create a RPMHandler for this file	/*{{{*/     .  // ---------------------------------------------------------------------     .  RPMHandler *rpmDatabaseIndex::CreateHandler() const     .  {     .     return rpmSys.GetDBHandler();     .  }     .  									/*}}}*/     .  // DatabaseIndex::Merge - Load the index file into a cache		/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  bool rpmDatabaseIndex::Merge(pkgCacheGenerator &Gen,OpProgress &Prog) const     8  {     2  => ???:0x0002e057 (1x)     4     RPMDBHandler *Handler = rpmSys.GetDBHandler();    21  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::GetDBHandler() (1x)     7     rpmListParser Parser(Handler); 9,478  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::rpmListParser(RPMHandler*) (1x)89,736  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::~rpmListParser() (1x)     3     if (_error->PendingError() == true)    19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)     .        return _error->Error(_("Problem opening RPM database"));     .      14     Prog.SubProgress(0,"RPM Database");   226  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x) 2,494  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::SubProgress(unsigned long, std::string) (1x)   293  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)    24     if (Gen.SelectFile(Handler->DataPath(false),string(),*this,pkgCache::Flag::NotSource) == false)    40  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2x) 4,559  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::SelectFile(std::string, std::string, pkgIndexFile const&, unsigned long) (1x)25,180  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::DataPath(bool) (1x)     .        return _error->Error(_("Problem with SelectFile RPM Database"));     .       .     // Store the IMS information     .     pkgCache::PkgFileIterator CFile = Gen.GetCurFile();     .     struct stat St;    13     if (stat(Handler->DataPath(false).c_str(),&St) != 0)   163  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)12,737  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::DataPath(bool) (1x)     .        return _error->Errno("fstat",_("Failed to stat %s"), Handler->DataPath(false).c_str());     3     CFile->Size = St.st_size;     6     CFile->mtime = Handler->Mtime();     6  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMDBHandler::Mtime() (1x)     .       8     if (Gen.MergeList(Parser) == false)710,112,717  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::MergeList(pkgCacheGenerator::ListParser&, pkgCache::VerIterator*) (1x)     .        return _error->Error(_("Problem with MergeList %s"),     .  			   Handler->DataPath(false).c_str());     1     return true;     7  }     .  									/*}}}*/     .  // DatabaseIndex::MergeFileProvides - Process file dependencies if any	/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  bool rpmDatabaseIndex::MergeFileProvides(pkgCacheGenerator &Gen,     .  		   		  	 OpProgress &Prog) const     8  {     2  => ???:0x0002e057 (1x)     3     RPMDBHandler *Handler = rpmSys.GetDBHandler();    21  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::GetDBHandler() (1x)     7     rpmListParser Parser(Handler);10,713  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::rpmListParser(RPMHandler*) (1x)   481  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::~rpmListParser() (1x)     3     if (_error->PendingError() == true)    19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)     .        return _error->Error(_("Problem opening RPM database"));     .     // We call SubProgress with Size(), since we won't call SelectFile() here.    18     Prog.SubProgress(Size(),"RPM Database");    23  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)    37  => apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::Size() const (1x) 2,494  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::SubProgress(unsigned long, std::string) (1x)   293  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)     7     if (Gen.MergeFileProvides(Parser) == false)66,319,997  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::MergeFileProvides(pkgCacheGenerator::ListParser&) (1x)     .        return _error->Error(_("Problem with MergeFileProvides %s"),     .  			   Handler->DataPath(false).c_str());     1     return true;     7  }     .  									/*}}}*/     .  // DatabaseIndex::FindInCache - Find this index				/*{{{*/     .  // ---------------------------------------------------------------------     .  /* */     .  pkgCache::PkgFileIterator rpmDatabaseIndex::FindInCache(pkgCache &Cache) const     9  {     2  => ???:0x0002e057 (1x)     .     pkgCache::PkgFileIterator File = Cache.FileBegin();     4     for (; File.end() == false; File++)     .     {    21        if (rpmSys.GetDBHandler()->DataPath(false) != File.FileName())   158  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)    21  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::GetDBHandler() (1x)13,465  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::DataPath(bool) (1x)     .  	 continue;     .        struct stat St;     .        if (stat(File.FileName(),&St) != 0)     .  	 return pkgCache::PkgFileIterator(Cache);     .        if ((unsigned)St.st_size != File->Size || St.st_mtime != File->mtime)     .  	 return pkgCache::PkgFileIterator(Cache);     .        return File;     .     }     .     return File;     7  }     .  									/*}}}*/     .       .  // Source List types for rpm						/*{{{*/     .       .  class rpmSLTypeGen : public pkgSourceList::Type     .  {     .     public:     .       .     rpmSLTypeGen()    24     { 1,469  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   285  => /home/agrr/apt-rpm/apt-pkg/sourcelist.cc:pkgSourceList::Type::Type() (8x)     2        Name = "rpm";     2        Label = "Standard RPM source tree";     .     }     .       .     pkgRepository *FindRepository(string URI,string Dist,     .  				 const pkgSourceList::Vendor *Vendor) const     .     {     .        for (vector<pkgRepository *>::const_iterator iter = RepList.begin();     .  	   iter != RepList.end(); iter++)     .        {-- line 1316 ------------------------------------------ line 1345 ----------------------------------------     .        Rep = new pkgRepository(URI,Dist,Vendor,BaseURI);     .        RepList.push_back(Rep);     .        return Rep;     .     }     .  };     .       .       .  class rpmSLTypeRpm : public rpmSLTypeGen     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     bool CreateItem(vector<pkgIndexFile *> &List,     .  		   string URI, string Dist, string Section,     .  		   pkgSourceList::Vendor const *Vendor) const     .     {     .        pkgRepository *Rep = GetRepository(URI,Dist,Vendor);     .        List.push_back(new rpmPkgListIndex(URI,Dist,Section,Rep));     .        return true;     .     }     .       .     rpmSLTypeRpm()     3     {     .        Name = "rpm";     2        Label = "Standard RPM binary tree";     .     }     .  };     .       .  class rpmSLTypeSrpm : public rpmSLTypeGen     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     bool CreateItem(vector<pkgIndexFile *> &List,     .  		   string URI, string Dist, string Section,     .  		   pkgSourceList::Vendor const *Vendor) const     .     {     .        pkgRepository *Rep = GetRepository(URI,Dist,Vendor);     .        List.push_back(new rpmSrcListIndex(URI,Dist,Section,Rep));     .        return true;     .     }     .       .     rpmSLTypeSrpm()     3     {     2        Name = "rpm-src";     .        Label = "Standard RPM source tree";     .     }     .  };     .       .  class rpmSLTypeRpmDir : public rpmSLTypeGen     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     bool CreateItem(vector<pkgIndexFile *> &List,     .  		   string URI, string Dist, string Section,     .  		   pkgSourceList::Vendor const *Vendor) const     .     {     .        pkgRepository *Rep = GetRepository(URI,Dist,Vendor);     .        List.push_back(new rpmPkgDirIndex(URI,Dist,Section,Rep));     .        return true;     .     }     .       .     rpmSLTypeRpmDir()     3     {     2        Name = "rpm-dir";     2        Label = "Local RPM directory tree";     .     }     .  };     .       .  class rpmSLTypeSrpmDir : public rpmSLTypeGen     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     bool CreateItem(vector<pkgIndexFile *> &List,     .  		   string URI, string Dist, string Section,     .  		   pkgSourceList::Vendor const *Vendor) const     .     {     .        pkgRepository *Rep = GetRepository(URI,Dist,Vendor);     .        List.push_back(new rpmSrcDirIndex(URI,Dist,Section,Rep));     .        return true;     .     }     .       .     rpmSLTypeSrpmDir()     3     {     2        Name = "rpm-src-dir";     2        Label = "Local SRPM directory tree";     .     }     .  };     .       .       .  class rpmSLTypeUrpm : public rpmSLTypeGen     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .       .  	   pkgRepository *FindRepository(string URI,string Dist,     .  			   const pkgSourceList::Vendor *Vendor) const     .  			   {     2  		   for (vector<pkgRepository *>::const_iterator iter = RepList.begin();     .  		   iter != RepList.end(); iter++)     .  		   {     .  			   if ((*iter)->URI == URI && (*iter)->Dist == Dist)     .  			   {     .  				   if (Vendor != NULL)     .  					   (*iter)->FingerPrintList = Vendor->FingerPrintList;     .  				   return *iter;     .  			   }     .  		   }     1  		   return NULL;     .  			   }     .       8  	   pkgRepository *GetRepository(string URI,string Dist,     2  => ???:0x0002e057 (1x)     .  			   const pkgSourceList::Vendor *Vendor) const     .  			   {    19  		   pkgRepository *Rep = FindRepository(URI,Dist,Vendor);   381  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2x)   591  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (2x)     3  		   if (Rep != NULL)     .  			   return Rep;     .       4  		   string BaseURI;    23  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (1x)     2  		   if (Dist[Dist.size() - 1] == '/')     .  		   {     .  			   if (Dist != "/")     .  				   BaseURI = URI + Dist;     .  			   else     .  				   BaseURI = URI + '/';     .  		   }     .  		   else    17  			   BaseURI = URI + Dist + '/';   220  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2x)   655  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h:std::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (1x)     .      30  		   Rep = new urpmRepository(URI,Dist,Vendor,BaseURI);   124  => ???:operator new(unsigned int) (1x)    69  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (3x)   510  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (3x)     .  		   RepList.push_back(Rep);     1  		   return Rep;     6  			   }     .       8     bool CreateItem(vector<pkgIndexFile *> &List,     2  => ???:0x0002e057 (1x)     .  		   string URI, string Dist, string Section,     .  		   pkgSourceList::Vendor const *Vendor) const     .     {    22        pkgRepository *Rep = GetRepository(URI,Dist,Vendor);   408  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (2x) 1,080  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   162  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (2x) 5,130  => apt-pkg/rpm/rpmindexfile.cc:rpmSLTypeUrpm::GetRepository(std::string, std::string, pkgSourceList::Vendor const*) const (1x)    31        List.push_back(new rpmUrpmPkgIndex(URI,Dist,Section,Rep));   124  => ???:operator new(unsigned int) (1x)    69  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string() (3x)    81  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (3x)     .        return true;     7     }     .       .     rpmSLTypeUrpm()     3     {     2        Name = "urpm";     2        Label = "Standard URPM binary tree";     .     }     .  };     .       .  /*     .  TODO: AG: Rever se está tudo implementado...     .     */     .  class rpmSLTypeUrpmSrc : public rpmSLTypeUrpm     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     bool CreateItem(vector<pkgIndexFile *> &List,     .  		   string URI, string Dist, string Section,     .  		   pkgSourceList::Vendor const *Vendor) const     .     {     .        pkgRepository *Rep = GetRepository(URI,Dist,Vendor);     .        List.push_back(new rpmUrpmSrcIndex(URI,Dist,Section,Rep));     .        return true;     .     }     .       .     rpmSLTypeUrpmSrc()     3     {     2        Name = "urpm-src";     2        Label = "Standard URPM src tree";     .     }     .  };     .       .       .  #ifdef APT_WITH_REPOMD     .  class rpmSLTypeRepomd : public rpmSLTypeGen     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     pkgRepository *GetRepository(string URI,string Dist,     .  				const pkgSourceList::Vendor *Vendor) const     .     {     .        pkgRepository *Rep = FindRepository(URI,Dist,Vendor);     .        if (Rep != NULL)     .  	 return Rep;-- line 1527 ------------------------------------------ line 1572 ----------------------------------------     .        if (CreateItem(List,URI,Dist,"",Vendor) == false)     .  	 return false;     .       .        return true;     .     }     .       .       .     rpmSLTypeRepomd()     3     {     2        Name = "repomd";     2        Label = "RepoMD tree";     .     }     .  };     .  class rpmSLTypeRepomdSrc : public rpmSLTypeRepomd     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     bool CreateItem(vector<pkgIndexFile *> &List,     .  		   string URI, string Dist, string Section,     .  		   pkgSourceList::Vendor const *Vendor) const     .     {     .        pkgRepository *Rep = GetRepository(URI,Dist,Vendor);     .        List.push_back(new rpmRepomdSrcIndex(URI,Dist,Section,Rep));     .        return true;     .     }     .       .     rpmSLTypeRepomdSrc()     3     {     2        Name = "repomd-src";     2        Label = "RepoMD src tree";     .     }     .  };     .       .  #endif /* APT_WITH_REPOMD */     .       5  rpmSLTypeRpm _apt_rpmType;    82  => ???:__cxa_atexit (1x)     5  rpmSLTypeSrpm _apt_rpmSrcType;    82  => ???:__cxa_atexit (1x)     5  rpmSLTypeRpmDir _apt_rpmDirType;    82  => ???:__cxa_atexit (1x)     5  rpmSLTypeSrpmDir _apt_rpmSrcDirType;    82  => ???:__cxa_atexit (1x)     5  rpmSLTypeUrpm _apt_urpmType;    82  => ???:__cxa_atexit (1x)     5  rpmSLTypeUrpmSrc _apt_urpmSrcType;    82  => ???:__cxa_atexit (1x)     .  #ifdef APT_WITH_REPOMD     5  rpmSLTypeRepomd _apt_repomdType;    82  => ???:__cxa_atexit (1x)     5  rpmSLTypeRepomdSrc _apt_repomdSrcType;    82  => ???:__cxa_atexit (1x)     .  #endif     .  									/*}}}*/     .  // Index File types for rpm						/*{{{*/     .  class rpmIFTypeSrc : public pkgIndexFile::Type     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       8     rpmIFTypeSrc() {Label = "RPM Source Index";}   723  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    57  => /home/agrr/apt-rpm/apt-pkg/indexfile.cc:pkgIndexFile::Type::Type() (1x)     .  };     .  class rpmIFTypePkg : public pkgIndexFile::Type     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     virtual pkgRecords::Parser *CreatePkgParser(pkgCache::PkgFileIterator File) const     .     {     .        return new rpmRecordParser(File.FileName(),*File.Cache());     .     }     8     rpmIFTypePkg() {Label = "RPM Package Index";}    19  => /home/agrr/apt-rpm/apt-pkg/indexfile.cc:pkgIndexFile::Type::Type() (1x)     .  };     .  class rpmIFTypeDatabase : public pkgIndexFile::Type     6  {     2  => ???:0x0003f9b8 (1x)     .     public:     .       .     virtual pkgRecords::Parser *CreatePkgParser(pkgCache::PkgFileIterator File) const     .     {     .        return new rpmRecordParser(File.FileName(),*File.Cache());     .     }     8     rpmIFTypeDatabase() {Label = "RPM Database";}    19  => /home/agrr/apt-rpm/apt-pkg/indexfile.cc:pkgIndexFile::Type::Type() (1x)     .  };     5  static rpmIFTypeSrc _apt_Src;    82  => ???:__cxa_atexit (1x)     5  static rpmIFTypePkg _apt_Pkg;    82  => ???:__cxa_atexit (1x)     5  static rpmIFTypeDatabase _apt_DB;    82  => ???:__cxa_atexit (1x)     .       .  const pkgIndexFile::Type *rpmSrcListIndex::GetType() const     .  {     .     return &_apt_Src;     .  }     .  const pkgIndexFile::Type *rpmPkgListIndex::GetType() const     .  {     .     return &_apt_Pkg;-- line 1655 ------------------------------------------ line 1667 ----------------------------------------     .  {     .     return &_apt_Pkg;     .  }     .  const pkgIndexFile::Type *rpmSingleSrcIndex::GetType() const     .  {     .     return &_apt_Src;     .  }     .  const pkgIndexFile::Type *rpmDatabaseIndex::GetType() const     4  {     2  => ???:0x0003f9b8 (1x)     .     return &_apt_DB;     3  }     .       .  const pkgIndexFile::Type *rpmUrpmPkgIndex::GetType() const     4  {     2  => ???:0x0003f9b8 (1x)     .     return &_apt_Pkg;     3  }     .       .  const pkgIndexFile::Type *rpmUrpmSrcIndex::GetType() const     .  {     .     return &_apt_Pkg;     .  }     .  #ifdef APT_WITH_REPOMD     .  const pkgIndexFile::Type *rpmRepomdPkgIndex::GetType() const     .  {     .     return &_apt_Pkg;     .  }     .  const pkgIndexFile::Type *rpmRepomdSrcIndex::GetType() const     .  {     .     return &_apt_Src;41,686  }     2  => ???:0x0002e057 (1x)     .  #endif     .       .  									/*}}}*/     .  #endif /* HAVE_RPM */     .       .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/contrib/cmndline.cc--------------------------------------------------------------------------------Ir -- line 19 ---------------------------------------- .   .  #include <cstring> .  									/*}}}*/ .  using namespace std; .   .  // CommandLine::CommandLine - Constructor				/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ 3  CommandLine::CommandLine(Args *AList,Configuration *Conf) : ArgList(AList),  5                                   Conf(Conf), FileList(0) .  { 2  } .  									/*}}}*/ .  // CommandLine::~CommandLine - Destructor				/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ 6  CommandLine::~CommandLine() 2  => ???:0x0002e057 (1x) .  { 6     delete [] FileList;135  => ???:operator delete[](void*) (1x) 4  } .  									/*}}}*/ .  // CommandLine::Parse - Main action member				/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ .  bool CommandLine::Parse(int argc,const char **argv) 8  { 2  => ???:0x0002e057 (1x) 4     delete [] FileList; 7     FileList = new const char *[argc];6,900  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)245  => ???:operator new[](unsigned int) (1x) .     const char **Files = FileList; .     int I; 9     for (I = 1; I != argc; I++) .     { 3        const char *Opt = argv[I]; .         .        // It is not an option 2        if (*Opt != '-') .        { 4  	 *Files++ = Opt; .  	 continue; .        } .         .        Opt++; .         .        // Double dash signifies the end of option processing .        if (*Opt == '-' && Opt[1] == 0) .        {-- line 64 ------------------------------------------ line 73 ---------------------------------------- .  	 while (*Opt != 0) .  	 {	     .  	    // Search for the option .  	    Args *A; .  	    for (A = ArgList; A->end() == false && A->ShortOpt != *Opt; A++); .  	    if (A->end() == true) .  	       return _error->Error(_("Command line option '%c' [from %s] is not known."),*Opt,argv[I]); .   4  	    if (HandleOpt(I,argc,argv,Opt,A) == false) .  	       return false; .  	    if (*Opt != 0) .  	       Opt++;	        .  	 } .  	 continue; .        } .         .        Opt++;-- line 89 ------------------------------------------ line 124 ---------------------------------------- .  	 // The option is not boolean .  	 if (A->IsBoolean() == false) .  	    return _error->Error(_("Command line option %s is not boolean"),argv[I]); .  	 PreceedMatch = true; .        } .         .        // Deal with it. .        OptEnd--; 3        if (HandleOpt(I,argc,argv,OptEnd,A,PreceedMatch) == false) .  	 return false; .     } .      .     // Copy any remaining file names over .     for (; I != argc; I++) .        *Files++ = argv[I]; 2     *Files = 0; .      2     return true; 6  } .  									/*}}}*/ .  // CommandLine::HandleOpt - Handle a single option including all flags	/*{{{*/ .  // --------------------------------------------------------------------- .  /* This is a helper function for parser, it looks at a given argument .     and looks for specific patterns in the string, it gets tokanized .     -ruffly- like -*[yes|true|enable]-(o|longopt)[=][ ][argument] */ .  bool CommandLine::HandleOpt(int &I,int argc,const char *argv[], .  			    const char *&Opt,Args *A,bool PreceedMatch)-- line 150 ------------------------------------------ line 314 ---------------------------------------- .     Conf->Set(A->ConfName,Sense); .     return true; .  } .  									/*}}}*/ .  // CommandLine::FileSize - Count the number of filenames		/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ .  unsigned int CommandLine::FileSize() const 4  { 2     unsigned int Count = 0;26     for (const char **I = FileList; I != 0 && *I != 0; I++) 2        Count++; .     return Count; 4  } .  									/*}}}*/ .  // CommandLine::DispatchArg - Do something with the first arg		/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ 4  bool CommandLine::DispatchArg(Dispatch *Map,bool NoMatch)11  { 2  => ???:0x0002e057 (1x) 6     const char *cmd = FileList ? FileList[0] : 0; 2     if (cmd == 0) .     { .        _error->Error(_("Invalid operation %s"),cmd); .        return false; .     } .   .     int I;39     for (I = 0; Map[I].Match != 0; I++) .     {50        if (strcmp(cmd,Map[I].Match) == 0)7,424  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)118  => ???:__strcmp_ssse3 (10x) .        { 5  	 bool Res = Map[I].Handler(*this);5,018,060,970  => /home/agrr/apt-rpm/cmdline/apt-get.cc:DoCheck(CommandLine&) (1x) 2  	 if (Res == false && _error->PendingError() == false) 9  	    _error->Error("Handler silently failed"); .  	 return Res; .        } .     } .      .     // No matching name .     if (Map[I].Match == 0) .     { .        if (NoMatch == true) .  	 _error->Error(_("Invalid operation %s"),cmd); .     } .      .     return false;19  } 2  => ???:0x0002e057 (1x) .  									/*}}}*/---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/rpm/raptheader.cc--------------------------------------------------------------------------------     Ir -- line 15 ----------------------------------------      .   * - actually implement "raw" string mode + handle i18n strings correctly      .   * - we'll need putTag() method too for genpkglist      .   * - for older rpm versions we'll need to use one of rpmHeaderGetEntry(),      .   *   headerGetEntry() or headerGetRawEntry() depending on tag and content      .   * - we'll want to eventually replace rpmhandler's HeaderP with raptHeader(),      .   *   add constructors for reading in from files, db iterators & all etc...      .   */      .   72,984  raptHeader::raptHeader(Header h) 24,328  => ???:0x0002e057 (12164x)      .  {121,640     Hdr = headerLink(h);  2,161  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,116,536  => ???:rpmioLinkPoolItem (12164x) 48,656  }      .   72,984  raptHeader::~raptHeader() 24,328  => ???:0x0002e057 (12164x)      .  {109,476     headerUnlink(Hdr);2,116,536  => ???:rpmioUnlinkPoolItem (12164x)  2,190  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 48,656  }      .        .  bool raptHeader::hasTag(rpmTag tag)      .  {      .     return headerIsEntry(Hdr, tag);      .  }      .        .  // XXX: should have a way to pass back formatting error messages      .  string raptHeader::format(const string fmt)-- line 39 ------------------------------------------ line 44 ----------------------------------------      .     if (s) {      .        res = string(s);      .        free(s);      .     }      .     return res;      .  }      .        .  bool raptHeader::getTag(rpmTag tag, uint32_t &data) 21,455  {  6,130  => ???:0x0002e057 (3065x)      .     vector<uint32_t> _data;  3,065     bool ret = false;      .   30,650     if (getTag(tag, _data) && _data.size() == 1) {16,892,601  => apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, std::vector<unsigned int, std::allocator<unsigned int> >&) (3065x)    939  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)      .        data = _data[0];      .        ret = true;      .     }      .     return ret; 18,390  }      .        .  bool raptHeader::getTag(rpmTag tag, string &data, bool raw) 67,888  { 16,972  => ???:0x0002e057 (8486x)      .     vector<string> _data;  8,486     bool ret = false;      .  110,318     if (getTag(tag, _data, raw) && _data.size() == 1) {55,021,484  => apt-pkg/rpm/raptheader.cc:raptHeader::getTag(rpmTag_e, std::vector<std::string, std::allocator<std::string> >&, bool) (8486x)    973  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)      .        data = _data[0]; 16,972        ret = true;      .     }      .     return ret; 59,402  }      .        .  bool raptHeader::getTag(rpmTag tag, vector<string> &data, bool raw)109,188  { 18,198  => ???:0x0002e057 (9099x)  9,099     bool ret = false;      .     void *val = NULL;      .     int rc = 0;      .     rpmTagCount count = 0;      .     rpmTagType type = (rpmTagType)0;318,465     HE_t he = (HE_t)memset(alloca(sizeof(*he)), 0, sizeof(*he)); 18,198     he->tag = (rpmTag)tag;      .   18,198     if (tag == RPMTAG_OLDFILENAMES) {      .        rc = headerGet(Hdr, he, 0);      .        if (rc) {      .  	 type = he->t;      .  	 val = he->p.ptr;      .  	 count = he->c;      .        } 16,972     } else if (raw) {      .  	he->t = type;      .  	he->p.str = (const char*)val;      .  	he->c = count;      .  	rc = headerGet(Hdr, he, tag);      .  	if (rc) {      .  	   type = he->t;      .  	   val = he->p.ptr;      .  	   count = he->c;      .  	}      .     } else { 63,693        rc = headerGet(Hdr, he, 0);  1,649  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)52,401,348  => ???:headerGet (9099x) 18,198        if (rc) {  8,486  	 type = he->t; 16,972  	 val = he->p.ptr; 16,972  	 count = he->c;      .        }      .     }      .        .     if (rc) { 16,972        switch (type) {      .  	 case RPM_STRING_TYPE: {      .  	    char *hdata = (char *)val; 59,402  	    data.push_back(hdata);2,503,739  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (8486x)  8,486  	    ret = true;      .  	    break;      .  	 }      .  	 case RPM_STRING_ARRAY_TYPE:      .  	 case RPM_I18NSTRING_TYPE: {      .  	    char **hdata = (char **)val;      .  	    for (int i = 0; i < count; i++) {      .  	       data.push_back(hdata[i]);      .  	    }-- line 124 ------------------------------------------ line 126 ----------------------------------------      .  	    ret = true;      .  	    break;      .  	 }      .  	 default:       .  	    break;      .        }      .     }      .     return ret; 54,594  }      .        .  bool raptHeader::getTag(rpmTag tag, vector<uint32_t> &data) 24,520  {  6,130  => ???:0x0002e057 (3065x)      .     bool ret = false;      .     rpmTagCount count = 0;      .     rpmTagType type = (rpmTagType)0;104,210     HE_t he = (HE_t)memset(alloca(sizeof(*he)), 0, sizeof(*he));      .    6,130     he->tag = tag;      .   18,390     if (headerGet(Hdr, he, 0)) {16,711,766  => ???:headerGet (3065x)      .        if (type == RPM_UINT32_TYPE) {      .  	 uint32_t *hdata = he->p.ui32p;      .  	 for (int i = 0; i < count; i++) {      .  	    data.push_back(hdata[i]);      .  	 }      .  	 ret = true;      .        }      .     }      .     return ret; 38,439  }      2  => ???:0x0002e057 (1x)      .        .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/../include/apt-pkg/depcache.h--------------------------------------------------------------------------------       Ir -- line 112 ----------------------------------------        .                .        virtual VerIterator GetCandidateVer(PkgIterator Pkg);        .        virtual bool IsImportantDep(DepIterator Dep);        .        // CNC:2003-03-05 - We need access to the priority in pkgDistUpgrade        .        //		  while checking for obsoleting packages.        .        virtual signed short GetPkgPriority(pkgCache::PkgIterator const &Pkg)        .  	 { return 0; }        .                4        virtual ~Policy() {}        .     };        .               .     protected:        .          .     // State information        .     pkgCache *Cache;        .     StateCache *PkgState;        .     unsigned char *DepState;-- line 128 ------------------------------------------ line 138 ----------------------------------------        .     Policy *delLocalPolicy;           // For memory clean up..        .     Policy *LocalPolicy;        .             .     // Check for a matching provides        .     bool CheckDep(DepIterator Dep,int Type,PkgIterator &Res);        .     inline bool CheckDep(DepIterator Dep,int Type)        .     {        .        PkgIterator Res(*this,0);2,758,422        return CheckDep(Dep,Type,Res);3,541,202,000  => /home/agrr/apt-rpm/apt-pkg/depcache.cc:pkgDepCache::CheckDep(pkgCache::DepIterator, int, pkgCache::PkgIterator&) (285354x)    1,119  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        .     }        .             .     // Computes state information for deps and versions (w/o storing)        .     unsigned char DependencyState(DepIterator &D);        .     unsigned char VersionState(DepIterator D,unsigned char Check,        .  			      unsigned char SetMin,        .  			      unsigned char SetPolicy);        .  -- line 154 ------------------------------------------ line 165 ----------------------------------------        .     public:        .          .     // CNC:2003-02-23 - See below.        .     class State;        .     friend class State;        .             .     // Legacy.. We look like a pkgCache        .     inline operator pkgCache &() {return *Cache;}        8     inline Header &Head() {return *Cache->HeaderP;}        .     inline PkgIterator PkgBegin() {return Cache->PkgBegin();}        .     inline PkgIterator FindPkg(string const &Name) {return Cache->FindPkg(Name);}        .          .     inline pkgCache &GetCache() {return *Cache;}  570,708     inline pkgVersioningSystem &VS() {return *Cache->VS;}        .             .     // Policy implementation  659,190     inline VerIterator GetCandidateVer(PkgIterator Pkg) {return LocalPolicy->GetCandidateVer(Pkg);}5,213,335  => /home/agrr/apt-rpm/apt-pkg/policy.cc:pkgPolicy::GetCandidateVer(pkgCache::PkgIterator) (43946x)  891,872     inline bool IsImportantDep(DepIterator Dep) {return LocalPolicy->IsImportantDep(Dep);}13,327,622  => /home/agrr/apt-rpm/apt-pkg/../include/apt-pkg/policy.h:pkgPolicy::IsImportantDep(pkgCache::DepIterator) (111484x)        .     inline Policy &GetPolicy() {return *LocalPolicy;}        .     // CNC:2003-03-05 - See above.        .     inline signed short GetPkgPriority(pkgCache::PkgIterator const &Pkg) {return LocalPolicy->GetPkgPriority(Pkg);}        .             .     // Accessors        .     inline StateCache &operator [](PkgIterator const &I) {return PkgState[I->ID];}        .     inline unsigned char &operator [](DepIterator const &I) {return DepState[I->ID];}        .  -- line 190 -------------------------------------------------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/rpm/rpmversion.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/rpm/rpmversion.cc---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/rpm/urpmlistfile.cc--------------------------------------------------------------------------------        Ir -- line 27 ----------------------------------------         .  #include <ctype.h>         .  									/*}}}*/         .           .  using std::string;         .           .  // TagFile::UrpmListFile - Constructor					/*{{{*/         .  // ---------------------------------------------------------------------         .  /* */        48  UrpmListFile::UrpmListFile(FileFd *pFd,size_t Size) : Fd(*pFd), Size(Size)         8  => ???:0x0002e057 (4x)         .  {        12     if (Fd.IsOpen() == false)         .     {         .        Buffer = 0;         .        Start = End = Buffer = 0;         .        Done = true;         .        iOffset = 0;         .        return;         .     }         .             12     Buffer = new char[Size];     1,366  => ???:operator new[](unsigned int) (4x)         .     //fprintf(stderr, "New UrpmListFile: %s\n", pFd->Name().c_str());         8     Start = End = Buffer;         4     Done = false;         4     iOffset = 0;         8     Fill();       564  => apt-pkg/rpm/urpmlistfile.cc:UrpmListFile::Fill() (4x)       705  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        20  }         .  									/*}}}*/         .  // TagFile::~UrpmListFile - Destructor					/*{{{*/         .  // ---------------------------------------------------------------------         .  /* */        24  UrpmListFile::~UrpmListFile()         8  => ???:0x0002e057 (4x)         .  {        24     delete [] Buffer;       368  => ???:operator delete[](void*) (4x)        16  }         .  									/*}}}*/         .  // TagFile::Step - Advance to the next section				/*{{{*/         .  // ---------------------------------------------------------------------         .  /* If the Section Scanner fails we refill the buffer and try again. */         .  bool UrpmListFile::Step(UrpmListSection &Tag)   237,210  {    47,442  => ???:0x0002e057 (23721x)   213,489     if (Tag.Scan(Start,End - Start) == false)59,604,792  => apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::Scan(char const*, unsigned long) (23721x)     1,550  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)         .     {        30        if (Fill() == false)       621  => apt-pkg/rpm/urpmlistfile.cc:UrpmListFile::Fill() (6x)         6  	 return false;         .                 .        if (Tag.Scan(Start,End - Start) == false)         .  	 return _error->Error(_("Unable to parse package file %s (1) - maybe empty?"),         .  			      Fd.Name().c_str());         .     }    23,715     Start += Tag.size();    23,715     iOffset += Tag.size();         .      47,430     Tag.Trim();       777  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   403,155  => apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::Trim() (23715x)    23,715     return true;   142,326  }         .  									/*}}}*/         .  // TagFile::Fill - Top up the buffer					/*{{{*/         .  // ---------------------------------------------------------------------         .  /* This takes the bit at the end of the buffer and puts it at the start         .     then fills the rest from the file */        18  bool UrpmListFile::Fill()        90  {        20  => ???:0x0002e057 (10x)        30     size_t EndSize = End - Start;        10     unsigned long Actual = 0;         .             50     memmove(Buffer,Start,EndSize);       127  => ???:__memmove_ssse3 (10x)        20     Start = Buffer;        20     End = Buffer + EndSize;         .             20     if (Done == false)         .     {         .        // See if only a bit of the file is left        84        if (Fd.Read(End,Size - (End - Buffer),&Actual) == false)       522  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::Read(void*, unsigned long, unsigned long*) (7x)         7  	 return false;        53        if (Actual != Size - (End - Buffer))         3  	 Done = true;        17        End += Actual;         .     }         .           .           .              8     if (Done == true)         .     {        12        if (EndSize <= 3 && Actual == 0)         .  	 return false;         .        if (Size - (End - Buffer) < 4)         6  	 return true;         .     }         .                .           .     /* XXX Not needed because our Scan() isnt expecting it         .        // Append a double new line if one does not exist         .        unsigned int LineCount = 0;         .        for (const char *E = End - 1; E - End < 6 && (*E == '\n' || *E == '\r'); E--)         .  	 if (*E == '\n')-- line 121 ------------------------------------------ line 122 ----------------------------------------         .  	    LineCount++;         .        for (; LineCount < 2; LineCount++)         .  	 *End++ = '\n';         .               .                 .        return true;         .     }*/         .              8     return true;        60  }         .  									/*}}}*/         .  // TagFile::Jump - Jump to a pre-recorded location in the file		/*{{{*/         .  // ---------------------------------------------------------------------         .  /* This jumps to a pre-recorded file location and reads the record         .     that is there */         .  bool UrpmListFile::Jump(UrpmListSection &Tag,off_t Offset)         .  {         .     // We are within a buffer space of the next hit..-- line 139 ------------------------------------------ line 171 ----------------------------------------         .  // TagSection::Scan - Scan for the end of the header information	/*{{{*/         .  // ---------------------------------------------------------------------         .  /* This looks for the first double new line in the data stream. It also         .     indexes the tags in the section. This very simple hash function for the         .     first 3 letters gives very good performance on the debian package files */         .  inline static unsigned long AlphaHash(const char *Text, const char *End = 0)         .  {         .     unsigned long Res = 0;20,257,155     for (; Text != End && *Text != '@' && *Text != 0; Text++) 6,359,400        Res = (unsigned long)(*Text) ^ (Res << 2);         .     return Res & 0xFF; /* Freaking no-op !! OMG uber-733t haxorz... */         .  }         .           .  bool UrpmListSection::Scan(const char *Start,unsigned long MaxLength)   237,210  {    47,442  => ???:0x0002e057 (23721x)    71,163     const char *End = Start + MaxLength;    47,442     Stop = Section = Start; 3,178,614     memset(AlphaIndexes,0,sizeof(AlphaIndexes));         .      71,163     if (Stop == 0)         .        return false;         .         23,721     TagCount = 0;   684,621     while (TagCount+1 < sizeof(Indexes)/sizeof(Indexes[0]) && Stop < End)         .     {         .        // Start a new index and add it to the hash   732,039        if (isspace(Stop[0]) == 0) 1,882,386  => ???:isspace (104577x)         .        {   522,885  	 Indexes[TagCount++] = Stop - Section;   522,885  	 AlphaIndexes[AlphaHash(Stop+1,End)] = TagCount;         .        }         .     313,731        Stop = (const char *)memchr(Stop,'\n',End - Stop);         .           209,154        if (Stop == 0)         .  	 return false;         .           .        // @info line marks the end of the record   627,462        if (Stop+1 < End && Stop[2] == 'i')  /*TODO: Test this info line matching */         .        {   213,435  	  Indexes[TagCount++] = (Stop + 1) - Section;    71,145  	  AlphaIndexes[AlphaHash(Stop + 2,End)] = TagCount;    94,860        Stop = (const char *)memchr(Stop+1 ,'\n',End - Stop); //Find next newline    71,145        Indexes[TagCount] = Stop - Section;         .     379,422  	  for (; Stop < End && (Stop[0] == '\n' || Stop[0] == '\r'); Stop++);    47,430  	  return true;         .        }         .            80,862        Stop++;         .     }         .           .     return false;   142,326  }         .  									/*}}}*/         .  // TagSection::Trim - Trim off any trailing garbage			/*{{{*/         .  // ---------------------------------------------------------------------         .  /* There should be exactly 1 newline at the end of the buffer, no more. */         .  void UrpmListSection::Trim()    94,860  {   237,150     for (; Stop > Section + 2 && (Stop[-2] == '\n' || Stop[-2] == '\r'); Stop--);    71,145  }         .  									/*}}}*/         .  // TagSection::Find - Locate a tag					/*{{{*/         .  // ---------------------------------------------------------------------         .  /* This searches the section for a tag that matches the given string. */         .  bool UrpmListSection::Find(const char *Tag,unsigned &Pos) const         .  {         .     size_t Length = strlen(Tag);         .     unsigned int I = AlphaIndexes[AlphaHash(Tag)];-- line 240 ------------------------------------------ line 263 ----------------------------------------         .     return false;         .  }         .  									/*}}}*/         .  // TagSection::Find - Locate a tag					/*{{{*/         .  // ---------------------------------------------------------------------         .  /* This searches the section for a tag that matches the given string. */         .  bool UrpmListSection::Find(const char *Tag,const char *&Start,         .  		         const char *&End) const 1,770,768  {   442,692  => ???:0x0002e057 (221346x)   885,384     unsigned int Length = strlen(Tag); 4,632,450  => ???:__strlen_sse2 (221346x)   442,692     unsigned int I = AlphaIndexes[AlphaHash(Tag)];   442,692     if (I == 0)   221,346        return false;   804,752     I--;         .      1,515,070     for (unsigned int Counter = 0; Counter != TagCount; Counter++,          .  	I = (I+1)%TagCount)         .     {         .        const char *St; 1,073,204        St = Section + Indexes[I]+ 1; //+1 to skip the initial '@'         .   2,683,010        if (strncasecmp(Tag,St,Length) != 0)48,603,972  => ???:strncasecmp (268301x)         .  	 continue;         .                 .        // Make sure the '@' is in the right place   188,075        const char *C = St + Length;   376,150        if (*C != '@')         .  	 continue;         .           .        // Strip off the gunk from the start end   376,150        Start = C;   940,375        End = Section + Indexes[I+1];   752,300        if (Start >= End)   564,225  	    return _error->Error("Internal parsing error Start=%p, End=%p",Start, End);         .         5,642,250        for (; (isspace(*Start) != 0 || *Start == '@') && Start < End; Start++);14,223,240  => ???:isspace (376150x) 1,620,890        for (; isspace(End[-1]) != 0 && End > Start; End--); 4,067,190  => ???:isspace (225955x)         .           188,075        return true;         .     }         .         52,452     Start = End = 0;    26,226     return false; 1,328,076  }         .  									/*}}}*/         .  // TagSection::FindS - Find a string					/*{{{*/         .  // ---------------------------------------------------------------------         .  /* */         .  string UrpmListSection::FindS(const char *Tag) const 1,351,809  {   300,402  => ???:0x0002e057 (150201x)         .     const char *Start;         .     const char *End; 1,652,211     if (Find(Tag,Start,End) == false)       850  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)50,165,724  => apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::Find(char const*, char const*&, char const*&) const (150201x)         .        return string();         .           .     string ret(Start,End);               .     //fprintf(stderr, "FindS returned %s\n",ret.c_str());    600,780     return ret; 4,055,265  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (150195x) 1,051,407  }         .  									/*}}}*/         .  // TagSection::FindI - Find an integer					/*{{{*/         .  // ---------------------------------------------------------------------         .  /* */         .  signed int UrpmListSection::FindI(const char *Tag,signed long Default) const    71,145  {    15,810  => ???:0x0002e057 (7905x)         .     const char *Start;         .     const char *Stop;    86,955     if (Find(Tag,Start,Stop) == false) 3,786,495  => apt-pkg/rpm/urpmlistfile.cc:UrpmListSection::Find(char const*, char const*&, char const*&) const (7905x)         .        return Default;         .           .     // Copy it into a temp buffer so we can use strtol         .     char S[300];    39,525     if ((unsigned)(Stop - Start) >= sizeof(S))         .        return Default;    47,430     strncpy(S,Start,Stop-Start);    14,837  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   439,402  => ???:strncpy (7905x)     7,905     S[Stop - Start] = 0;         .              .     char *End;    47,430     signed long Result = strtol(S,&End,10);     7,421  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 1,965,489  => ???:strtol (7905x)    23,715     if (S == End)         .        return Default;     7,905     return Result;    55,347  }         2  => ???:0x0002e057 (1x)         .           .  ---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/pkgcachegen.cc--------------------------------------------------------------------------------       Ir -- line 32 ----------------------------------------        .  #include <stdio.h>        .  #include <system.h>        .  									/*}}}*/        .  typedef vector<pkgIndexFile *>::iterator FileIterator;        .          .  // CacheGenerator::pkgCacheGenerator - Constructor			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* We set the diry flag and make sure that is written to the disk */       10  pkgCacheGenerator::pkgCacheGenerator(DynamicMMap *pMap,OpProgress *Prog) :        2  => ???:0x0002e057 (1x)        .  		    Map(*pMap), Cache(pMap,false), Progress(Prog),       10  		    FoundFileDeps(0)       25  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::pkgCache(MMap*, bool) (1x)        .  {        1     CurrentFile = 0;       30     memset(UniqHash,0,sizeof(UniqHash));        .             3     if (_error->PendingError() == true)       19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)        .        return;        .          4     if (Map.Size() == 0)        .     {        .        // Setup the map interface..        2        Cache.HeaderP = (pkgCache::Header *)Map.Data();        4        Map.RawAllocate(sizeof(pkgCache::Header));    2,233  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       27  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::RawAllocate(unsigned int, unsigned long) (1x)        6        Map.UsePools(*Cache.HeaderP->Pools,sizeof(Cache.HeaderP->Pools)/sizeof(Cache.HeaderP->Pools[0]));        .                .        // Starting header        8        *Cache.HeaderP = pkgCache::Header();   10,576  => ???:__memcpy_ssse3 (1x)    3,781  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::Header::Header() (1x)       11        Cache.HeaderP->VerSysName = Map.WriteString(_system->VS->Label);       98  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::WriteString(char const*, unsigned int) (1x)      795  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       14        Cache.HeaderP->Architecture = Map.WriteString(_config->Find("APT::Architecture"));    2,206  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::Find(char const*, char const*) const (1x)        3        Cache.ReMap();     6,290  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::ReMap() (1x)        .     }        .     else        .     {        .        // Map directly from the existing file        .        Cache.ReMap();         .        Map.UsePools(*Cache.HeaderP->Pools,sizeof(Cache.HeaderP->Pools)/sizeof(Cache.HeaderP->Pools[0]));        .        if (Cache.VS != _system->VS)        .        {        2  	 _error->Error(_("Cache has an incompatible versioning system"));        .  	 return;        .        }              .     }        .             1     Cache.HeaderP->Dirty = true;        4     Map.Sync(0,sizeof(pkgCache::Header));      640  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   12,556  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:MMap::Sync(unsigned int, unsigned int) (1x)        6  }        .  									/*}}}*/        .  // CacheGenerator::~pkgCacheGenerator - Destructor 			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* We sync the data then unset the dirty flag in two steps so as to        .     advoid a problem during a crash */        9  pkgCacheGenerator::~pkgCacheGenerator()        2  => ???:0x0002e057 (1x)        .  {        3     if (_error->PendingError() == true)       19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)        .        return;        5     if (Map.Sync() == false)       44  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:MMap::Sync() (1x)        .        return;        .             2     Cache.HeaderP->Dirty = false;        5     Map.Sync(0,sizeof(pkgCache::Header));       99  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:MMap::Sync(unsigned int, unsigned int) (1x)        6  }        .  									/*}}}*/        .  // CacheGenerator::MergeList - Merge the package list			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This provides the generation of the entries in the cache. Each loop        .     goes through a single package record from the underlying parse engine. */        .  bool pkgCacheGenerator::MergeList(ListParser &List,        .  				  pkgCache::VerIterator *OutVer)       20  {        4  => ???:0x0002e057 (2x)        2     List.Owner = this;        .          .     // CNC:2003-02-20 - When --reinstall is used during a cache building        .     //		       process, the algorithm is sligthly changed to        .     //		       order the "better" architectures before, even if        .     //		       they are already in the system.       16     bool ReInstall = _config->FindB("APT::Get::ReInstall", false);    7,246  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindB(char const*, bool) const (2x)        .          2     unsigned int Counter = 0;   42,600     while (List.Step() == true)328,299,867  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Step() (8520x)        .     {        .        // Get a pointer to the package structure   59,626        string PackageName = List.Package();  468,490  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Package() (8518x)   25,554        if (PackageName.empty() == true)        .  	 return false;        .                .        pkgCache::PkgIterator Pkg;  119,252        if (NewPackage(Pkg,PackageName) == false)    4,015  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  461,187  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (8518x)4,450,885  => apt-pkg/pkgcachegen.cc:pkgCacheGenerator::NewPackage(pkgCache::PkgIterator&, std::string) (8518x)        .  	 return _error->Error(_("Error occured while processing %s (NewPackage)"),PackageName.c_str());    8,518        Counter++;        .        // CNC:2003-02-16   59,881        if (Counter % 100 == 0 && Progress != 0) {      425  	 if (List.OrderedOffset() == true)    1,275  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.h:rpmListParser::OrderedOffset() (85x)      553  	    Progress->Progress(List.Offset());      553  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.h:rpmListParser::Offset() (79x)      723  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  102,661  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::Progress(unsigned long) (79x)        .  	 else       36  	    Progress->Progress(Counter);      966  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::Progress(unsigned long) (6x)        .        }        .          .        /* Get a pointer to the version structure. We know the list is sorted        .           so we use that fact in the search. Insertion of new versions is        .  	 done with correct sorting */   59,626        string Version = List.Version();149,530,967  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Version() (8518x)   25,554        if (Version.empty() == true)        .        {        .  	 if (List.UsePackage(Pkg,pkgCache::VerIterator(Cache)) == false)        .  	    return _error->Error(_("Error occured while processing %s (UsePackage1)"),        .  				 PackageName.c_str());        .  	 continue;        .        }        .          .        // CNC:2002-07-09   68,144        string Arch = List.Architecture();48,223,168  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Architecture() (8518x)        .          .        pkgCache::VerIterator Ver = Pkg.VersionList();   25,554        map_ptrloc *Last = &Pkg->VersionList;    8,518        int Res = 1;   25,730        for (; Ver.end() == false; Last = &Ver->NextVer, Ver++)        .        {        .  	 // 2003-02-20 - If the package is already installed, the        .  	 //              architecture doesn't matter, unless        .  	 //              --reinstall has been used.    4,221  	 if (!ReInstall && List.IsDatabase())    9,045  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.h:rpmListParser::IsDatabase() (603x)    3,618  	    Res = Cache.VS->CmpVersion(Version, Ver.VerStr());   16,281  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (603x)        .  	 else        .  	    Res = Cache.VS->CmpVersionArch(Version,Arch,   17,036  					   Ver.VerStr(),Ver.Arch());    1,809  	 if (Res >= 0)        .  	    break;        .        }        .                .        /* We already have a version for this item, record that we        .           saw it */   34,072        unsigned long Hash = List.VersionHash();1,274,344,333  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::VersionHash() (8518x)   27,786        if (Res == 0 && Ver->Hash == Hash)        .        {    8,370  	 if (List.UsePackage(Pkg,Ver) == false)  786,293  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::UsePackage(pkgCache::PkgIterator, pkgCache::VerIterator) (558x)        .  	    return _error->Error(_("Error occured while processing %s (UsePackage2)"),        .  				 PackageName.c_str());        .      3,906  	 if (NewFileVer(Ver,List) == false)3,490,809  => apt-pkg/pkgcachegen.cc:pkgCacheGenerator::NewFileVer(pkgCache::VerIterator&, pkgCacheGenerator::ListParser&) (558x)        .  	    return _error->Error(_("Error occured while processing %s (NewFileVer1)"),        .  				 PackageName.c_str());        .  	         .  	 // Read only a single record and return    1,674  	 if (OutVer != 0)        .  	 {        .  	    *OutVer = Ver;        .  	    FoundFileDeps |= List.HasFileDeps();        .  	    return true;        .  	 }        .  	         .  	 continue;        .        }      -- line 183 ------------------------------------------ line 193 ----------------------------------------        .  	    Res = Cache.VS->CmpVersionArch(Version,Arch,        .  			    		   Ver.VerStr(),Ver.Arch());        .  	    if (Res != 0)        .  	       break;        .  	 }        .        }        .          .        // Add a new version  159,200        *Last = NewVersion(Ver,Version,*Last);    1,056  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  214,920  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (7960x)1,869,191  => apt-pkg/pkgcachegen.cc:pkgCacheGenerator::NewVersion(pkgCache::VerIterator&, std::string, unsigned long) (7960x)    7,960        Ver->ParentPkg = Pkg.Index();   15,920        Ver->Hash = Hash;   71,640        if (List.NewVersion(Ver) == false)877,686,141  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::NewVersion(pkgCache::VerIterator) (7960x)        .  	 return _error->Error(_("Error occured while processing %s (NewVersion1)"),        .  			      PackageName.c_str());        .    119,400        if (List.UsePackage(Pkg,Ver) == false)61,173,416  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::UsePackage(pkgCache::PkgIterator, pkgCache::VerIterator) (7960x)        .  	 return _error->Error(_("Error occured while processing %s (UsePackage3)"),        .  			      PackageName.c_str());        .           55,720        if (NewFileVer(Ver,List) == false)47,154,873  => apt-pkg/pkgcachegen.cc:pkgCacheGenerator::NewFileVer(pkgCache::VerIterator&, pkgCacheGenerator::ListParser&) (7960x)    1,182  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        .  	 return _error->Error(_("Error occured while processing %s (NewVersion2)"),        .  			      PackageName.c_str());        .          .        // Read only a single record and return   23,880        if (OutVer != 0)        .        {        .  	 *OutVer = Ver;        .  	 FoundFileDeps |= List.HasFileDeps();        .  	 return true;        .        }              .     }        .          4     FoundFileDeps |= List.HasFileDeps();        .          6     if (Cache.HeaderP->PackageCount >= (1ULL<<sizeof(Cache.PkgP->ID)*8)-1)        2        return _error->Error(_("Wow, you exceeded the number of package "        .  			     "names this APT is capable of."));        4     if (Cache.HeaderP->VersionCount >= (1ULL<<(sizeof(Cache.VerP->ID)*8))-1)        2        return _error->Error(_("Wow, you exceeded the number of versions "        .  			     "this APT is capable of."));        4     if (Cache.HeaderP->DependsCount >= (1ULL<<(sizeof(Cache.DepP->ID)*8))-1ULL)        .        return _error->Error(_("Wow, you exceeded the number of dependencies "        .  			     "this APT is capable of."));        2     return true;       12  }        .  									/*}}}*/        .  // CacheGenerator::MergeFileProvides - Merge file provides   		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* If we found any file depends while parsing the main list we need to         .     resolve them. Since it is undesired to load the entire list of files        .     into the cache as virtual packages we do a two stage effort. MergeList        .     identifies the file depends and this creates Provdies for them by        .     re-parsing all the indexs. */        .  bool pkgCacheGenerator::MergeFileProvides(ListParser &List)       27  {        6  => ???:0x0002e057 (3x)        6     List.Owner = this;        .             3     unsigned int Counter = 0;   82,133     while (List.Step() == true)93,899,666  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Step() (16426x)        .     {  131,384        string PackageName = List.Package();4,063,542  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Package() (16423x)   49,269        if (PackageName.empty() == true)        .  	 return false;  114,961        string Version = List.Version();18,913,854  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Version() (16423x)   49,269        if (Version.empty() == true)        .  	 continue;        .          229,922        pkgCache::PkgIterator Pkg = Cache.FindPkg(PackageName);      696  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  443,421  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (16423x)6,230,826  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::FindPkg(std::string) (16423x)        .        if (Pkg.end() == true)        .  #if 0        .  	 // CNC:2003-03-03 - Ignore missing packages. This will happen when        .  	 //		     a package is placed in Allow-Duplicated and        .  	 //		     then removed, but the source cache is still        .  	 //		     counting with it as Allow-Duplicated. No good        .  	 //		     way to handle that right now.        .  	 return _error->Error(_("Error occured while processing %s (FindPkg)"),        .  				PackageName.c_str());        .  #else        .  	 continue;        .  #endif        .     16,423        Counter++;        .        // CNC:2003-02-16  115,617        if (Counter % 100 == 0 && Progress != 0) {      820  	 if (List.OrderedOffset() == true)    2,460  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.h:rpmListParser::OrderedOffset() (164x)    1,264  	    Progress->Progress(List.Offset());    1,106  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.h:rpmListParser::Offset() (158x)   49,500  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::Progress(unsigned long) (158x)        .  	 else       42  	    Progress->Progress(Counter);      966  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::Progress(unsigned long) (6x)        .        }        .    114,961        string Arch = List.Architecture();8,813,332  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Architecture() (16423x)        .        pkgCache::VerIterator Ver = Pkg.VersionList();  147,897        for (; Ver.end() == false; Ver++)        .        {        .  	 // We'd want to check against versionhash but repomd filelists        .  	 // don't carry all the necessary data. Settle for ver-arch match.  148,077  	 if (strcmp(Version.c_str(), Ver.VerStr()) == 0 &&1,794,802  => ???:__strcmp_ssse3 (16468x)   65,692  	     strcmp(Arch.c_str(), Ver.Arch()) == 0)  501,777  => ???:__strcmp_ssse3 (16423x)        .  	 {  213,499  	    if (List.CollectFileProvides(Cache,Ver) == false)4,529,540  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::CollectFileProvides(pkgCache&, pkgCache::VerIterator) (16423x)        .  	       return _error->Error(_("Error occured while processing %s (CollectFileProvides)"),PackageName.c_str());        .  	    break;        .  	 }        .        }        .                .        // CNC:2003-03-03 - Ignore missing versions. This will happen when        .        //		  a package is placed in Allow-Duplicated and        .        //		  then removed, but the source cache is still-- line 300 ------------------------------------------ line 301 ----------------------------------------        .        //		  counting with it as Allow-Duplicated. No good        .        //		  way to handle that right now.        .  #if 0        .        if (Ver.end() == true)        .  	 _error->Warning(_("Package %s %s was not found while processing file dependencies"),PackageName.c_str(),Version.c_str());        .  #endif        .     }        .          3     return true;       18  }        .  									/*}}}*/        .  // CacheGenerator::NewPackage - Add a new package			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This creates a new package structure and adds it to the hash table */        .  bool pkgCacheGenerator::NewPackage(pkgCache::PkgIterator &Pkg,string Name)1,598,080  {  319,616  => ???:0x0002e057 (159808x)        .  // CNC:2003-02-17 - Optimized.        .  #if 0        .     Pkg = Cache.FindPkg(Name);        .     if (Pkg.end() == false)        .        return true;        .  #else1,118,656     pkgCache::Package *P = Cache.FindPackage(Name.c_str());44,453,657  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::FindPackage(char const*) (159808x)      764  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  827,010     if (P != NULL) {        .        Pkg = pkgCache::PkgIterator(Cache, P);  115,862        return true;        .     }        .  #endif        .                 .     // Get a structure  307,622     unsigned long Package = Map.Allocate(sizeof(pkgCache::Package));3,299,765  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::Allocate(unsigned long) (43946x)  131,838     if (Package == 0)        .        return false;        .       307,622     Pkg = pkgCache::PkgIterator(Cache,Cache.PkgP + Package);        .             .     // Insert it into the hash table  307,622     unsigned long Hash = Cache.Hash(Name);2,373,084  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (43946x)  307,622     Pkg->NextPackage = Cache.HeaderP->HashTable[Hash];  131,838     Cache.HeaderP->HashTable[Hash] = Package;        .             .     // Set the name and the ID  263,676     Pkg->Name = Map.WriteString(Name);1,186,542  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (43946x)  131,838     if (Pkg->Name == 0)   43,946        return false;  263,676     Pkg->ID = Cache.HeaderP->PackageCount++;        .        87,892     return true;  958,848  }        .  									/*}}}*/        .  // CacheGenerator::NewFileVer - Create a new File<->Version association	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  bool pkgCacheGenerator::NewFileVer(pkgCache::VerIterator &Ver,        .  				   ListParser &List)   76,662  {   17,036  => ???:0x0002e057 (8518x)   25,554     if (CurrentFile == 0)    8,518        return true;        .             .     // Get a structure   34,072     unsigned long VerFile = Map.Allocate(sizeof(pkgCache::VerFile));  366,634  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::Allocate(unsigned long) (8518x)   17,036     if (VerFile == 0)    8,518        return 0;        .        42,590     pkgCache::VerFileIterator VF(Cache,Cache.VerFileP + VerFile);   42,590     VF->File = CurrentFile - Cache.PkgFileP;        .             .     // Link it to the end of the list   15,920     map_ptrloc *Last = &Ver->FileList;   18,710     for (pkgCache::VerFileIterator V = Ver.FileList(); V.end() == false; V++)      558        Last = &V->NextFile;   17,036     VF->NextFile = *Last;    8,518     *Last = VF.Index();        .        42,590     VF->Offset = List.Offset();   59,626  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.h:rpmListParser::Offset() (8518x)   42,590     VF->Size = List.Size();46,112,515  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Size() (8518x)   34,072     if (Cache.HeaderP->MaxVerFileSize < VF->Size)       12        Cache.HeaderP->MaxVerFileSize = VF->Size;    8,518     Cache.HeaderP->VerFileCount++;        .         8,518     return true;   59,626  }        .  									/*}}}*/        .  // CacheGenerator::NewVersion - Create a new Version 			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This puts a version structure in the linked list */        .  unsigned long pkgCacheGenerator::NewVersion(pkgCache::VerIterator &Ver,        .  					    string VerStr,        .  					    unsigned long Next)   71,640  {   15,920  => ???:0x0002e057 (7960x)        .     // Get a structure   47,760     unsigned long Version = Map.Allocate(sizeof(pkgCache::Version));  534,187  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::Allocate(unsigned long) (7960x)   23,880     if (Version == 0)        .        return 0;        .             .     // Fill it in   31,840     Ver = pkgCache::VerIterator(Cache,Cache.VerP + Version);   15,920     Ver->NextVer = Next;   39,800     Ver->ID = Cache.HeaderP->VersionCount++;   63,680     Ver->VerStr = Map.WriteString(VerStr);  214,920  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (7960x)   15,920     if (Ver->VerStr == 0)   31,840        return 0;        .             .     return Version;   55,720  }        .  									/*}}}*/        .  // ListParser::NewDepends - Create a dependency element			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This creates a dependency element in the tree. It is linked to the        .     version and to the package that it is pointing to. */        .  bool pkgCacheGenerator::ListParser::NewDepends(pkgCache::VerIterator Ver,        .  					       string PackageName,        .  					       string Version,        .  					       unsigned int Op,        .  					       unsigned int Type)1,236,534  {  190,236  => ???:0x0002e057 (95118x)   95,118     pkgCache &Cache = Owner->Cache;        .             .     // Get a structure  380,472     unsigned long Dependency = Owner->Map.Allocate(sizeof(pkgCache::Dependency));5,617,774  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::Allocate(unsigned long) (95118x)  190,236     if (Dependency == 0)        .        return false;        .             .     // Fill it in  190,236     pkgCache::DepIterator Dep(Cache,Cache.DepP + Dependency);  190,236     Dep->ParentVer = Ver.Index();  190,236     Dep->Type = Type;  190,236     Dep->CompareOp = Op;  570,708     Dep->ID = Cache.HeaderP->DependsCount++;        .             .     // Locate the target package        .     pkgCache::PkgIterator Pkg;1,426,770     if (Owner->NewPackage(Pkg,PackageName) == false)2,853,927  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (95118x)35,793,438  => apt-pkg/pkgcachegen.cc:pkgCacheGenerator::NewPackage(pkgCache::PkgIterator&, std::string) (95118x)        .        return false;        .             .     // Probe the reverse dependency list for a version string that matches  285,354     if (Version.empty() == false)        .     {        .  /*      for (pkgCache::DepIterator I = Pkg.RevDependsList(); I.end() == false; I++)        .  	 if (I->Version != 0 && I.TargetVer() == Version)        .  	    Dep->Version = I->Version;*/   42,332        if (Dep->Version == 0)  126,996  	 if ((Dep->Version = WriteString(Version)) == 0)  285,741  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (10583x)   10,583  	    return false;        .     }        .                .     // Link it to the package  190,236     Dep->Package = Pkg.Index();  190,236     Dep->NextRevDepends = Pkg->RevDepends;   95,118     Pkg->RevDepends = Dep.Index();        .             .     /* Link it to the version (at the end of the list)        .        Caching the old end point speeds up generation substantially */  285,354     if (OldDepVer != Ver)        .     {   15,226        OldDepLast = &Ver->DependsList;        .        for (pkgCache::DepIterator D = Ver.DependsList(); D.end() == false; D++)        .  	 OldDepLast = &D->NextDepends;        .        OldDepVer = Ver;        .     }        .          .     // Is it a file dependency?  190,236     if (PackageName[0] == '/')    6,592        FoundFileDeps = true;        .       380,472     Dep->NextDepends = *OldDepLast;   95,118     *OldDepLast = Dep.Index();  285,354     OldDepLast = &Dep->NextDepends;        .     95,118     return true;  570,708  }        .  									/*}}}*/        .  // ListParser::NewProvides - Create a Provides element			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  bool pkgCacheGenerator::ListParser::NewProvides(pkgCache::VerIterator Ver,        .  					        string PackageName,        .  						string Version)  617,892  {  112,344  => ???:0x0002e057 (56172x)  112,344     pkgCache &Cache = Owner->Cache;        .          .  // PM:2006-02-07 allow self-referencing provides for now at least...        .  #if 0        .     // We do not add self referencing provides        .     if (Ver.ParentPkg().Name() == PackageName)        .        return true;        .  #endif        .             .     // Get a structure  280,860     unsigned long Provides = Owner->Map.Allocate(sizeof(pkgCache::Provides));2,867,238  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::Allocate(unsigned long) (56172x)  168,516     if (Provides == 0)        .        return false;  112,344     Cache.HeaderP->ProvidesCount++;        .             .     // Fill it in  168,516     pkgCache::PrvIterator Prv(Cache,Cache.ProvideP + Provides,Cache.PkgP);   56,172     Prv->Version = Ver.Index();  112,344     Prv->NextPkgProv = Ver->ProvidesList;  112,344     Ver->ProvidesList = Prv.Index();  422,266     if (Version.empty() == false && (Prv->ProvideVersion = WriteString(Version)) == 0)  685,125  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (25375x)        .        return false;        .             .     // Locate the target package        .     pkgCache::PkgIterator Pkg;  954,924     if (Owner->NewPackage(Pkg,PackageName) == false)2,201,769  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (56172x)30,166,471  => apt-pkg/pkgcachegen.cc:pkgCacheGenerator::NewPackage(pkgCache::PkgIterator&, std::string) (56172x)   56,172        return false;        .             .     // Link it to the package   56,172     Prv->ParentPkg = Pkg.Index();  112,344     Prv->NextProvides = Pkg->ProvidesList;   56,172     Pkg->ProvidesList = Prv.Index();        .        56,172     return true;  337,032  }        .  									/*}}}*/        .  // CacheGenerator::SelectFile - Select the current file being parsed	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is used to select which file is to be associated with all newly        .     added versions. The caller is responsible for setting the IMS fields. */        .  bool pkgCacheGenerator::SelectFile(string File,string Site,        .  				   const pkgIndexFile &Index,        .  				   unsigned long Flags)       18  {        4  => ???:0x0002e057 (2x)        .     // Get some space for the structure       16     CurrentFile = Cache.PkgFileP + Map.Allocate(sizeof(*CurrentFile));    1,526  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)      236  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::Allocate(unsigned long) (2x)        4     if (CurrentFile == Cache.PkgFileP)        .        return false;        .             .     // Fill it in       14     CurrentFile->FileName = Map.WriteString(File);      104  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (2x)       18     CurrentFile->Site = WriteUniqString(Site);       50  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (2x)        8     CurrentFile->NextFile = Cache.HeaderP->FileList;        4     CurrentFile->Flags = Flags;        4     CurrentFile->ID = Cache.HeaderP->PackageFileCount;       26     CurrentFile->IndexType = WriteUniqString(Index.GetType()->Label);        9  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::GetType() const (1x)        9  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmPkgIndex::GetType() const (1x)      572  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (2x)        4     PkgFileName = File;       14     Cache.HeaderP->FileList = CurrentFile - Cache.PkgFileP;        2     Cache.HeaderP->PackageFileCount++;        .          6     if (CurrentFile->FileName == 0)        2        return false;        .             6     if (Progress != 0)       16        Progress->SubProgress(Index.Size());      337  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::SubProgress(unsigned long) (2x)      787  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   36,494  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmIndexFile::Size() const (1x)       37  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::Size() const (1x)        2     return true;       14  }        .  									/*}}}*/        .  // CacheGenerator::WriteUniqueString - Insert a unique string		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is used to create handles to strings. Given the same text it        .     always returns the same number */        .  unsigned long pkgCacheGenerator::WriteUniqString(const char *S,        .  						 unsigned int Size)  214,551  {   47,678  => ???:0x0002e057 (23839x)        .     /* We use a very small transient hash table here, this speeds up generation        .        by a fair amount on slower machines */  286,068     pkgCache::StringItem *&Bucket = UniqHash[(S[0]*5 + S[1]) % _count(UniqHash)];  119,157     if (Bucket != 0 &&    95,280         stringcmp(S,S+Size,Cache.StrP + Bucket->String) == 0)   62,454        return Bucket->String;        .             .     // Search for an insertion point   12,084     pkgCache::StringItem *I = Cache.StringItemP + Cache.HeaderP->StringList;        .     int Res = 1;    6,042     map_ptrloc *Last = &Cache.HeaderP->StringList;  543,162     for (; I != Cache.StringItemP; Last = &I->NextItem,   206,392          I = Cache.StringItemP + I->NextItem)        .     {  212,416        Res = stringcmp(S,S+Size,Cache.StrP + I->String);  327,660        if (Res >= 0)        .  	 break;        .     }        .             .     // Match    3,012     if (Res == 0)        .     {    5,868        Bucket = I;    2,934        return I->String;        .     }        .             .     // Get a structure      522     unsigned long Item = Map.Allocate(sizeof(pkgCache::StringItem));   13,914  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::Allocate(unsigned long) (87x)      261     if (Item == 0)       87        return 0;        .          .     // Fill in the structure      174     pkgCache::StringItem *ItemP = Cache.StringItemP + Item;      261     ItemP->NextItem = I - Cache.StringItemP;      174     *Last = Item;      696     ItemP->String = Map.WriteString(S,Size);    5,709  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::WriteString(char const*, unsigned int) (87x)      174     if (ItemP->String == 0)        .        return 0;        .           174     Bucket = ItemP;       87     return ItemP->String;  143,058  }        .  									/*}}}*/        .          .  // CheckValidity - Check that a cache is up-to-date			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This just verifies that each file in the list of index files exists,        .     has matching attributes with the cache and the cache does not have        .     any extra files. */        .  static bool CheckValidity(string CacheFile, FileIterator Start,         .                            FileIterator End,MMap **OutMap = 0)       20  {        4  => ???:0x0002e057 (2x)        .     // No file, certainly invalid       22     if (CacheFile.empty() == true || FileExists(CacheFile) == false)      108  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (2x)      270  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileExists(std::string) (2x)        2        return false;        .             .     // CNC:2003-02-20 - When --reinstall is used during a cache building        .     //		       process, the algorithm is sligthly changed to        .     //		       order the "better" architectures before, even if        .     //		       they are already in the system. Thus, we rebuild        .     //		       the cache when it's used.       14     bool ReInstall = _config->FindB("APT::Get::ReInstall", false);    7,488  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindB(char const*, bool) const (2x)        4     if (ReInstall == true)        2        return false;        .          .     // Map it       22     FileFd CacheF(CacheFile,FileFd::ReadOnly);      154  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::~FileFd() (2x)       54  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (2x)       18     SPtr<MMap> Map = new MMap(CacheF,MMap::Public | MMap::ReadOnly);      248  => ???:operator new(unsigned int) (2x)    1,363  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   16,627  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:MMap::MMap(FileFd&, unsigned long) (2x)       14     pkgCache Cache(Map);      687  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   30,389  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::pkgCache(MMap*, bool) (2x)       14     if (_error->PendingError() == true || Map->Size() == 0)       38  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (2x)        .     {        .        _error->Discard();        .        return false;        .     }        .             .     // CNC:2003-11-24       16     if (_system->OptionsHash() != Cache.HeaderP->OptionsHash)   62,091  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::OptionsHash() const (2x)        2        return false;        .          .     /* Now we check every index file, see if it is in the cache,        .        verify the IMS data and check that it is on the disk too.. */        .     SPtrArray<bool> Visited = new bool[Cache.HeaderP->PackageFileCount];        .     memset(Visited,0,sizeof(*Visited)*Cache.HeaderP->PackageFileCount);        .     for (; Start != End; Start++)        .     {              .        if ((*Start)->HasPackages() == false)-- line 640 ------------------------------------------ line 675 ----------------------------------------        .     {        .        _error->Discard();        .        return false;        .     }        .             .     if (OutMap != 0)        .        *OutMap = Map.UnGuard();        .     return true;       14  }        .  									/*}}}*/        .  // ComputeSize - Compute the total size of a bunch of files		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* Size is kind of an abstract notion that is only used for the progress        .     meter */        .  static unsigned long ComputeSize(FileIterator Start,FileIterator End)       12  {        2     unsigned long TotalSize = 0;       16     for (; Start != End; Start++)        .     {       18        if ((*Start)->HasPackages() == false)       10  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::HasPackages() const (2x)        5  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmDatabaseIndex::HasPackages() const (1x)        .  	 continue;             18        if ((*Start)->Exists() == false)        5  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmDatabaseIndex::Exists() const (1x)  104,452  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmIndex::Exists() const (2x)        .  	 continue;       18        TotalSize += (*Start)->Size();  113,932  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmIndexFile::Size() const (2x)      794  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::Size() const (1x)        .     }        .     return TotalSize;       12  }        .  									/*}}}*/        .  // BuildCache - Merge the list of index files into the cache		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  static bool BuildCache(pkgCacheGenerator &Gen,        .  		       OpProgress &Progress,        .  		       unsigned long &CurrentSize,unsigned long TotalSize,        .  		       FileIterator Start, FileIterator End)       24  {        4  => ???:0x0002e057 (2x)        .     FileIterator I;        8     for (I = Start; I != End; I++)        .     {       12        if ((*I)->HasPackages() == false)        5  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::HasPackages() const (1x)        5  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmDatabaseIndex::HasPackages() const (1x)        .  	 continue;        .               12        if ((*I)->Exists() == false)        5  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmDatabaseIndex::Exists() const (1x)   35,229  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmIndex::Exists() const (1x)        .  	 continue;        .         32        if ((*I)->FindInCache(Gen.GetCache()).end() == false)   35,109  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmPkgIndex::FindInCache(pkgCache&) const (1x)   13,800  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::FindInCache(pkgCache&) const (1x)        .        {        .  	 _error->Warning("Duplicate sources.list entry %s",        .  			 (*I)->Describe().c_str());        .  	 continue;        .        }        .               10        unsigned long Size = (*I)->Size();   35,713  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmIndexFile::Size() const (1x)       37  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::Size() const (1x)       44        Progress.OverallProgress(CurrentSize,TotalSize,Size,_("Reading Package Lists"));   13,208  => ???:gettext (2x)    3,130  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::OverallProgress(unsigned long, unsigned long, unsigned long, std::string) (2x)      580  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (2x)        6        CurrentSize += Size;        .               22        if ((*I)->Merge(Gen,Progress) == false)1,927,612,011  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmPkgIndex::Merge(pkgCacheGenerator&, OpProgress&) const (1x)710,244,953  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::Merge(pkgCacheGenerator&, OpProgress&) const (1x)        .  	 return false;        .     }           .          .     // CNC:2003-03-03 - Code that was here has been moved to its own function.        .             2     return true;       12  }        .  									/*}}}*/        .  // CNC:2003-03-03        .  // CollectFileProvides - Merge the file provides into the cache		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  static bool CollectFileProvides(pkgCacheGenerator &Gen,        .  				OpProgress &Progress,        .  				unsigned long &CurrentSize,unsigned long TotalSize,        .  			        FileIterator Start, FileIterator End)       24  {        4  => ???:0x0002e057 (2x)       10     for (FileIterator I = Start; I != End; I++)        .     {       36        if ((*I)->HasPackages() == false || (*I)->Exists() == false)        5  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmDatabaseIndex::Exists() const (1x)   70,345  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmIndex::Exists() const (2x)       10  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmUrpmPkgIndex::HasPackages() const (2x)        5  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.h:rpmDatabaseIndex::HasPackages() const (1x)        .  	 continue;        .         15        unsigned long Size = (*I)->Size();   71,045  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmIndexFile::Size() const (2x)       37  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::Size() const (1x)       73        Progress.OverallProgress(CurrentSize,TotalSize,Size,_("Reading Package Lists"));   19,645  => ???:gettext (3x)    8,713  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::OverallProgress(unsigned long, unsigned long, unsigned long, std::string) (3x)      873  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (3x)        6        CurrentSize += Size;        .         33        if ((*I)->MergeFileProvides(Gen,Progress) == false)66,334,134  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmDatabaseIndex::MergeFileProvides(pkgCacheGenerator&, OpProgress&) const (1x)80,019,355  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmindexfile.cc:rpmUrpmPkgIndex::MergeFileProvides(pkgCacheGenerator&, OpProgress&) const (2x)        .  	 return false;        .     }        2     return true;       12  }        .  									/*}}}*/        .  // MakeStatusCache - Construct the status cache				/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This makes sure that the status cache (the cache that has all         .     index files from the sources list and all local ones) is ready        .     to be mmaped. If OutMap is not zero then a MMap object representing        .     the cache will be stored there. This is pretty much mandetory if you        .     are using AllowMem. AllowMem lets the function be run as non-root        .     where it builds the cache 'fast' into a memory buffer. */        .  bool pkgMakeStatusCache(pkgSourceList &List,OpProgress &Progress,        .  			MMap **OutMap,bool AllowMem)       11  {        2  => ???:0x0002e057 (1x)        9     unsigned long MapSize = _config->FindI("APT::Cache-Limit",24*1024*1024);    3,449  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindI(char const*, int) const (1x)        .             .     vector<pkgIndexFile *> Files(List.begin(),List.end());        .     unsigned long EndOfSource = Files.size();       10     if (_system->AddStatusFiles(Files) == false)    1,435  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::AddStatusFiles(std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> >&) (1x)        .        return false;        .             .     // Decide if we can write to the files..       11     string CacheFile = _config->FindFile("Dir::Cache::pkgcache");   12,908  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindFile(char const*, char const*) const (1x)       10     string SrcCacheFile = _config->FindFile("Dir::Cache::srcpkgcache");    6,035  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindFile(char const*, char const*) const (1x)        .             .     // Decide if we can write to the cache        .     bool Writeable = false;        3     if (CacheFile.empty() == false)       16        Writeable = access(flNotFile(CacheFile).c_str(),W_OK) == 0;   30,743  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:flNotFile(std::string) (1x)   41,613  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)      135  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (1x)       11  => ???:access (1x)        .     else        .        if (SrcCacheFile.empty() == false)        .  	 Writeable = access(flNotFile(SrcCacheFile).c_str(),W_OK) == 0;        .             2     if (Writeable == false && AllowMem == false && CacheFile.empty() == false)        .        return _error->Error(_("Unable to write to %s"),flNotFile(CacheFile).c_str());        .            17     Progress.OverallProgress(0,1,1,_("Reading Package Lists"));  125,914  => ???:gettext (1x)    8,270  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)   38,679  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::OverallProgress(unsigned long, unsigned long, unsigned long, std::string) (1x)      381  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)        .             .     // Cache is OK, Fin.       14     if (CheckValidity(CacheFile,Files.begin(),Files.end(),OutMap) == true)  129,295  => apt-pkg/pkgcachegen.cc:CheckValidity(std::string, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, MMap**) (1x)       27  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (1x)        .     {        .        Progress.OverallProgress(1,1,1,_("Reading Package Lists"));        .        return true;        .     }        .             .     // CNC:2002-07-03        .  #if DYING        .     if (_system->PreProcess(Files.begin(),Files.end(),Progress) == false) -- line 808 ------------------------------------------ line 810 ----------------------------------------        .         _error->Error(_("Error pre-processing package lists"));        .         return false;        .     }        .  #endif        .     /* At this point we know we need to reconstruct the package cache,        .        begin. */        .     SPtr<FileFd> CacheF;        .     SPtr<DynamicMMap> Map;        5     if (Writeable == true && CacheFile.empty() == false)        .     {        2        unlink(CacheFile.c_str());    7,444  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       20  => ???:unlink (1x)       10        CacheF = new FileFd(CacheFile,FileFd::WriteEmpty);      124  => ???:operator new(unsigned int) (1x)       27  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (1x)        3        if (_error->PendingError() == true)       19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)        1  	 return false;        5        fchmod(CacheF->Fd(),0644);    7,413  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       11  => ???:fchmod (1x)       12        Map = new DynamicMMap(*CacheF,MMap::Public,MapSize);      124  => ???:operator new(unsigned int) (1x)      757  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   12,646  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::DynamicMMap(FileFd&, unsigned long, unsigned int) (1x)        .     }        .     else        .     {        .        // Just build it in memory..        .        Map = new DynamicMMap(MMap::Public,MapSize);        .     }        .             .     // Lets try the source cache.        1     unsigned long CurrentSize = 0;        .     unsigned long TotalSize = 0;        7     if (CheckValidity(SrcCacheFile,Files.begin(),   38,674  => apt-pkg/pkgcachegen.cc:CheckValidity(std::string, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, MMap**) (1x)        5  		     Files.begin()+EndOfSource) == true)       27  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (1x)        .     {        .        // Preload the map with the source cache        .        FileFd SCacheF(SrcCacheFile,FileFd::ReadOnly);        .        if (SCacheF.Read((unsigned char *)Map->Data() + Map->RawAllocate(SCacheF.Size()),        .  		       SCacheF.Size()) == false)        .  	 return false;        .          .        TotalSize = ComputeSize(Files.begin()+EndOfSource,Files.end());-- line 845 ------------------------------------------ line 871 ----------------------------------------        .  	 // No new file dependencies. Collect over the new packages.        .  	 if (CollectFileProvides(Gen,Progress,CurrentSize,TotalSize,        .  				 Files.begin()+EndOfSource,Files.end()) == false)        .  	    return false;        .        }        .     }        .     else        .     {        4        TotalSize = ComputeSize(Files.begin(),Files.end());  219,294  => apt-pkg/pkgcachegen.cc:ComputeSize(__gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >) (1x)        .          .        // CNC:2003-03-18        .        // For the file provides collection phase.        .        unsigned long SrcSize = ComputeSize(Files.begin(),        2  					  Files.begin()+EndOfSource);   71,978  => apt-pkg/pkgcachegen.cc:ComputeSize(__gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >) (1x)        4        TotalSize = (TotalSize*2)+SrcSize;        .                .        // Build the source cache       12        pkgCacheGenerator Gen(Map.Get(),&Progress);    1,708  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)   38,010  => apt-pkg/pkgcachegen.cc:pkgCacheGenerator::pkgCacheGenerator(DynamicMMap*, OpProgress*) (1x)      352  => apt-pkg/pkgcachegen.cc:pkgCacheGenerator::~pkgCacheGenerator() (1x)        3        if (_error->PendingError() == true)       19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)        1  	 return false;        2        if (BuildCache(Gen,Progress,CurrentSize,TotalSize,       10  		     Files.begin(),Files.begin()+EndOfSource) == false)2,637,994,003  => apt-pkg/pkgcachegen.cc:BuildCache(pkgCacheGenerator&, OpProgress&, unsigned long&, unsigned long, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >) (1x)        .  	 return false;        .          .        // CNC:2003-11-24        7        Gen.GetCache().HeaderP->OptionsHash = _system->OptionsHash();   27,349  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::OptionsHash() const (1x)        .          .        // CNC:2003-03-18        2        if (Gen.HasFileDeps() == true) {        .  	 // There are file dependencies. Collect over source packages.        2  	 Gen.GetCache().HeaderP->HasFileDeps = true;        2  	 if (CollectFileProvides(Gen,Progress,CurrentSize,TotalSize,        9  		     Files.begin(),Files.begin()+EndOfSource) == false)146,524,412  => apt-pkg/pkgcachegen.cc:CollectFileProvides(pkgCacheGenerator&, OpProgress&, unsigned long&, unsigned long, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >) (1x)        1  	    return false;        .  	 // Reset to check for new file dependencies in the status cache.        .  	 Gen.ResetFileDeps();        .        } else {        .  	 // Jump entries which are not going to be parsed.        .  	 CurrentSize += SrcSize;        .        }        .                .        // Write it back        .        // CNC:2003-03-03 - Notice that it is without the file provides. This        .        // is on purpose, since file requires introduced later on the status        .        // cache (database) must be considered when collecting file provides,        .        // even if using the sources cache (above).        5        if (Writeable == true && SrcCacheFile.empty() == false)        .        {        2  	 unlink(SrcCacheFile.c_str());       10  => ???:unlink (1x)       14  	 FileFd SCacheF(SrcCacheFile,FileFd::WriteEmpty);       77  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::~FileFd() (1x)       27  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (1x)        3  	 if (_error->PendingError() == true)       19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)        1  	    return false;        4  	 fchmod(SCacheF.Fd(),0644);       22  => ???:fchmod (1x)        .  	         .  	 // Write out the main data       10  	 if (SCacheF.Write(Map->Data(),Map->Size()) == false)      120  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::Write(void const*, unsigned long) (1x)        .  	    return _error->Error(_("IO Error saving source cache"));        3  	 SCacheF.Sync();      656  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)    5,127  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::Sync() (1x)        .  	         .  	 // Write out the proper header        2  	 Gen.GetCache().HeaderP->Dirty = false;        8  	 if (SCacheF.Seek(0) == false ||       39  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::Seek(unsigned long) (1x)        7  	     SCacheF.Write(Map->Data(),sizeof(*Gen.GetCache().HeaderP)) == false)       60  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::Write(void const*, unsigned long) (1x)        .  	    return _error->Error(_("IO Error saving source cache"));        2  	 Gen.GetCache().HeaderP->Dirty = true;        3  	 SCacheF.Sync();       34  => /home/agrr/apt-rpm/apt-pkg/contrib/fileutl.cc:FileFd::Sync() (1x)        .        }        .                .        // Build the status cache        2        if (BuildCache(Gen,Progress,CurrentSize,TotalSize,       10  		     Files.begin()+EndOfSource,Files.end()) == false)710,268,522  => apt-pkg/pkgcachegen.cc:BuildCache(pkgCacheGenerator&, OpProgress&, unsigned long&, unsigned long, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >) (1x)        1  	 return false;        .          .        // CNC:2003-03-18        2        if (Gen.HasFileDeps() == true) {        .  	 // There are new file dependencies. Collect over all packages.        2  	 Gen.GetCache().HeaderP->HasFileDeps = true;        .  	 if (CollectFileProvides(Gen,Progress,CurrentSize,TotalSize,       10  				 Files.begin(),Files.end()) == false)106,471,301  => apt-pkg/pkgcachegen.cc:CollectFileProvides(pkgCacheGenerator&, OpProgress&, unsigned long&, unsigned long, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >, __gnu_cxx::__normal_iterator<pkgIndexFile**, std::vector<pkgIndexFile*, std::allocator<pkgIndexFile*> > >) (1x)        .  	    return false;        .        } else if (Gen.GetCache().HeaderP->HasFileDeps == true) {        .  	 // Jump entries which are not going to be parsed.        .  	 CurrentSize += SrcSize;        .  	 // No new file dependencies. Collect over the new packages.        3  	 if (CollectFileProvides(Gen,Progress,CurrentSize,TotalSize,        .  		     Files.begin()+EndOfSource,Files.end()) == false)        .  	    return false;        .        }        .     }        .          3     if (_error->PendingError() == true)       76  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)        1        return false;        3     if (OutMap != 0)        .     {        3        if (CacheF != 0)        .        {        7  	 delete Map.UnGuard();    9,046  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:DynamicMMap::~DynamicMMap() (1x)       10  	 *OutMap = new MMap(*CacheF,MMap::Public | MMap::ReadOnly);      372  => ???:operator new(unsigned int) (1x)      235  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:MMap::MMap(FileFd&, unsigned long) (1x)        .        }        .        else        .        {        .  	 *OutMap = Map.UnGuard();        .        }              .     }        .          .     // CNC:2003-03-07 - Signal to the system so that it can free it's        .     //		       internal caches, if any.        5     _system->CacheBuilt();2,688,173  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::CacheBuilt() (1x)        .             2     return true;        7  }        .  									/*}}}*/        .  // MakeOnlyStatusCache - Build a cache with just the status files	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  bool pkgMakeOnlyStatusCache(OpProgress &Progress,DynamicMMap **OutMap)        .  {        .     unsigned long MapSize = _config->FindI("APT::Cache-Limit",24*1024*1024);        .     vector<pkgIndexFile *> Files;-- line 989 ------------------------------------------ line 1023 ----------------------------------------        .     *OutMap = Map.UnGuard();        .          .     // CNC:2003-03-07 - Signal to the system so that it can free it's        .     //		       internal caches, if any.        .     _system->CacheBuilt();        .             .             .     return true;  390,925  }        2  => ???:0x0002e057 (1x)        .  									/*}}}*/        .          .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc---------------------------------------------------------------------------------- Auto-annotated source: /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.tcc--------------------------------------------------------------------------------        Ir -- line 115 ----------------------------------------         .  	  }         .  	__r->_M_set_length_and_sharable(__len);         .  	return __r->_M_refdata();         .        }         .           .    template<typename _CharT, typename _Traits, typename _Alloc>         .      template <typename _InIterator>         .        _CharT*11,411,103        basic_string<_CharT, _Traits, _Alloc>::   773,310  => ???:0x0002e057 (386655x)         .        _S_construct(_InIterator __beg, _InIterator __end, const _Alloc& __a,         .  		   forward_iterator_tag)         .        {         .  #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING 2,363,954  	if (__beg == __end && __a == _Alloc())         .  	  return _S_empty_rep()._M_refdata();         .  #endif         .  	// NB: Not required, but considered best practice. 1,868,104  	if (__gnu_cxx::__is_null_pointer(__beg) && __beg != __end)         .  	  __throw_logic_error(__N("basic_string::_S_construct NULL not valid"));         .           .  	const size_type __dnew = static_cast<size_type>(std::distance(__beg,         .  								      __end));         .  	// Check for out_of_range and length_error exceptions. 4,670,260  	_Rep* __r = _Rep::_S_create(__dnew, size_type(0), __a);     7,337  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)81,155,433  => ???:std::string::_Rep::_S_create(unsigned int, unsigned int, std::allocator<char> const&) (347255x)         .  	__try         .  	  { _S_copy_chars(__r->_M_refdata(), __beg, __end); }         .  	__catch(...)         .  	  {         .  	    __r->_M_destroy(__a);         .  	    __throw_exception_again;         .  	  }         .  	__r->_M_set_length_and_sharable(__dnew);         .  	return __r->_M_refdata(); 8,273,839        }         .           .    template<typename _CharT, typename _Traits, typename _Alloc>         .      _CharT*         .      basic_string<_CharT, _Traits, _Alloc>::         .      _S_construct(size_type __n, _CharT __c, const _Alloc& __a)         .      {         .  #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING         .        if (__n == 0 && __a == _Alloc())-- line 156 ------------------------------------------ line 685 ----------------------------------------         .        if (__n2)         .  	_M_copy(_M_data() + __pos1, __s, __n2);         .        return *this;         .      }         .              .    template<typename _CharT, typename _Traits, typename _Alloc>         .      basic_string<_CharT, _Traits, _Alloc>         .      operator+(const _CharT* __lhs,         8  	      const basic_string<_CharT, _Traits, _Alloc>& __rhs)         .      {         .        __glibcxx_requires_string(__lhs);         .        typedef basic_string<_CharT, _Traits, _Alloc> __string_type;         .        typedef typename __string_type::size_type	  __size_type;         .        const __size_type __len = _Traits::length(__lhs);         .        __string_type __str;         5        __str.reserve(__len + __rhs.size());    14,154  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       237  => ???:std::string::reserve(unsigned int) (1x)         5        __str.append(__lhs, __len);        85  => ???:std::string::append(char const*, unsigned int) (1x)     7,112  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)         3        __str.append(__rhs);        71  => ???:std::string::append(std::string const&) (1x)         .        return __str;         7      }         .           .    template<typename _CharT, typename _Traits, typename _Alloc>         .      basic_string<_CharT, _Traits, _Alloc>         .      operator+(_CharT __lhs, const basic_string<_CharT, _Traits, _Alloc>& __rhs)         .      {         .        typedef basic_string<_CharT, _Traits, _Alloc> __string_type;         .        typedef typename __string_type::size_type	  __size_type;         .        __string_type __str;-- line 712 -------------------------------------------------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/rpm/rpmlistparser.cc--------------------------------------------------------------------------------       Ir -- line 27 ----------------------------------------        .  #include <apt-pkg/error.h>        .          .  #include <apti18n.h>        .          .  #include <algorithm>        .          .  #define WITH_VERSION_CACHING 1        .         62  string MultilibArchs[] = {"x86_64", "ia64", "ppc64", "sparc64"};        2  => ???:0x0002e057 (1x)        .          .  // ListParser::rpmListParser - Constructor				/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */       50  rpmListParser::rpmListParser(RPMHandler *Handler)       10  => ???:0x0002e057 (5x)       25  	: Handler(Handler), VI(0)        .  {       15     Handler->Rewind();       18  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Rewind() (3x)    8,656  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::Rewind() (2x)       25     if (Handler->IsDatabase() == true)       15  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMUrpmHandler::IsDatabase() (3x)       10  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMDBHandler::IsDatabase() (2x)        .     {        .  #ifdef APT_WITH_GNU_HASH_MAP       10        SeenPackages = new SeenPackagesType(517);      256  => ???:operator new(unsigned int) (2x)        .  #else        .        SeenPackages = new SeenPackagesType;        .  #endif        .     }        .     else        .     {        3        SeenPackages = NULL;        .     }       10     RpmData = RPMPackageData::Singleton();      140  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmpackagedata.cc:RPMPackageData::Singleton() (5x)       30  }        .                                                                          /*}}}*/        .         60  rpmListParser::~rpmListParser()       10  => ???:0x0002e057 (5x)        .  {       19     delete SeenPackages;      240  => ???:operator delete(void*) (2x)       30  }        .          .                                                                          /*}}}*/        .  // ListParser::Package - Return the package name			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is to return the name of the package this section describes */        .  string rpmListParser::Package()  510,600  {  102,120  => ???:0x0002e057 (51060x)  153,180     if (CurrentName.empty() == false)  130,560        return CurrentName;  705,024  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (26112x)        .          .  #ifdef WITH_VERSION_CACHING   74,844     if (VI != NULL) {   15,865        CurrentName = VI->ParentPkg().Name();   47,595        return CurrentName;1,378,539  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (15865x)        .     }        .  #endif        .     81,747     string Name = Handler->Name();8,616,034  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::Name() (1175x)45,034,291  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Name() (7908x)        .         9,083     Duplicated = false;        .             .        27,249     if (Name.empty() == true)        .     {       24        _error->Error(_("Corrupt pkglist: no RPMTAG_NAME in header entry"));   19,257  => ???:gettext (3x)      746  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   11,821  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:GlobalError::Error(char const*, ...) (3x)       57  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (3x)       18        return "";      219  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (3x)        .     }         .          .     bool IsDup = false;        .     27,240     if (RpmData->IsMultilibSys() && RpmData->IsCompatArch(Architecture())) {        .  	 Name += RpmData->GetCompatArchSuffix();        .  	 CurrentName = Name;        .     }        .          .             .     // If this package can have multiple versions installed at        .     // the same time, then we make it so that the name of the        .     // package is NAME+"#"+VERSION and also add a provides        .     // with the original name and version, to satisfy the         .     // dependencies.   54,480     if (RpmData->IsDupPackage(Name) == true)    1,577  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)1,693,013  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmpackagedata.cc:RPMPackageData::IsDupPackage(std::string const&) (9080x)        .        IsDup = true;   27,240     else if (SeenPackages != NULL) {        .        if (SeenPackages->find(Name.c_str()) != SeenPackages->end())        .        {        .  	 if (_config->FindB("RPM::Allow-Duplicated-Warning", true) == true)        .  	    _error->Warning(        .     _("There are multiple versions of \"%s\" in your system.\n"        .       "\n"        .       "This package won't be cleanly updated, unless you leave\n"        .       "only one version. To leave multiple versions installed,\n"-- line 115 ------------------------------------------ line 127 ----------------------------------------        .  	 IsDup = true;        .        }        .     }        .     if (IsDup == true)        .     {        .        Name += "#"+Version();        .        Duplicated = true;        .     }    18,160     CurrentName = Name;   45,400     return Name;  245,160  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (9080x)  357,420  }        .          .                                                                          /*}}}*/        .  // ListParser::Arch - Return the architecture string			/*{{{*/        .  // ---------------------------------------------------------------------        .  string rpmListParser::Architecture()  448,965  {   99,770  => ???:0x0002e057 (49885x)        .  #ifdef WITH_VERSION_CACHING  149,655     if (VI != NULL)   79,325        return VI->Arch();4,323,734  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (15865x)        .  #endif  238,140     return Handler->Arch();174,708,266  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Arch() (31623x)16,991,214  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::Arch() (2397x)  299,310  }        .                                                                          /*}}}*/        .  // ListParser::Version - Return the version string			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is to return the string describing the version in RPM form,        .   version-release. If this returns the blank string then the        .   entry is assumed to only describe package properties */        .  string rpmListParser::Version()  377,793  {   83,954  => ???:0x0002e057 (41977x)        .  #ifdef WITH_VERSION_CACHING  125,931     if (VI != NULL)   79,325        return VI->VerStr();4,563,927  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (15865x)        .  #endif        .    182,784     return Handler->EVR();461,081,845  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMHandler::EVR() (26112x)  251,862  }        .                                                                          /*}}}*/        .  // ListParser::NewVersion - Fill in the version structure		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */   15,920  bool rpmListParser::NewVersion(pkgCache::VerIterator Ver)   95,520  {   15,920  => ???:0x0002e057 (7960x)        .  #if WITH_VERSION_CACHING        .     // Cache it for future usage.  143,280     RpmData->SetVersion(Handler->GetID(), Offset(), Ver);   55,720  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.h:rpmListParser::Offset() (7960x)  382,080  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHandler::GetID() (7960x)        .  #endif        .             .     // Parse the section   87,560     Ver->Section = WriteUniqString(Handler->Group());  700,384  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::Group() (55x)44,069,123  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Group() (7905x)   87,560     Ver->Arch = WriteUniqString(Handler->Arch());43,793,832  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Arch() (7905x)  399,043  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::Arch() (55x)        .             .     // Archive Size   55,720     Ver->Size = Handler->FileSize();      275  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::FileSize() (55x)6,768,255  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::FileSize() (7905x)        .             .     // Unpacked Size (in kbytes)   55,720     Ver->InstalledSize = Handler->InstalledSize();42,212,502  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::InstalledSize() (7905x)  337,570  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::InstalledSize() (55x)        .          71,640     if (ParseDepends(Ver,pkgCache::Dep::Depends) == false)    2,036  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)450,460,686  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::ParseDepends(pkgCache::VerIterator, unsigned int) (7960x)    7,960         return false;   79,600     if (ParseDepends(Ver,pkgCache::Dep::Conflicts) == false)14,781,045  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::ParseDepends(pkgCache::VerIterator, unsigned int) (7960x)        .         return false;   79,600     if (ParseDepends(Ver,pkgCache::Dep::Obsoletes) == false)24,000,514  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::ParseDepends(pkgCache::VerIterator, unsigned int) (7960x)        .         return false;   79,600     if (ParseDepends(Ver,pkgCache::Dep::Suggests) == false)5,569,551  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::ParseDepends(pkgCache::VerIterator, unsigned int) (7960x)        .         return false;        .     71,640     if (ParseProvides(Ver) == false)265,330,009  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::ParseProvides(pkgCache::VerIterator) (7960x)    1,018  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        .         return false;        .     55,720     if (Handler->ProvideFileName() &&   39,525  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHandler::ProvideFileName() (7905x)      275  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::ProvideFileName() (55x)        .         NewProvides(Ver, Handler->FileName(), "") == false)        .  	 return false;        .          .     return true;   55,720  }        .  									/*}}}*/        .  // ListParser::UsePackage - Update a package structure			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is called to update the package with any new information        .     that might be found in the section */        .  bool rpmListParser::UsePackage(pkgCache::PkgIterator Pkg,        .  			       pkgCache::VerIterator Ver)  102,216  {   17,036  => ???:0x0002e057 (8518x)   34,072     if (SeenPackages != NULL)      613        (*SeenPackages)[Pkg.Name()] = true;   34,072     if (Pkg->Section == 0)   87,065        Pkg->Section = WriteUniqString(Handler->Group());  119,718  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::Group() (10x)44,461,250  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Group() (7905x)   25,554     if (_error->PendingError())   161,842  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (8518x)   34,072         return false;   59,626     string PkgName = Pkg.Name();2,682,624  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (8518x)   51,108     string::size_type HashPos = PkgName.find('#');  859,087  => ???:std::string::find(char, unsigned int) const (8518x)   17,036     if (HashPos != string::npos)        .        PkgName = PkgName.substr(0, HashPos);   59,634     Ver->Priority = RpmData->VerPriority(PkgName);   93,698     Pkg->Flags |= RpmData->PkgFlags(PkgName);   17,036     if (HashPos != string::npos && (Pkg->Flags & pkgCache::Flag::Essential))   34,072        Pkg->Flags = pkgCache::Flag::Important;   93,698     if (ParseStatus(Pkg,Ver) == false)    1,155  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  234,890  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::ParseStatus(pkgCache::PkgIterator, pkgCache::VerIterator) (8518x)        .         return false;        .     return true;   51,108  }        .                                                                          /*}}}*/        .  // ListParser::VersionHash - Compute a unique hash for this version	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .          .  static bool depsort(const Dependency *a, const Dependency *b)2,100,235  {           .     return a->Name < b->Name;2,100,235  }        .    234,821  static bool depuniq(const Dependency *a, const Dependency *b)  450,910  {           .     return a->Name == b->Name;  450,910  }        .  unsigned short rpmListParser::VersionHash()   68,144  {   17,036  => ???:0x0002e057 (8518x)        .  #ifdef WITH_VERSION_CACHING   34,072     if (VI != NULL)        .        return (*VI)->Hash;        .  #endif        .          .     unsigned long Result = INIT_FCS;  178,878     Result = AddCRC16(Result, Package().c_str(), Package().length());    2,078  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)21,609,370  => /home/agrr/apt-rpm/apt-pkg/contrib/crc-16.cc:AddCRC16(unsigned short, void const*, unsigned long) (8518x)1,405,470  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Package() (17036x)  187,396     Result = AddCRC16(Result, Version().c_str(), Version().length());1,641,318  => /home/agrr/apt-rpm/apt-pkg/contrib/crc-16.cc:AddCRC16(unsigned short, void const*, unsigned long) (8518x)447,734,686  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Version() (17036x)  187,396     Result = AddCRC16(Result, Architecture().c_str(), Architecture().length());  545,738  => /home/agrr/apt-rpm/apt-pkg/contrib/crc-16.cc:AddCRC16(unsigned short, void const*, unsigned long) (8518x)144,752,260  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Architecture() (17036x)        .          .     int DepSections[] = {         .        pkgCache::Dep::Depends,        .        pkgCache::Dep::Conflicts,        .        pkgCache::Dep::Obsoletes,   42,590     };        .       136,288     for (size_t i = 0; i < sizeof(DepSections)/sizeof(int); i++) {        .        vector<Dependency*> Deps;        .        vector<Dependency*> UniqDeps;        .    306,648        if (Handler->PRCO(DepSections[i], Deps) == false) continue;542,324,633  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) (1839x)283,854,929  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) (23715x)        .          .        sort(Deps.begin(), Deps.end(), depsort);        .          .        // Rpmdb can give out dupes for scriptlet dependencies, filter them out.        .        // XXX Why is this done here instead of the handler?   76,662        UniqDeps.assign(Deps.begin(), Deps.end());        .        vector<Dependency*>::iterator DepEnd = unique(UniqDeps.begin(),   323,684  						    UniqDeps.end(), depuniq);    1,431  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)3,389,297  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/stl_algo.h:__gnu_cxx::__normal_iterator<Dependency**, std::vector<Dependency*, std::allocator<Dependency*> > > std::unique<__gnu_cxx::__normal_iterator<Dependency**, std::vector<Dependency*, std::allocator<Dependency*> > >, bool (*)(Dependency const*, Dependency const*)>(__gnu_cxx::__normal_iterator<Dependency**, std::vector<Dependency*, std::allocator<Dependency*> > >, __gnu_cxx::__normal_iterator<Dependency**, std::vector<Dependency*, std::allocator<Dependency*> > >, bool (*)(Dependency const*, Dependency const*)) (25554x)        .        vector<Dependency*>::iterator I = UniqDeps.begin();  260,350        for (; I != DepEnd; I++) {   690,942  	 Result = AddCRC16(Result, (*I)->Name.c_str(), (*I)->Name.length());18,065,166  => /home/agrr/apt-rpm/apt-pkg/contrib/crc-16.cc:AddCRC16(unsigned short, void const*, unsigned long) (98706x)        .        }  255,132        for (I = Deps.begin(); I != Deps.end(); I++) {   510,060  	 delete (*I);12,239,450  => ???:operator delete(void*) (102012x)        .        }        .     }    8,518     return Result;   51,108  }        .                                                                          /*}}}*/        .  // ListParser::ParseStatus - Parse the status field			/*{{{*/        .  // ---------------------------------------------------------------------        .  bool rpmListParser::ParseStatus(pkgCache::PkgIterator Pkg,        .  				pkgCache::VerIterator Ver)   76,662  {      59,626     if (!Handler->IsDatabase())  // this means we're parsing an hdlist, so it's not installed   39,525  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMUrpmHandler::IsDatabase() (7905x)    3,065  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMDBHandler::IsDatabase() (613x)        .        return true;        .             .     // if we're reading from the rpmdb, then it's installed        .     //       613     Pkg->SelectedState = pkgCache::State::Install;      613     Pkg->InstState = pkgCache::State::Ok;      613     Pkg->CurrentState = pkgCache::State::Installed;        .           613     Pkg->CurrentVer = Ver.Index();        .             .     return true;   51,108  }        .          .                                                                          /*}}}*/        .  // ListParser::ParseDepends - Parse a dependency list			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is the higher level depends parser. It takes a tag and generates        .   a complete depends tree for the given version. */        .  bool rpmListParser::ParseDepends(pkgCache::VerIterator Ver,        .  				 unsigned int Type)  254,720  {   63,680  => ???:0x0002e057 (31840x)        .     vector<Dependency*> Deps;        .    382,080     if (Handler->PRCO(Type, Deps) == false)51,376,489  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) (220x)259,352,021  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) (31620x)        .        return false;        .       253,916     for (vector<Dependency*>::iterator I = Deps.begin(); I != Deps.end(); I++) {  190,236        if (NewDepends(Ver,(*I)->Name,(*I)->Version,2,758,422  		    (*I)->Op,(*I)->Type) == false) {    1,189  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)7,366,418  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (190236x)85,731,079  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::ListParser::NewDepends(pkgCache::VerIterator, std::string, std::string, unsigned int, unsigned int) (95118x)        .  	 return false;        .        }  475,590        delete (*I);11,413,950  => ???:operator delete(void*) (95118x)        .     }   74,912     return true;        .    222,880  }        .                                                                          /*}}}*/        .  bool rpmListParser::CollectFileProvides(pkgCache &Cache,        .  					pkgCache::VerIterator Ver)  197,076  {   32,846  => ???:0x0002e057 (16423x)        .     vector<string> Files;   32,846     bool ret = true;        .    164,230     if (Handler->FileList(Files) == false) {   79,050  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMUrpmHandler::FileList(std::vector<std::string, std::allocator<std::string> >&) (15810x)3,760,724  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::FileList(std::vector<std::string, std::allocator<std::string> >&) (613x)        .        return false;        .     }   32,846     for (vector<string>::iterator I = Files.begin(); I != Files.end(); I++) {        .        const char *FileName = (*I).c_str();        .        pkgCache::Package *P = Cache.FindPackage(FileName);        .        if (P != NULL) {        .  	 // Check if this is already provided.        .  	 bool Found = false;        .  	 for (pkgCache::PrvIterator Prv = Ver.ProvidesList();        .  	      Prv.end() == false; Prv++) {        .  	    if (strcmp(Prv.Name(), FileName) == 0) {-- line 346 ------------------------------------------ line 350 ----------------------------------------        .  	 }        .  	 if (Found == false && NewProvides(Ver, FileName, "") == false) {        .  	    ret = false;        .  	    break;        .  	 }        .        }        .     }        .     return ret;  114,961  }        .          .  // ListParser::ParseProvides - Parse the provides list			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  bool rpmListParser::ParseProvides(pkgCache::VerIterator Ver)   63,680  {   15,920  => ???:0x0002e057 (7960x)        .     vector<Dependency*> Provs;        .     87,560     if (Handler->PRCO(pkgCache::Dep::Provides, Provs) == false) {9,232,363  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMHdrHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) (55x)185,389,793  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::PRCO(unsigned int, std::vector<Dependency*, std::allocator<Dependency*> >&) (7905x)        .        return false;        .     }  128,264     for (vector<Dependency*>::iterator I = Provs.begin(); I != Provs.end(); I++) {1,291,956        if (NewProvides(Ver,(*I)->Name,(*I)->Version) == false) {44,587,302  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgCacheGenerator::ListParser::NewProvides(pkgCache::VerIterator, std::string, std::string) (56172x)    1,190  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)4,426,744  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (112344x)        .  	 return false;        .        }  280,860        delete (*I);6,740,440  => ???:operator delete(void*) (56172x)        .     }   23,880     return true;        .     55,720  }        .                                                                          /*}}}*/        .  // ListParser::Step - Move to the next section in the file		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This has to be carefull to only process the correct architecture */        .  bool rpmListParser::Step()  199,568  {   49,892  => ???:0x0002e057 (24946x)  174,671     while (Handler->Skip() == true)61,865,453  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::Skip() (23721x)79,796,542  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMDBHandler::Skip() (1232x)        .     {   74,844        CurrentName = "";        .          .  #ifdef WITH_VERSION_CACHING  439,985        VI = RpmData->GetVersion(Handler->GetID(), Offset());  174,636  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.h:rpmListParser::Offset() (24948x)1,197,504  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHandler::GetID() (24948x)   49,896        if (VI != NULL)   15,865  	 return true;        .  #endif        .           81,747        string RealName = Package();58,092,098  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Package() (9083x)        .     27,249        if (Duplicated == true)        .  	 RealName = RealName.substr(0,RealName.find('#'));   18,166        if (RpmData->IgnorePackage(RealName) == true)        .  	 continue;        .      79,369        if (Handler->IsDatabase() == true ||   39,540  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMUrpmHandler::IsDatabase() (7908x)    5,855  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMDBHandler::IsDatabase() (1171x)   86,988  	  RpmData->ArchScore(Architecture().c_str()) > 0)43,931,686  => apt-pkg/rpm/rpmlistparser.cc:rpmListParser::Architecture() (7908x)   18,152  	 return true;        .     }        .     return false;  149,676  }        .                                                                          /*}}}*/        .  // ListParser::LoadReleaseInfo - Load the release information		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  bool rpmListParser::LoadReleaseInfo(pkgCache::PkgFileIterator FileI,        .  				    FileFd &File)        .  {        .     // fixme: it should be necessary for RPM-- line 415 ------------------------------------------ line 443 ----------------------------------------        .     return !_error->PendingError(); */        .     return true;        .              .  	//return _error->Error(_("Do not call this method - urpmListParser::LoadReleaseInfo"));        .  }        .                                                                          /*}}}*/        .          .  off_t rpmListParser::Size()    25,554  {   93,698     return (Handler->InstalledSize()+512)/1024;42,227,339  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc:RPMUrpmHandler::InstalledSize() (7905x)3,748,888  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.h:RPMHdrHandler::InstalledSize() (613x)   17,036  }        .          .  // This is a slightly complex operation. It must take a package, and        .  // move every version to new packages, named accordingly to        .  // Allow-Duplicated rules.        .  void rpmListParser::VirtualizePackage(string Name)        .  {        .     pkgCache::PkgIterator FromPkgI = Owner->GetCache().FindPkg(Name);        .  -- line 461 ------------------------------------------ line 589 ----------------------------------------        .             }        .          }        .        }        .          .     }        .          .     xmlFreeDoc(RepoMD);        .     return true;  547,383  }        2  => ???:0x0002e057 (1x)        .  #endif /* APT_WITH_REPOMD */        .          .  #endif /* HAVE_RPM */        .          .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.h--------------------------------------------------------------------------------       Ir -- line 189 ----------------------------------------        .          { return this->_M_refcount > 0; }        .          .          void        .  	_M_set_leaked()        .          { this->_M_refcount = -1; }        .          .          void        .  	_M_set_sharable()  935,649          { this->_M_refcount = 0; }        .          .  	void        .  	_M_set_length_and_sharable(size_type __n)        .  	{        .  #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING1,871,298  	  if (__builtin_expect(this != &_S_empty_rep(), false))        .  #endif        .  	    {        .  	      this->_M_set_sharable();  // One reference.1,284,501  	      this->_M_length = __n;        .  	      traits_type::assign(this->_M_refdata()[__n], _S_terminal);        .  	      // grrr. (per 21.3.4)        .  	      // You cannot leave those LWG people alone for a second.        .  	    }        .  	}        .          .  	_CharT*        .  	_M_refdata() throw()3,335,123  	{ return reinterpret_cast<_CharT*>(this + 1); }        .          .  	_CharT*        .  	_M_grab(const _Alloc& __alloc1, const _Alloc& __alloc2)        .  	{        .  	  return (!_M_is_leaked() && __alloc1 == __alloc2)        .  	          ? _M_refcopy() : _M_clone(__alloc1);        .  	}        .  -- line 224 ------------------------------------------ line 225 ----------------------------------------        .  	// Create & Destroy        .  	static _Rep*        .  	_S_create(size_type, size_type, const _Alloc&);        .          .  	void        .  	_M_dispose(const _Alloc& __a)        .  	{        .  #ifndef _GLIBCXX_FULLY_DYNAMIC_STRING6,534,132  	  if (__builtin_expect(this != &_S_empty_rep(), false))        .  #endif5,744,134  	    if (__gnu_cxx::__exchange_and_add_dispatch(&this->_M_refcount,        .  						       -1) <= 0)7,814,855  	      _M_destroy(__a);7,288,513  => ???:std::string::_Rep::_M_destroy(std::allocator<char> const&) (55537x)        .  	}  // XXX MT        .          .  	void        .  	_M_destroy(const _Alloc&) throw();        .          .  	_CharT*        .  	_M_refcopy() throw()        .  	{-- line 245 ------------------------------------------ line 253 ----------------------------------------        .  	_CharT*        .  	_M_clone(const _Alloc&, size_type __res = 0);        .        };        .          .        // Use empty-base optimization: http://www.cantrip.org/emptyopt.html        .        struct _Alloc_hider : _Alloc        .        {        .  	_Alloc_hider(_CharT* __dat, const _Alloc& __a)1,401,731  	: _Alloc(__a), _M_p(__dat) { }        .          .  	_CharT* _M_p; // The actual data.        .        };        .          .      public:        .        // Data Members (public):        .        // NB: This is an unsigned type, and thus represents the maximum        .        // size that the allocator can hold.-- line 269 ------------------------------------------ line 271 ----------------------------------------        .        static const size_type	npos = static_cast<size_type>(-1);        .          .      private:        .        // Data Members (private):        .        mutable _Alloc_hider	_M_dataplus;        .          .        _CharT*        .        _M_data() const4,254,365        { return  _M_dataplus._M_p; }        .          .        _CharT*        .        _M_data(_CharT* __p)        .        { return (_M_dataplus._M_p = __p); }        .          .        _Rep*        .        _M_rep() const6,216,170        { return &((reinterpret_cast<_Rep*> (_M_data()))[-1]); }        .          .        // For the internal use we have functions similar to `begin'/`end'        .        // but they do not call _M_leak.        .        iterator        .        _M_ibegin() const        .        { return iterator(_M_data()); }        .          .        iterator        .        _M_iend() const        .        { return iterator(_M_data() + this->size()); }        .          .        void        .        _M_leak()    // for use in begin() & non-const op[]        .        {  314,138  	if (!_M_rep()->_M_is_leaked())  387,706  	  _M_leak_hard();      292  => ???:std::string::_M_leak_hard() (1x)        .        }        .          .        size_type        .        _M_check(size_type __pos, const char* __s) const        .        {1,063,278  	if (__pos > this->size())        .  	  __throw_out_of_range(__N(__s));        .  	return __pos;        .        }        .          .        void        .        _M_check_length(size_type __n1, size_type __n2, const char* __s) const        .        {        .  	if (this->max_size() - (this->size() - __n1) < __n2)-- line 317 ------------------------------------------ line 334 ----------------------------------------        .  		|| less<const _CharT*>()(_M_data() + this->size(), __s));        .        }        .          .        // When __n = 1 way faster than the general multichar        .        // traits_type::copy/move/assign.        .        static void        .        _M_copy(_CharT* __d, const _CharT* __s, size_type __n)        .        {1,868,104  	if (__n == 1)        .  	  traits_type::assign(*__d, *__s);        .  	else        .  	  traits_type::copy(__d, __s, __n);        .        }        .          .        static void        .        _M_move(_CharT* __d, const _CharT* __s, size_type __n)        .        {-- line 350 ------------------------------------------ line 387 ----------------------------------------        .          .        static void        .        _S_copy_chars(_CharT* __p, const _CharT* __k1, const _CharT* __k2)        .        { _M_copy(__p, __k1, __k2 - __k1); }        .          .        static int        .        _S_compare(size_type __n1, size_type __n2)        .        {  126,372  	const difference_type __d = difference_type(__n1 - __n2);        .          .  	if (__d > __gnu_cxx::__numeric_traits<int>::__max)        .  	  return __gnu_cxx::__numeric_traits<int>::__max;        .  	else if (__d < __gnu_cxx::__numeric_traits<int>::__min)        .  	  return __gnu_cxx::__numeric_traits<int>::__min;        .  	else        .  	  return int(__d);        .        }-- line 403 ------------------------------------------ line 525 ----------------------------------------        .        { _M_rep()->_M_dispose(this->get_allocator()); }        .          .        /**        .         *  @brief  Assign the value of @a str to this string.        .         *  @param  str  Source string.        .         */        .        basic_string&        .        operator=(const basic_string& __str) 3,790,081        { return this->assign(__str); }      460  => ???:std::string::assign(std::string const&) (2x)        .          .        /**        .         *  @brief  Copy contents of @a s into this string.        .         *  @param  s  Source null-terminated string.        .         */        .        basic_string&        .        operator=(const _CharT* __s)         .        { return this->assign(__s); }-- line 541 ------------------------------------------ line 605 ----------------------------------------        .        /**        .         *  Returns a read/write iterator that points one past the last        .         *  character in the %string.  Unshares the string.        .         */        .        iterator        .        end()        .        {        .  	_M_leak();   15,929  	return iterator(_M_data() + this->size());        .        }        .          .        /**        .         *  Returns a read-only (constant) iterator that points one past the        .         *  last character in the %string.        .         */        .        const_iterator        .        end() const-- line 621 ------------------------------------------ line 694 ----------------------------------------        .  #endif        .          .      public:        .        // Capacity:        .        ///  Returns the number of characters in the string, not including any        .        ///  null-termination.        .        size_type        .        size() const2,455,922        { return _M_rep()->_M_length; }        .          .        ///  Returns the number of characters in the string, not including any        .        ///  null-termination.        .        size_type        .        length() const  361,263        { return _M_rep()->_M_length; }        .          .        ///  Returns the size() of the largest possible %string.        .        size_type        .        max_size() const        .        { return _Rep::_S_max_size; }        .          .        /**        .         *  @brief  Resizes the %string to the specified number of characters.-- line 716 ------------------------------------------ line 874 ----------------------------------------        .        // Modifiers:        .        /**        .         *  @brief  Append a string to this string.        .         *  @param str  The string to append.        .         *  @return  Reference to this string.        .         */        .        basic_string&        .        operator+=(const basic_string& __str)      144        { return this->append(__str); }      227  => ???:std::string::append(std::string const&) (3x)        .          .        /**        .         *  @brief  Append a C string.        .         *  @param s  The C string to append.        .         *  @return  Reference to this string.        .         */        .        basic_string&        .        operator+=(const _CharT* __s)-- line 890 ------------------------------------------ line 949 ----------------------------------------        .         *  @brief  Append a C string.        .         *  @param s  The C string to append.        .         *  @return  Reference to this string.        .         */        .        basic_string&        .        append(const _CharT* __s)        .        {        .  	__glibcxx_requires_string(__s);      317  	return this->append(__s, traits_type::length(__s));    9,543  => ???:std::string::append(char const*, unsigned int) (16x)    7,112  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        .        }        .          .        /**        .         *  @brief  Append multiple characters.        .         *  @param n  The number of characters to append.        .         *  @param c  The character to use.        .         *  @return  Reference to this string.        .         *-- line 965 ------------------------------------------ line 994 ----------------------------------------        .          .        /**        .         *  @brief  Append a single character.        .         *  @param c  Character to append.        .         */        .        void        .        push_back(_CharT __c)        .        {     3,194  	const size_type __len = 1 + this->size();   10,502  	if (__len > this->capacity() || _M_rep()->_M_is_shared())    1,521  	  this->reserve(__len);    7,042  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)      566  => ???:std::string::reserve(unsigned int) (1x)        .  	traits_type::assign(_M_data()[this->size()], __c);        .  	_M_rep()->_M_set_length_and_sharable(__len);        .        }        .          .        /**        .         *  @brief  Set value to contents of another string.        .         *  @param  str  Source string to use.        .         *  @return  Reference to this string.-- line 1012 ------------------------------------------ line 1070 ----------------------------------------        .         *  This function sets the value of this string to the value of @a s.        .         *  The data is copied, so there is no dependence on @a s once the        .         *  function returns.        .         */        .        basic_string&        .        assign(const _CharT* __s)        .        {        .  	__glibcxx_requires_string(__s);3,394,561  	return this->assign(__s, traits_type::length(__s));    1,328  => ???:std::string::assign(char const*, unsigned int) (4x)        .        }        .          .        /**        .         *  @brief  Set value to multiple characters.        .         *  @param n  Length of the resulting string.        .         *  @param c  The character to use.        .         *  @return  Reference to this string.        .         *-- line 1086 ------------------------------------------ line 1195 ----------------------------------------        .         *  thrown.  The value of the string doesn't change if an error is        .         *  thrown.        .        */        .        basic_string&        .        insert(size_type __pos1, const basic_string& __str,        .  	     size_type __pos2, size_type __n)        .        { return this->insert(__pos1, __str._M_data()        .  			    + __str._M_check(__pos2, "basic_string::insert"),      365  			    __str._M_limit(__pos2, __n)); }   42,756  => ???:std::string::insert(unsigned int, char const*, unsigned int) (73x)    7,166  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)        .          .        /**        .         *  @brief  Insert a C substring.        .         *  @param pos  Iterator referencing location in string to insert at.        .         *  @param s  The C string to insert.        .         *  @param n  The number of characters to insert.        .         *  @return  Reference to this string.        .         *  @throw  std::length_error  If new length exceeds @c max_size().-- line 1211 ------------------------------------------ line 1235 ----------------------------------------        .         *  length_error is thrown.  If @a pos is beyond end(), out_of_range is        .         *  thrown.  The value of the string doesn't change if an error is        .         *  thrown.        .        */        .        basic_string&        .        insert(size_type __pos, const _CharT* __s)        .        {        .  	__glibcxx_requires_string(__s);       78  	return this->insert(__pos, __s, traits_type::length(__s));        .        }        .          .        /**        .         *  @brief  Insert multiple characters.        .         *  @param pos  Index in string to insert at.        .         *  @param n  Number of characters to insert        .         *  @param c  The character to insert.        .         *  @return  Reference to this string.-- line 1251 ------------------------------------------ line 1641 ----------------------------------------        .        // _S_construct_aux is used to implement the 21.3.1 para 15 which        .        // requires special behaviour if _InIter is an integral type        .        template<class _InIterator>        .          static _CharT*        .          _S_construct_aux(_InIterator __beg, _InIterator __end,        .  			 const _Alloc& __a, __false_type)        .  	{        .            typedef typename iterator_traits<_InIterator>::iterator_category _Tag;1,503,569            return _S_construct(__beg, __end, __a, _Tag());  321,348  => /usr/lib/gcc/i586-manbo-linux-gnu/4.5.1/../../../../include/c++/4.5.1/bits/basic_string.tcc:char* std::string::_S_construct<char const*>(char const*, char const*, std::allocator<char> const&, std::forward_iterator_tag) (1206x)        .  	}        .          .        // _GLIBCXX_RESOLVE_LIB_DEFECTS        .        // 438. Ambiguity in the "do the right thing" clause        .        template<class _Integer>        .          static _CharT*        .          _S_construct_aux(_Integer __beg, _Integer __end,        .  			 const _Alloc& __a, __true_type)-- line 1657 ------------------------------------------ line 1761 ----------------------------------------        .         *  @return  Index of start of first occurrence.        .         *        .         *  Starting from @a pos, searches forward for value of @a str within        .         *  this string.  If found, returns the index where it begins.  If not        .         *  found, returns npos.        .        */        .        size_type        .        find(const basic_string& __str, size_type __pos = 0) const       18        { return this->find(__str.data(), __pos, __str.size()); }    1,049  => ???:std::string::find(char const*, unsigned int, unsigned int) const (3x)        .          .        /**        .         *  @brief  Find position of a C string.        .         *  @param s  C string to locate.        .         *  @param pos  Index of character to search from (default 0).        .         *  @return  Index of start of first occurrence.        .         *        .         *  Starting from @a pos, searches forward for the value of @a s within        .         *  this string.  If found, returns the index where it begins.  If not        .         *  found, returns npos.        .        */        .        size_type        .        find(const _CharT* __s, size_type __pos = 0) const        .        {        .  	__glibcxx_requires_string(__s);        6  	return this->find(__s, __pos, traits_type::length(__s));    7,108  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)      496  => ???:std::string::find(char const*, unsigned int, unsigned int) const (1x)        .        }        .          .        /**        .         *  @brief  Find position of a character.        .         *  @param c  Character to locate.        .         *  @param pos  Index of character to search from (default 0).        .         *  @return  Index of first occurrence.        .         *-- line 1793 ------------------------------------------ line 1863 ----------------------------------------        .         *  @return  Index of first occurrence.        .         *        .         *  Starting from @a pos, searches forward for one of the characters of        .         *  @a str within this string.  If found, returns the index where it was        .         *  found.  If not found, returns npos.        .        */        .        size_type        .        find_first_of(const basic_string& __str, size_type __pos = 0) const4,743,048        { return this->find_first_of(__str.data(), __pos, __str.size()); }    7,337  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)425,888,100  => ???:std::string::find_first_of(char const*, unsigned int, unsigned int) const (592881x)        .          .        /**        .         *  @brief  Find position of a character of C substring.        .         *  @param s  String containing characters to locate.        .         *  @param pos  Index of character to search from.        .         *  @param n  Number of characters from s to search for.        .         *  @return  Index of first occurrence.        .         *-- line 1879 ------------------------------------------ line 1971 ----------------------------------------        .         *  Starting from @a pos, searches backward for @a c within this string.        .         *  If found, returns the index where it was found.  If not found,        .         *  returns npos.        .         *        .         *  Note: equivalent to rfind(c, pos).        .        */        .        size_type        .        find_last_of(_CharT __c, size_type __pos = npos) const  545,481        { return this->rfind(__c, __pos); }16,268,154  => ???:std::string::rfind(char, unsigned int) const (181827x)        .          .        /**        .         *  @brief  Find position of a character not in string.        .         *  @param str  String containing characters to avoid.        .         *  @param pos  Index of character to search from (default 0).        .         *  @return  Index of first occurrence.        .         *        .         *  Starting from @a pos, searches forward for a character not contained        .         *  in @a str within this string.  If found, returns the index where it        .         *  was found.  If not found, returns npos.        .        */        .        size_type        .        find_first_not_of(const basic_string& __str, size_type __pos = 0) const4,592,847        { return this->find_first_not_of(__str.data(), __pos, __str.size()); }   14,732  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)75,224,136  => ???:std::string::find_first_not_of(char const*, unsigned int, unsigned int) const (592881x)        .          .        /**        .         *  @brief  Find position of a character not in C substring.        .         *  @param s  C string containing characters to avoid.        .         *  @param pos  Index of character to search from.        .         *  @param n  Number of characters from s to consider.        .         *  @return  Index of first occurrence.        .         *-- line 2001 ------------------------------------------ line 2106 ----------------------------------------        .         *  Construct and return a new string using the @a n characters starting        .         *  at @a pos.  If the string is too short, use the remainder of the        .         *  characters.  If @a pos is beyond the end of the string, out_of_range        .         *  is thrown.        .        */        .        basic_string        .        substr(size_type __pos = 0, size_type __n = npos) const        .        { return basic_string(*this,4,493,883  			    _M_check(__pos, "basic_string::substr"), __n); }47,542,567  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&, unsigned int, unsigned int) (94866x)        .          .        /**        .         *  @brief  Compare to a string.        .         *  @param str  String to compare against.        .         *  @return  Integer < 0, 0, or > 0.        .         *        .         *  Returns an integer < 0 if this string is ordered before @a str, 0 if        .         *  their values are equivalent, or > 0 if this string is ordered after-- line 2122 ------------------------------------------ line 2129 ----------------------------------------        .        int        .        compare(const basic_string& __str) const        .        {        .  	const size_type __size = this->size();        .  	const size_type __osize = __str.size();        .  	const size_type __len = std::min(__size, __osize);        .          .  	int __r = traits_type::compare(_M_data(), __str.data(), __len);  903,674  	if (!__r)        .  	  __r = _S_compare(__size, __osize);        .  	return __r;        .        }        .          .        /**        .         *  @brief  Compare substring to a string.        .         *  @param pos  Index of first character of substring.        .         *  @param n  Number of characters in substring.-- line 2145 ------------------------------------------ line 2255 ----------------------------------------        .    /**        .     *  @brief  Concatenate two strings.        .     *  @param lhs  First string.        .     *  @param rhs  Last string.        .     *  @return  New string with value of @a lhs followed by @a rhs.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>        .      basic_string<_CharT, _Traits, _Alloc>  149,180      operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,        .  	      const basic_string<_CharT, _Traits, _Alloc>& __rhs)        .      {  119,344        basic_string<_CharT, _Traits, _Alloc> __str(__lhs);   14,113  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  805,572  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (29836x)  119,344        __str.append(__rhs);    7,105  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)11,105,775  => ???:std::string::append(std::string const&) (29836x)        .        return __str;  149,180      }        .          .    /**        .     *  @brief  Concatenate C string and string.        .     *  @param lhs  First string.        .     *  @param rhs  Last string.        .     *  @return  New string with value of @a lhs followed by @a rhs.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>-- line 2277 ------------------------------------------ line 2295 ----------------------------------------        .     *  @param rhs  Last string.        .     *  @return  New string with @a lhs followed by @a rhs.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>        .      inline basic_string<_CharT, _Traits, _Alloc>        .      operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs,        .  	     const _CharT* __rhs)        .      {       78        basic_string<_CharT, _Traits, _Alloc> __str(__lhs);      616  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (16x)        .        __str.append(__rhs);        .        return __str;        .      }        .          .    /**        .     *  @brief  Concatenate string and character.        .     *  @param lhs  First string.        .     *  @param rhs  Last string.-- line 2311 ------------------------------------------ line 2312 ----------------------------------------        .     *  @return  New string with @a lhs followed by @a rhs.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>        .      inline basic_string<_CharT, _Traits, _Alloc>        .      operator+(const basic_string<_CharT, _Traits, _Alloc>& __lhs, _CharT __rhs)        .      {        .        typedef basic_string<_CharT, _Traits, _Alloc>	__string_type;        .        typedef typename __string_type::size_type		__size_type;  172,673        __string_type __str(__lhs);1,509,111  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) (29781x)  142,894        __str.append(__size_type(1), __rhs);19,132,233  => ???:std::string::append(unsigned int, char) (29781x)        .        return __str;        .      }        .          .    // operator ==        .    /**        .     *  @brief  Test equivalence of two strings.        .     *  @param lhs  First string.        .     *  @param rhs  Second string.-- line 2329 ------------------------------------------ line 2337 ----------------------------------------        .          .    template<typename _CharT>        .      inline        .      typename __gnu_cxx::__enable_if<__is_char<_CharT>::__value, bool>::__type        .      operator==(const basic_string<_CharT>& __lhs,        .  	       const basic_string<_CharT>& __rhs)        .      { return (__lhs.size() == __rhs.size()        .  	      && !std::char_traits<_CharT>::compare(__lhs.data(), __rhs.data(),2,637,843  						    __lhs.size())); }        .          .    /**        .     *  @brief  Test equivalence of C string and string.        .     *  @param lhs  C string.        .     *  @param rhs  String.        .     *  @return  True if @a rhs.compare(@a lhs) == 0.  False otherwise.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>-- line 2353 ------------------------------------------ line 2361 ----------------------------------------        .     *  @param lhs  String.        .     *  @param rhs  C string.        .     *  @return  True if @a lhs.compare(@a rhs) == 0.  False otherwise.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>        .      inline bool        .      operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,        .  	       const _CharT* __rhs)5,590,737      { return __lhs.compare(__rhs) == 0; }105,189,132  => ???:std::string::compare(char const*) const (1059149x)        .          .    // operator !=        .    /**        .     *  @brief  Test difference of two strings.        .     *  @param lhs  First string.        .     *  @param rhs  Second string.        .     *  @return  True if @a lhs.compare(@a rhs) != 0.  False otherwise.        .     */-- line 2377 ------------------------------------------ line 2411 ----------------------------------------        .     *  @param lhs  First string.        .     *  @param rhs  Second string.        .     *  @return  True if @a lhs precedes @a rhs.  False otherwise.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>        .      inline bool        .      operator<(const basic_string<_CharT, _Traits, _Alloc>& __lhs,        .  	      const basic_string<_CharT, _Traits, _Alloc>& __rhs)  840,094      { return __lhs.compare(__rhs) < 0; }        .          .    /**        .     *  @brief  Test if string precedes C string.        .     *  @param lhs  String.        .     *  @param rhs  C string.        .     *  @return  True if @a lhs precedes @a rhs.  False otherwise.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>-- line 2427 ------------------------------------------ line 2597 ----------------------------------------        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>        .      inline basic_ostream<_CharT, _Traits>&        .      operator<<(basic_ostream<_CharT, _Traits>& __os,        .  	       const basic_string<_CharT, _Traits, _Alloc>& __str)        .      {        .        // _GLIBCXX_RESOLVE_LIB_DEFECTS        .        // 586. string inserter not a formatted function        7        return __ostream_insert(__os, __str.data(), __str.size());      705  => ???:std::basic_ostream<char, std::char_traits<char> >& std::__ostream_insert<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*, int) (1x)        .      }        .          .    /**        .     *  @brief  Read a line from stream into a string.        .     *  @param is  Input stream.        .     *  @param str  Buffer to store into.        .     *  @param delim  Character marking end of line.        .     *  @return  Reference to the input stream.-- line 2613 ------------------------------------------ line 2635 ----------------------------------------        .     *  number of characters stored into @a str.  Any previous contents        .     *  of @a str are erased.  If end of line was encountered, it is        .     *  extracted but not stored into @a str.        .     */        .    template<typename _CharT, typename _Traits, typename _Alloc>        .      inline basic_istream<_CharT, _Traits>&        .      getline(basic_istream<_CharT, _Traits>& __is,        .  	    basic_string<_CharT, _Traits, _Alloc>& __str)        9      { return getline(__is, __str, __is.widen('\n')); }   15,232  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)   32,409  => ???:std::basic_istream<char, std::char_traits<char> >& std::getline<char, std::char_traits<char>, std::allocator<char> >(std::basic_istream<char, std::char_traits<char> >&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, char) (1x)        .          .    template<>        .      basic_istream<char>&        .      getline(basic_istream<char>& __in, basic_string<char>& __str,        .  	    char __delim);        .          .  #ifdef _GLIBCXX_USE_WCHAR_T        .    template<>-- line 2651 -------------------------------------------------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/cachefile.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/cachefile.cc---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/rpm/raptheader.cc---------------------------------------------------------------------------------- Auto-annotated source: cmdline/apt-get.cc-------------------------------------------------------------------------------- Ir -- line 74 ----------------------------------------  .  // CNC:2003-03-18  .  #include <apt-pkg/luaiface.h>  .    .  #include <rpmversion.h>									/*}}}*/  .    .    .  using namespace std;  .    4  ostream c0out(0);410  => ???:__cxa_atexit (1x)  4  ostream c1out(0); 82  => ???:__cxa_atexit (1x)  4  ostream c2out(0); 82  => ???:__cxa_atexit (1x)  4  ostream c3out(0); 82  => ???:__cxa_atexit (1x)  4  ofstream devnull("/dev/null"); 82  => ???:__cxa_atexit (1x)  .  unsigned int ScreenWidth = 80;  .    .  int ParseInt(const string &IntStr)  .  {  .        char *offset;  .           return strtol(IntStr.c_str(),&offset,10);  .  }  .    .    .  // class CacheFile - Cover class for some dependency cache functions	/*{{{*/  .  // ---------------------------------------------------------------------  .  /* */  .  class CacheFile : public cmdCacheFile  3  {464,706  => /home/agrr/apt-rpm/cmdline/cmdline.cc:cmdCacheFile::~cmdCacheFile() (1x)  .     public:  .     bool CheckDeps(bool AllowBroken = false);  .     bool BuildCaches(bool WithLock = true)  .     {  .        OpTextProgress Prog(*_config);  .        if (pkgCacheFile::BuildCaches(Prog,WithLock) == false)  .  	 return false;  .        return true;  .     }  .     bool Open(bool WithLock = true)  .     {  7        OpTextProgress Prog(*_config);2,244  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)6,772  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpTextProgress::OpTextProgress(Configuration&) (1x)  6        if (pkgCacheFile::Open(Prog,WithLock) == false)1,107  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)4,961,954,193  => /home/agrr/apt-rpm/apt-pkg/cachefile.cc:pkgCacheFile::Open(OpProgress&, bool) (1x)  .  	 return false;  3        Sort();52,302,302  => /home/agrr/apt-rpm/cmdline/cmdline.cc:cmdCacheFile::Sort() (1x)  .    .        return true;  .     }  .     bool OpenForInstall()  .     {  .        // CNC:2004-03-07 - dont take lock if in download mode  .        if (_config->FindB("APT::Get::Print-URIs") == true ||  .  	  _config->FindB("APT::Get::Download-only") == true)  .  	 return Open(false);  .        else  .  	 return Open(true);  .     }  1     CacheFile() : cmdCacheFile() {}  .  };  .  									/*}}}*/  .    .  /*  .   * AG: Helper function for DUDF logging, refactored out of DoInstall()  .   *  .   */  .  void logBrokenPkgs(CommandLine &CmdL, CacheFile &Cache, string &errormsg)-- line 136 ------------------------------------------ line 229 ----------------------------------------  .     virtual void Close()  .     {  .        if (Cache) {  .  	 delete Cache;  .  	 Cache = NULL;  .        }  .     }  .    2     AptGetLuaCache() : Cache(0) {}  .  };  .  #endif  .  									/*}}}*/  .  // CNC:2003-03-06  .  // CheckOnly - Check if the cache has any changes to be applied		/*{{{*/  .  // ---------------------------------------------------------------------  .  /* Returns true if CheckOnly is active. */  .  bool CheckOnly(CacheFile &Cache)-- line 245 ------------------------------------------ line 264 ----------------------------------------  .  									/*}}}*/  .    .    .  // CacheFile::CheckDeps - Open the cache file				/*{{{*/  .  // ---------------------------------------------------------------------  .  /* This routine generates the caches and then opens the dependency cache  .     and verifies that the system is OK. */  .  bool CacheFile::CheckDeps(bool AllowBroken)  8  {  3     if (_error->PendingError() == true)10,214  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 38  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)  1        return false;  .    .  // CNC:2003-03-19 - Might be changed by some extension.  .  #if 0  .     // Check that the system is OK  .     if (DCache->DelCount() != 0 || DCache->InstCount() != 0)  .        return _error->Error("Internal Error, non-zero counts");  .  #endif  .    .     // Apply corrections for half-installed packages  5     if (pkgApplyStatus(*DCache) == false)1,027  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)1,620,426  => /home/agrr/apt-rpm/apt-pkg/algorithms.cc:pkgApplyStatus(pkgDepCache&) (1x)  .        return false;  .    .     // Nothing is broken  6     if (DCache->BrokenCount() == 0 || AllowBroken == true)  1        return true;  .    .     // Attempt to fix broken things  7     if (_config->FindB("APT::Get::Fix-Broken",false) == true)3,580  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindB(char const*, bool) const (1x)  .     {  .        c1out << _("Correcting dependencies...") << flush;  .        if (pkgFixBroken(*DCache) == false || DCache->BrokenCount() != 0)  .        {  .  	 c1out << _(" failed.") << endl;  .  	 ShowBroken(c1out,*this,true);  .    .  	 return _error->Error(_("Unable to correct dependencies"));-- line 300 ------------------------------------------ line 301 ----------------------------------------  .        }  .        if (pkgMinimizeUpgrade(*DCache) == false)  .  	 return _error->Error(_("Unable to minimize the upgrade set"));  .    .        c1out << _(" Done") << endl;  .     }  .     else  .     {  3        c1out << _("You might want to run `apt-get --fix-broken install' to correct these.") << endl;13,031  => ???:gettext (1x)7,432  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  5        ShowBroken(c1out,*this,true);1,650,199  => /home/agrr/apt-rpm/cmdline/cmdline.cc:ShowBroken(std::ostream&, cmdCacheFile&, bool, pkgDepCache::State*) (1x)  .    7        return _error->Error(_("Unmet dependencies. Try using --fix-broken."));6,518  => ???:gettext (1x)961  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)1,169  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:GlobalError::Error(char const*, ...) (1x) 19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)  .     }  .    .     return true;  5  }  .  									/*}}}*/  .  bool DoClean(CommandLine &CmdL);  .  bool DoAutoClean(CommandLine &CmdL);  .    .  // InstallPackages - Actually download and install the packages		/*{{{*/  .  // ---------------------------------------------------------------------  .  /* This displays the informative messages describing what is going to  .     happen and then calls the download routines */-- line 324 ------------------------------------------ line 1941 ----------------------------------------  .        Cleaner.Go(_config->FindDir("Dir::Cache::archives") + "partial/",*Cache);  .  }  .  									/*}}}*/  .  // DoCheck - Perform the check operation				/*{{{*/  .  // ---------------------------------------------------------------------  .  /* Opening automatically checks the system, this command is mostly used  .     for debugging */  .  bool DoCheck(CommandLine &CmdL)  6  {  .     CacheFile Cache;  .     Cache.Open();  3     Cache.CheckDeps();3,321,326  => cmdline/apt-get.cc:CacheFile::CheckDeps(bool) (1x)  .    .     return true;  7  }  .  									/*}}}*/  .  // DoSource - Fetch a source archive					/*{{{*/  .  // ---------------------------------------------------------------------  .  /* Fetch souce packages */  .  struct DscFile  .  {  .     string Package;  .     string Version;-- line 1963 ------------------------------------------ line 3389 ----------------------------------------  .     _config->Set("APT::Get::Fix-Broken",false);  .     _config->Set("APT::Get::Force-Yes",false);  .     _config->Set("APT::Get::APT::Get::No-List-Cleanup",true);  .     _config->Set("APT::Get::Pbo-Policy","optimized");  .  }  .  									/*}}}*/  .    .  int main(int argc,const char *argv[])  7  {  .     CommandLine::Args Args[] = {  .        {'h',"help","help",0},  .        {'v',"version","version",0},  .        {'V',"verbose-versions","APT::Get::Show-Versions",0},  .        {'q',"quiet","quiet",CommandLine::IntLevel},  .        {'q',"silent","quiet",CommandLine::IntLevel},  .        {'d',"download-only","APT::Get::Download-Only",0},  .        {'b',"compile","APT::Get::Compile",0},-- line 3405 ------------------------------------------ line 3430 ----------------------------------------  .        {0,"trivial-only","APT::Get::Trivial-Only",0},  .        {0,"remove","APT::Get::Remove",0},  .        {0,"only-source","APT::Get::Only-Source",0},  .        {0,"arch-only","APT::Get::Arch-Only",0},  .        {0,"check-only","APT::Get::Check-Only",0}, // CNC:2003-03-06  .        {0,"root","RPM::RootDir",CommandLine::HasArg},  .        {'c',"config-file",0,CommandLine::ConfigFile},  .        {'o',"option",0,CommandLine::ArbItem},164        {0,0,0,0}};  .     CommandLine::Dispatch Cmds[] = {{"update",&DoUpdate},  .                                     {"upgrade",&DoUpgrade},  .                                     {"install",&DoInstall},  .                                     // CNC:2004-03-22  .                                     {"reinstall",&DoInstall},  .                                     {"remove",&DoInstall},  .                                     {"dist-upgrade",&DoDistUpgrade},  .  				   {"build-dep",&DoBuildDep},-- line 3446 ------------------------------------------ line 3453 ----------------------------------------  .  				   {"help",&ShowHelp},  .  				   // ROLLBACK FUNCIONALITY ADDED BY DSP: 2006-01-04  .  				   {"rollback", &DoRollback},  .  				   {"rollback-hist", &DoRollbackHistory},  .  // CNC:2003-03-19  .  #ifdef APT_WITH_LUA  .  				   {"script",&DoScript},  .  #endif 42                                     {0,0}};  .    .     // Set up gettext support  3     setlocale(LC_ALL,"");51,259  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)45,371  => ???:setlocale (1x)  2     textdomain(PACKAGE);422  => ???:textdomain (1x)7,463  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  .    .     // Parse the command line and initialize the package library 10     CommandLine CmdL(Args,_config);153  => /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc:CommandLine::~CommandLine() (1x)2,105  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x) 10  => /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc:CommandLine::CommandLine(CommandLine::Args*, Configuration*) (1x)  9     if (pkgInitConfig(*_config) == false ||1,057  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)281,995  => /home/agrr/apt-rpm/apt-pkg/init.cc:pkgInitConfig(Configuration&) (1x)  7         CmdL.Parse(argc,argv) == false ||977  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)7,201  => /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc:CommandLine::Parse(int, char const**) (1x)  4         pkgInitSystem(*_config,_system) == false)1,235  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)49,239,798  => /home/agrr/apt-rpm/apt-pkg/init.cc:pkgInitSystem(Configuration&, pkgSystem*&) (1x)  .     {  .        if (_config->FindB("version") == true)  .  	 ShowHelp(CmdL);  .    .        _error->DumpErrors();  .        return 100;  .     }  .    .     // See if the help should be shown 11     if (_config->FindB("help") == true ||1,016  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)5,252  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindB(char const*, bool) const (1x)  5         _config->FindB("version") == true ||2,638  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindB(char const*, bool) const (1x)  3         CmdL.FileSize() == 0)970  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 38  => /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc:CommandLine::FileSize() const (1x)  .     {  .        ShowHelp(CmdL);  .        return 0;  .     }  .    .     // CNC:2003-11-21  5     if (CmdL.FileSize() > 1) 19  => /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc:CommandLine::FileSize() const (1x)  .     {  .        // CNC:2003-11-23  .        vector<string> URLLst;  .        for (const char **I = CmdL.FileList + 1; *I != 0; I++)  .        {  .  	 if (strstr(*I, "://") != NULL)  .  	 {  .  	    URLLst.push_back(*I);-- line 3498 ------------------------------------------ line 3506 ----------------------------------------  .  	    return 100;  .        }  .    .        for (const char **I = CmdL.FileList + 1; *I != 0; I++)  .  	 _config->Set("APT::Arguments::", *I);  .     }  .    .     // Deal with stdout not being a tty  4     if (ttyname(STDOUT_FILENO) == 0 && _config->FindI("quiet",0) < 1)7,485  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)785  => ???:ttyname (1x)  .        _config->Set("quiet","1");  .    .     // Setup the output streams  4     c0out.rdbuf(cout.rdbuf());7,913  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)3,375  => ???:std::basic_ios<char, std::char_traits<char> >::rdbuf(std::basic_streambuf<char, std::char_traits<char> >*) (1x)  4     c1out.rdbuf(cout.rdbuf()); 42  => ???:std::basic_ios<char, std::char_traits<char> >::rdbuf(std::basic_streambuf<char, std::char_traits<char> >*) (1x)  4     c2out.rdbuf(cout.rdbuf()); 42  => ???:std::basic_ios<char, std::char_traits<char> >::rdbuf(std::basic_streambuf<char, std::char_traits<char> >*) (1x)  4     c3out.rdbuf(cerr.rdbuf()); 42  => ???:std::basic_ios<char, std::char_traits<char> >::rdbuf(std::basic_streambuf<char, std::char_traits<char> >*) (1x)  7     if (_config->FindI("quiet",0) > 0)1,023  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)5,270  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindI(char const*, int) const (1x)  .        c0out.rdbuf(devnull.rdbuf());  7     if (_config->FindI("quiet",0) > 1)2,631  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindI(char const*, int) const (1x)  .        c1out.rdbuf(devnull.rdbuf());  .    .       .     // Setup the signals  3     signal(SIGPIPE,SIG_IGN);492  => ???:signal (1x)7,444  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  3     signal(SIGWINCH,SigWinch);246  => ???:signal (1x)  2     SigWinch(0);7,396  => /home/agrr/apt-rpm/cmdline/cmdline.cc:SigWinch(int) (1x)  .    .  // CNC:2003-11-23  .  #ifdef APT_WITH_LUA  .     AptGetLuaCache LuaCache;  5     _lua->SetCacheControl(&LuaCache); 38  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:_GetLuaObj() (1x)1,958  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)  7  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:Lua::SetCacheControl(LuaCacheControl*) (1x)  .    .     double Consume = 0;  8     if (argc > 1 && _lua->HasScripts("Scripts::AptGet::Command") == true) 19  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:_GetLuaObj() (1x)921  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,656  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:Lua::HasScripts(char const*) (1x)  .     {  .        _lua->SetGlobal("commit_ask", 1);  .        _lua->SetGlobal("command_args", CmdL.FileList);  .        _lua->SetGlobal("command_consume", 0.0);  .        _lua->RunScripts("Scripts::AptGet::Command");  .        Consume = _lua->GetGlobalNum("command_consume");  .        double Ask = _lua->GetGlobalNum("commit_ask");  .        _lua->ResetGlobals();-- line 3547 ------------------------------------------ line 3554 ----------------------------------------  .  	     ((*Cache).InstCount() > 0 || (*Cache).DelCount() > 0))  .  	    InstallPackages(Cache, false, Ask);  .        }  .     }  .    .     if (Consume == 0)  .  #endif  .     // Match the operation  7     CmdL.DispatchArg(Cmds);5,018,068,649  => /home/agrr/apt-rpm/apt-pkg/contrib/cmndline.cc:CommandLine::DispatchArg(CommandLine::Dispatch*, bool) (1x)1,249  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  .    .     // Print any errors or warnings found during parsing  4     if (_error->empty() == false) 57  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)  .     {  1        bool Errors = _error->PendingError(); 19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)  3        _error->DumpErrors();995  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x) 19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x)16,477  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:GlobalError::DumpErrors() (1x)  4        return Errors == true?100:0;  .     }  .    .     return 0; 22  }  .    .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/depcache.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/depcache.cc---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/cachefile.cc--------------------------------------------------------------------------------Ir -- line 21 ---------------------------------------- .  #include <apt-pkg/pkgsystem.h> .       .  #include <apti18n.h> .  									/*}}}*/ .   .  // CacheFile::CacheFile - Constructor					/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ 7  pkgCacheFile::pkgCacheFile() : Map(0), Cache(0), DCache(0), Policy(0) .  { 2  } .  									/*}}}*/ .  // CacheFile::~CacheFile - Destructor					/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ 8  pkgCacheFile::~pkgCacheFile() 2  => ???:0x0002e057 (1x) .  { 6     delete DCache;4,320  => /home/agrr/apt-rpm/apt-pkg/depcache.cc:pkgDepCache::~pkgDepCache() (1x) 6     delete Policy;308,023  => /home/agrr/apt-rpm/apt-pkg/../include/apt-pkg/policy.h:pkgPolicy::~pkgPolicy() (1x) 6     delete Cache;139  => /home/agrr/apt-rpm/apt-pkg/../include/apt-pkg/pkgcache.h:pkgCache::~pkgCache() (1x) 6     delete Map;225  => /home/agrr/apt-rpm/apt-pkg/contrib/mmap.cc:MMap::~MMap() (1x) 6     _system->UnLock(true);144,074  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::UnLock(bool) (1x) 5  }    .  									/*}}}*/ .  // CacheFile::BuildCaches - Open and build the cache files		/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ .  bool pkgCacheFile::BuildCaches(OpProgress &Progress,bool WithLock) 9  { 2  => ???:0x0002e057 (1x) 3     if (WithLock == true) 7        if (_system->Lock() == false)45,713,799  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::Lock() (1x) .  	 return false; .   .     // CNC:2002-07-06 .     if (WithLock == false) .        _system->LockRead(); .      7     if (_config->FindB("Debug::NoLocking",false) == true)2,712  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindB(char const*, bool) const (1x) 3        WithLock = false; .         4     if (_error->PendingError() == true)57  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x) 1        return false; .      .     // Read the source list 7     pkgSourceList List;662  => /home/agrr/apt-rpm/apt-pkg/sourcelist.cc:pkgSourceList::~pkgSourceList() (1x)3,924  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (2x)11  => /home/agrr/apt-rpm/apt-pkg/sourcelist.cc:pkgSourceList::pkgSourceList() (1x) 4     if (List.ReadMainList() == false)795  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)101,150  => /home/agrr/apt-rpm/apt-pkg/sourcelist.cc:pkgSourceList::ReadMainList() (1x) .        return _error->Error(_("The list of sources could not be read.")); .   .     // Read the caches10     bool Res = pkgMakeStatusCache(List,Progress,&Map,!WithLock);1,027  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,787,906,094  => /home/agrr/apt-rpm/apt-pkg/pkgcachegen.cc:pkgMakeStatusCache(pkgSourceList&, OpProgress&, MMap**, bool) (1x) 4     Progress.Done();23,709  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpTextProgress::Done() (1x) 3     if (Res == false) .        return _error->Error(_("The package lists or status file could not be parsed or opened.")); .   .     /* This sux, remove it someday */ 4     if (_error->empty() == false)19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x) .        _error->Warning(_("You may want to run apt-get update to correct these problems")); .  11     Cache = new pkgCache(Map);124  => ???:operator new(unsigned int) (1x)6,320  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::pkgCache(MMap*, bool) (1x) 1     if (_error->PendingError() == true)19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x) 3        return false; .     return true; 6  } .  									/*}}}*/ .  // CacheFile::Open - Open the cache files, creating if necessary	/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ 3  bool pkgCacheFile::Open(OpProgress &Progress,bool WithLock) 9  { 2  => ???:0x0002e057 (1x) 9     if (BuildCaches(Progress,WithLock) == false)4,100  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,833,757,947  => apt-pkg/cachefile.cc:pkgCacheFile::BuildCaches(OpProgress&, bool) (1x) 1        return false; .      .     // The policy engine 8     Policy = new pkgPolicy(Cache);256  => ???:operator new(unsigned int) (1x)730  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)1,551,272  => /home/agrr/apt-rpm/apt-pkg/policy.cc:pkgPolicy::pkgPolicy(pkgCache*) (1x) 4     if (_error->PendingError() == true)57  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x) 1        return false;14     if (ReadPinFile(*Policy) == false)741  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)9,842  => /home/agrr/apt-rpm/apt-pkg/policy.cc:ReadPinFile(pkgPolicy&, std::string) (1x)73  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x) 1        return false; .      .     // Create the dependency cache10     DCache = new pkgDepCache(Cache,Policy);132  => ???:operator new(unsigned int) (1x)886  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)27  => /home/agrr/apt-rpm/apt-pkg/depcache.cc:pkgDepCache::pkgDepCache(pkgCache*, pkgDepCache::Policy*) (1x) 4     if (_error->PendingError() == true)19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x) 1        return false; .      5     DCache->Init(&Progress);842  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,126,621,293  => /home/agrr/apt-rpm/apt-pkg/depcache.cc:pkgDepCache::Init(OpProgress*) (1x) 4     Progress.Done();9,096  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpTextProgress::Done() (1x) 1     if (_error->PendingError() == true)19  => /home/agrr/apt-rpm/apt-pkg/contrib/error.cc:_GetErrorObj() (1x) .        return false; .      .     return true; 6  } .  									/*}}}*/ .   .  // CacheFile::Close - close the cache files				/*{{{*/ .  // --------------------------------------------------------------------- .  /* */ .  void pkgCacheFile::Close() .  { .     delete DCache;-- line 119 ------------------------------------------ line 121 ---------------------------------------- .     delete Cache; .     delete Map; .     _system->UnLock(true); .   .     Map = 0; .     DCache = 0; .     Policy = 0; .     Cache = 0;12  } 2  => ???:0x0002e057 (1x) .  									/*}}}*/---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/rpm/rpmhandler.cc---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/rpm/rpmlistparser.cc---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/apt-pkg/rpm/urpmlistfile.cc---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/rpm/rpmversion.cc--------------------------------------------------------------------------------       Ir -- line 22 ----------------------------------------        .  #include <stdlib.h>        .  #include <assert.h>        .          .  #include "rpmmisc.h"        .  #include "configuration.h"        .          .  #include <rpm/rpmds.h>        .          8  rpmVersioningSystem rpmVS;       82  => ???:__cxa_atexit (1x)      748  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)      796  => apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::rpmVersioningSystem() (1x)        .          .  // rpmVS::rpmVersioningSystem - Constructor				/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */       13  rpmVersioningSystem::rpmVersioningSystem()        2  => ???:0x0002e057 (1x)      755  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       19  => /home/agrr/apt-rpm/apt-pkg/version.cc:pkgVersioningSystem::pkgVersioningSystem() (1x)        .  {        2     Label = "Standard .rpm";        5  }        .  									/*}}}*/        .  // rpmVS::ParseVersion - Parse a version into it's components           /*{{{*/        .  // ---------------------------------------------------------------------        .  /* Code ripped from rpmlib */        .  void rpmVersioningSystem::ParseVersion(const char *V, const char *VEnd,        .  				       char **Epoch,         .  				       char **Version,        .  				       char **Release)    9,648  {    2,412  => ???:0x0002e057 (1206x)        .     string tmp = string(V, VEnd);    3,618     char *evr = strdup(tmp.c_str());1,292,070  => ???:strdup (1206x)        .     const char *epoch = NULL;        .     const char *version = NULL;    1,206     const char *release = NULL;        .     char *s;        .      2,412     assert(evr != NULL);        .             .     s = strrchr(evr, '-');    2,412     if (s) {    1,206        *s++ = '\0';    1,206        release = s;        .     }        .     s = evr;   16,482     while (isdigit(*s)) s++;    2,412     if (*s == ':')        .     {        .        epoch = evr;      132        *s++ = '\0';        .        version = s;      220        if (*epoch == '\0') epoch = "0";        .     }        .     else        .     {        .        epoch = "0";        .        version = evr;        .     }        .          .  #define Xstrdup(a) (a) ? strdup(a) : NULL    7,148     *Epoch = Xstrdup(epoch);  281,992  => ???:strdup (1206x)    5,044     *Version = Xstrdup(version);  364,115  => ???:strdup (1206x)    8,442     *Release = Xstrdup(release);  379,295  => ???:strdup (1206x)        .  #undef Xstrdup    2,412     free(evr);  122,668  => ???:free (1206x)    7,236  }        .          .  static char const *add_epoch(char const *in_version)        .  {        .     char *out_version;        .     char *s;        .          .     if (in_version == 0)        .        return 0;-- line 91 ------------------------------------------ line 110 ----------------------------------------        .          .  									/*}}}*/        .  // rpmVS::CmpVersion - Comparison for versions				/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This fragments the version into E:V-R triples and compares each         .     portion separately. */        .  int rpmVersioningSystem::DoCmpVersion(const char *A,const char *AEnd,        .  				      const char *B,const char *BEnd)    5,427  {    1,206  => ???:0x0002e057 (603x)        .     char *AE, *AV, *AR;        .     char *BE, *BV, *BR;        .     int rc = 0;    7,236     ParseVersion(A, AEnd, &AE, &AV, &AR);      975  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,123,586  => apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::ParseVersion(char const*, char const*, char**, char**, char**) (603x)    7,236     ParseVersion(B, BEnd, &BE, &BV, &BR);1,061,240  => apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::ParseVersion(char const*, char const*, char**, char**, char**) (603x)    3,618     if (AE && !BE)      603         rc = 1;        .     else if (!AE && BE)        .         rc = -1;        .     else if (AE && BE)        .     {        .        int AEi, BEi;        .        AEi = atoi(AE);        .        BEi = atoi(BE);    1,206        if (AEi < BEi)        .  	  rc = -1;      559        else if (AEi > BEi)        .  	  rc = 1;        .     }        .     if (rc == 0)        .     {    3,913        rc = rpmvercmp(AV, BV);  900,843  => ???:rpmEVRcmp (559x)    1,118        if (rc == 0) {    3,348  	  if (AR && !BR)        .  	      rc = 1;       44  	  else if (!AR && BR)       44  	      rc = -1;        .  	  else if (AR && BR)    3,350  	      rc = rpmvercmp(AR, BR);  630,865  => ???:rpmEVRcmp (558x)        .        }        .     }    4,824     free(AE);free(AV);free(AR);;  548,914  => ???:free (1809x)    5,427     free(BE);free(BV);free(BR);;  186,322  => ???:free (1809x)        .     return rc;    4,221  }        .  									/*}}}*/        .  // rpmVS::DoCmpVersionArch - Compare versions, using architecture	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  int rpmVersioningSystem::DoCmpVersionArch(const char *A,const char *Aend,        .  					  const char *AA,const char *AAend,        .  					  const char *B,const char *Bend,        .  					  const char *BA,const char *BAend)-- line 161 ------------------------------------------ line 183 ----------------------------------------        .     return rc;        .  }        .  									/*}}}*/        .  // rpmVS::CheckDep - Check a single dependency				/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This simply preforms the version comparison and switch based on         .     operator. If DepVer is 0 then we are comparing against a provides        .     with no version. */  674,784  bool rpmVersioningSystem::CheckDep(const char *PkgVer,        .  				   int Op,const char *DepVer)2,249,280  {  449,856  => ???:0x0002e057 (224928x)        .     int PkgFlags = RPMSENSE_EQUAL;        .     int DepFlags = 0;        .     bool invert = false;        .     int rc;        .       949,362     switch (Op & 0x0F)        .     {        .      case pkgCache::Dep::LessEq:        .        DepFlags = RPMSENSE_LESS|RPMSENSE_EQUAL;        .        break;        .          .      case pkgCache::Dep::GreaterEq:        .        DepFlags = RPMSENSE_GREATER|RPMSENSE_EQUAL;        .        break;-- line 207 ------------------------------------------ line 223 ----------------------------------------        .        invert = true;        .        break;        .                .      default:        .        DepFlags = RPMSENSE_ANY;        .        break;        .     }        .  1,591,046     rpmds pds = rpmdsSingle(RPMTAG_PROVIDENAME, "", PkgVer, (rpmsenseFlags) PkgFlags);1,724,909,530  => ???:rpmdsSingle (224928x)1,591,046     rpmds dds = rpmdsSingle(RPMTAG_REQUIRENAME, "", DepVer, (rpmsenseFlags) DepFlags);531,126,887  => ???:rpmdsSingle (224928x)1,349,568     rpmdsSetNoPromote(pds, _rpmds_nopromote);    3,082  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)5,265,872  => ???:rpmdsSetNoPromote (224928x)1,124,640     rpmdsSetNoPromote(dds, _rpmds_nopromote);1,799,424  => ???:rpmdsSetNoPromote (224928x)  899,712     rc = rpmdsCompare(pds, dds);    1,506  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)561,317,705  => ???:rpmdsCompare (224928x)2,024,352     rpmdsFree(pds);655,068,968  => ???:rpmioFreePoolItem (224928x)1,574,496     rpmdsFree(dds);223,312,491  => ???:rpmioFreePoolItem (224928x)        .             .         33,100     return (!invert && rc) || (invert && !rc);1,349,568  }        .  									/*}}}*/        .  // rpmVS::CheckDep - Check a single dependency				/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This prototype is a wrapper over CheckDep above. It's useful in the        .     cases where the kind of dependency matters to decide if it matches        .     or not */        .  bool rpmVersioningSystem::CheckDep(const char *PkgVer,        .  				   pkgCache::DepIterator Dep)1,349,568  {  450,030     if (Dep->Type == pkgCache::Dep::Obsoletes &&        .         (PkgVer == 0 || PkgVer[0] == 0))  224,957        return false;2,024,352     return CheckDep(PkgVer,Dep->CompareOp,Dep.TargetVer());1,984,383,500  => apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::CheckDep(char const*, int, char const*) (224928x)1,124,640  }        .  									/*}}}*/        .  // rpmVS::UpstreamVersion - Return the upstream version string		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This strips all the vendor specific information from the version number */        .  string rpmVersioningSystem::UpstreamVersion(const char *Ver)        .  {        .     // Strip off the bit before the first colon        .     const char *I = Ver;-- line 263 ------------------------------------------ line 268 ----------------------------------------        .     // Chop off the trailing -        .     I = Ver;        .     size_t Last = strlen(Ver);        .     for (; *I != 0; I++)        .        if (*I == '-')        .  	 Last = I - Ver;        .             .     return string(Ver,Last);       14  }        2  => ???:0x0002e057 (1x)        .  									/*}}}*/        .          .  #endif /* HAVE_RPM */        .          .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: apt-pkg/depcache.cc--------------------------------------------------------------------------------       Ir -- line 24 ----------------------------------------        .  #include <iostream>        .              .  #include <apti18n.h>            .  									/*}}}*/        .          .  // DepCache::pkgDepCache - Constructors					/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        9  pkgDepCache::pkgDepCache(pkgCache *pCache,Policy *Plcy) :        2  => ???:0x0002e057 (1x)        7                  Cache(pCache), PkgState(0), DepState(0)        .  {        1     delLocalPolicy = 0;        1     LocalPolicy = Plcy;        2     if (LocalPolicy == 0)        .        delLocalPolicy = LocalPolicy = new Policy;        5  }        .  									/*}}}*/        .  // DepCache::~pkgDepCache - Destructor					/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */       19  pkgDepCache::~pkgDepCache()        2  => ???:0x0002e057 (1x)        .  {        5     delete [] PkgState;    3,451  => ???:operator delete[](void*) (1x)        5     delete [] DepState;    3,359  => ???:operator delete[](void*) (1x)        3     delete delLocalPolicy;       14  }      704  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)      115  => ???:operator delete(void*) (1x)    3,482  => apt-pkg/depcache.cc:pkgDepCache::~pkgDepCache()'2 (1x)        .  									/*}}}*/        .  // DepCache::Init - Generate the initial extra structures.		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This allocats the extension buffers and initializes them. */        .  bool pkgDepCache::Init(OpProgress *Prog)        9  {        2  => ???:0x0002e057 (1x)        3     delete [] PkgState;        3     delete [] DepState;        7     PkgState = new StateCache[Head().PackageCount];    1,163  => ???:operator new[](unsigned int) (1x)        5     DepState = new unsigned char[Head().DependsCount];      395  => ???:operator new[](unsigned int) (1x)        9     memset(PkgState,0,sizeof(*PkgState)*Head().PackageCount);  125,844  => ???:__memset_sse2 (1x)        7     memset(DepState,0,sizeof(*DepState)*Head().DependsCount);    10,444  => ???:__memset_sse2 (1x)        .          3     if (Prog != 0)        .     {        .        Prog->OverallProgress(0,2*Head().PackageCount,Head().PackageCount,       19  			    _("Building Dependency Tree"));   26,051  => ???:gettext (1x)    5,589  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::OverallProgress(unsigned long, unsigned long, unsigned long, std::string) (1x)    1,163  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)       16        Prog->SubProgress(Head().PackageCount,_("Candidate Versions"));    6,516  => ???:gettext (1x)    5,152  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::SubProgress(unsigned long, std::string) (1x)      287  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)        .     }        .             .     /* Set the current state of everything. In this state all of the        .        packages are kept exactly as is. See AllUpgrade */        .     int Done = 0;  219,729     for (PkgIterator I = PkgBegin(); I.end() != true; I++,Done++)  987,657  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::PkgIterator::operator++(int) (43946x)        .     {  131,838        if (Prog != 0)  263,676  	 Prog->Progress(Done);7,477,431  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::Progress(unsigned long) (43946x)        .                .        // Find the proper cache slot  175,784        StateCache &State = PkgState[I->ID];   43,946        State.iFlags = 0;        .                .        // Figure out the install version   43,946        State.CandidateVer = GetCandidateVer(I);   43,946        State.InstallVer = I.CurrentVer();   43,946        State.Mode = ModeKeep;        .          439,460        State.Update(I,*this);    2,729  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)5,336,623  => apt-pkg/depcache.cc:pkgDepCache::StateCache::Update(pkgCache::PkgIterator, pkgCache&) (43946x)        .     }           .             3     if (Prog != 0)        .     {        .                .        Prog->OverallProgress(Head().PackageCount,2*Head().PackageCount,        .  			    Head().PackageCount,       19  			    _("Building Dependency Tree"));    6,508  => ???:gettext (1x)    2,752  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::OverallProgress(unsigned long, unsigned long, unsigned long, std::string) (1x)      289  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)       16        Prog->SubProgress(Head().PackageCount,_("Dependency Generation"));    6,516  => ???:gettext (1x)    2,515  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::SubProgress(unsigned long, std::string) (1x)      296  => ???:std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&) (1x)        .     }        .             4     Update(Prog);      822  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,104,085,474  => apt-pkg/depcache.cc:pkgDepCache::Update(OpProgress*) (1x)        .          .  // CNC:2003-03-17        .  #ifdef APT_WITH_LUA        4     _lua->SetDepCache(this);       57  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:_GetLuaObj() (1x)      811  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)       11  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:Lua::SetDepCache(pkgDepCache*) (1x)        6     _lua->RunScripts("Scripts::Cache::Init", true);       19  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:_GetLuaObj() (1x)   12,103  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:Lua::RunScripts(char const*, bool) (1x)        1     _lua->ResetCaches();       19  => /home/agrr/apt-rpm/apt-pkg/luaiface.cc:_GetLuaObj() (1x)        .  #endif        .             .     return true;        7  }         .  									/*}}}*/        .          .  // DepCache::CheckDep - Checks a single dependency			/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This first checks the dependency against the main target package and        .     then walks along the package provides list and checks if each provides         .     will be installed then checks the provides against the dep. Res will be         .     set to the package which was used to satisfy the dep. */        .  bool pkgDepCache::CheckDep(DepIterator Dep,int Type,PkgIterator &Res)2,282,832  {  570,708  => ???:0x0002e057 (285354x)        .  // CNC:2003-02-17 - This function is the main path when checking        .  //                  dependencies, so we must avoid as much overhead        .  //                  as possible. It has several changes to improve        .  //                  performance.        .  #if 0        .     Res = Dep.TargetPkg();        .          .     /* Check simple depends. A depends -should- never self match but -- line 127 ------------------------------------------ line 209 ----------------------------------------        .     //        .     PkgIterator &Dep_TargetPkg = Res;        .     PkgIterator Dep_ParentPkg = Dep.ParentPkg();        .     pkgVersioningSystem &VS = this->VS();        .          .     /* Check simple depends. A depends -should- never self match but         .        we allow it anyhow because dpkg does. Technically it is a packaging        .        bug. Conflicts may never self match */  571,818     if (Dep_TargetPkg != Dep_ParentPkg ||         .         (Dep->Type != Dep::Conflicts && Dep->Type != Dep::Obsoletes))        .     {        .        PkgIterator &Pkg = Dep_TargetPkg;        .          .        // Check the base package1,235,936        switch (Type)        .        {        .  	 case NowVersion:  285,216  	    if (Pkg->CurrentVer != 0)        .  	       // CNC:2002-07-10 - RPM must check the dependency type to        .  	       //		   properly define if it would be satisfied        .  	       //		   or not.   98,284  	       if (VS.CheckDep(Pkg.CurrentVer().VerStr(),Dep) == true)1,990,281,481  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::CheckDep(char const*, pkgCache::DepIterator) (5822x)    5,822  		  return true;        .  	    break;        .          .  	 case InstallVersion:  760,576  	    if (PkgState[Pkg->ID].InstallVer != 0)        .  	       if (VS.CheckDep(PkgState[Pkg->ID].InstVerIter(*this).VerStr(),        .  				       Dep) == true)        .  		  return true;        .  	    break;        .                .  	 case CandidateVersion:1,277,950  	    if (PkgState[Pkg->ID].CandidateVer != 0)  274,505  	       if (VS.CheckDep(PkgState[Pkg->ID].CandidateVerIter(*this).VerStr(),257,461,371  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::CheckDep(char const*, pkgCache::DepIterator) (20707x)   62,121  				       Dep) == true)   20,707  		  return true;        .  	    break;        .        }        .          .                .     }        .       522,688     if (Dep->Type == Dep::Obsoletes)  261,488        return false;        .             .     // Check the providing packages        .     PrvIterator P = Dep_TargetPkg.ProvidesList();        .     PkgIterator &Pkg = Dep_ParentPkg;  706,182     for (; P.end() != true; P++)        .     {        .        PkgIterator P_OwnerPkg = P.OwnerPkg();        .          .        /* Provides may never be applied against the same package if it is        .           a conflicts. See the comment above. */  619,663        if (P_OwnerPkg == Pkg && Dep->Type == Dep::Conflicts)        .  	 continue;        .                .        // Check if the provides is a hit1,279,348        switch (Type)        .        {        .  	 case NowVersion:        .  	    {  239,582  	       if (P_OwnerPkg.CurrentVer() != P.OwnerVer())        .  		  continue;        .  	       break;        .  	    }        .  	 case InstallVersion:        .  	    {   89,912  	       StateCache &State = PkgState[P_OwnerPkg->ID];  929,274  	       if (State.InstallVer != (Version *)P.OwnerVer())        .  		  continue;        .  	       break;        .  	    }        .  	 case CandidateVersion:        .  	    {  117,535  	       StateCache &State = PkgState[P_OwnerPkg->ID];1,136,148  	       if (State.CandidateVer != (Version *)P.OwnerVer())        .  		  continue;        .  	       break;        .  	    }        .        }        .                .        // Compare the versions.4,151,684        if (VS.CheckDep(P.ProvideVersion(),Dep) == true) // CNC:2002-07-101,667,706,152  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmversion.cc:rpmVersioningSystem::CheckDep(char const*, pkgCache::DepIterator) (198399x)        .        {        .  	 Res = P_OwnerPkg;  195,460  	 return true;        .        }        .     }        .          .     // CNC:2002-07-05  499,833     if (_system->IgnoreDep(VS,Dep) == true)38,616,235  => /home/agrr/apt-rpm/apt-pkg/rpm/rpmsystem.cc:rpmSystem::IgnoreDep(pkgVersioningSystem&, pkgCache::DepIterator&) (55537x)        .     {        .        Res = Dep_TargetPkg;  111,074        return true;        .     }        .  #endif        .          .     return false;1,712,124  }        .  									/*}}}*/        .  // DepCache::AddSizes - Add the packages sizes to the counters		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* Call with Mult = -1 to preform the inverse opration */        .  void pkgDepCache::AddSizes(const PkgIterator &Pkg,signed long Mult)  439,460  {   87,892  => ???:0x0002e057 (43946x)  103,722     StateCache &P = PkgState[Pkg->ID];        .       131,838     if (Pkg->VersionList == 0)        .        return;        .        47,490     if (Pkg.State() == pkgCache::PkgIterator::NeedsConfigure &&   474,900  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::PkgIterator::State() const (7915x)        .         P.Keep() == true)        .        return;        .             .     // Compute the size data   15,830     if (P.NewInstall() == true)        .     {        .        iUsrSize += (signed)(Mult*P.InstVerIter(*this)->InstalledSize);        .        iDownloadSize += (signed)(Mult*P.InstVerIter(*this)->Size);        .        return;        .     }        .             .     // Upgrading   35,951     if (Pkg->CurrentVer != 0 &&         .         (P.InstallVer != (Version *)Pkg.CurrentVer() ||         .  	(P.iFlags & ReInstall) == ReInstall) && P.InstallVer != 0)        .     {        .        iUsrSize += (signed)(Mult*((signed)P.InstVerIter(*this)->InstalledSize -         .  			(signed)Pkg.CurrentVer()->InstalledSize));        .        iDownloadSize += (signed)(Mult*P.InstVerIter(*this)->Size);        .        return;        .     }        .             .     // Reinstall   47,490     if (Pkg.State() == pkgCache::PkgIterator::NeedsUnpack &&  237,450  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::PkgIterator::State() const (7915x)        .         P.Delete() == false)        .     {        .        iDownloadSize += (signed)(Mult*P.InstVerIter(*this)->Size);        .        return;        .     }        .             .     // Removing   33,499     if (Pkg->CurrentVer != 0 && P.InstallVer == 0)        .     {        .        iUsrSize -= (signed)(Mult*Pkg.CurrentVer()->InstalledSize);        .        return;        .     }     263,676  }        .  									/*}}}*/        .  // DepCache::AddStates - Add the package to the state counter		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This routine is tricky to use, you must make sure that it is never         .     called twice for the same package. This means the Remove/Add section        .     should be as short as possible and not encompass any code that will         .     calld Remove/Add itself. Remember, dependencies can be circular so        .     while processing a dep for Pkg it is possible that Add/Remove        .     will be called on Pkg */        .  void pkgDepCache::AddStates(const PkgIterator &Pkg,int Add)  439,460  {   87,892  => ???:0x0002e057 (43946x)  219,730     StateCache &State = PkgState[Pkg->ID];        .             .     // The Package is broken   87,892     if ((State.DepState & DepInstMin) != DepInstMin)       18        iBrokenCount += Add;        .             .     // Bad state  263,676     if (Pkg.State() != PkgIterator::NeedsNothing)      795  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,636,490  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::PkgIterator::State() const (43946x)        .        iBadCount += Add;        .             .     // Not installed  131,838     if (Pkg->CurrentVer == 0)        .     {  129,999        if (State.Mode == ModeDelete &&         .  	  (State.iFlags | Purge) == Purge && Pkg.Purge() == false)        .  	 iDelCount += Add;        .           86,666        if (State.Mode == ModeInstall)        .  	 iInstCount += Add;        .        return;        .     }        .             .     // Installed, no upgrade    1,226     if (State.Status == 0)        .     {	     1,138        if (State.Mode == ModeDelete)        .  	 iDelCount += Add;        .        else    1,138  	 if ((State.iFlags & ReInstall) == ReInstall)        .  	    iInstCount += Add;        .                .        return;        .     }        .             .     // Alll 3 are possible      132     if (State.Mode == ModeDelete)        .        iDelCount += Add;          88     if (State.Mode == ModeKeep)      176        iKeepCount += Add;       88     if (State.Mode == ModeInstall)        .        iInstCount += Add;  263,676  }        .  									/*}}}*/        .  // DepCache::BuildGroupOrs - Generate the Or group dep data		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* The or group results are stored in the last item of the or group. This        .     allows easy detection of the state of a whole or'd group. */        .  void pkgDepCache::BuildGroupOrs(VerIterator const &V)        .  {        .     unsigned char Group = 0;-- line 419 ------------------------------------------ line 445 ----------------------------------------        .  // ---------------------------------------------------------------------        .  /* This is used to run over a dependency list and determine the dep        .     state of the list, filtering it through both a Min check and a Policy        .     check. The return result will have SetMin/SetPolicy low if a check        .     fails. It uses the DepState cache for it's computations. */        .  unsigned char pkgDepCache::VersionState(DepIterator D,unsigned char Check,        .  				       unsigned char SetMin,        .  				       unsigned char SetPolicy)  118,833  {   18,282  => ???:0x0002e057 (9141x)  232,109     unsigned char Dep = 0xFF;        .             .     while (D.end() != true)        .     {        .        // Compute a single dependency element (glob or)        .        DepIterator Start = D;  250,391        unsigned char State = 0;  874,334        for (bool LastOR = true; D.end() == false && LastOR == true; D++)        .        {  445,936  	 State |= DepState[D->ID];  222,968  	 LastOR = (D->CompareOp & Dep::Or) == Dep::Or;        .        }        .  	        .        // CNC:2003-02-17 - IsImportantDep() currently calls IsCritical(), so        .        //		  these two are currently doing the same thing. Check        .        //		  comments in IsImportantDep() definition.        .        // Minimum deps that must be satisfied to have a working package  334,452        if (Start.IsCritical() == true)  443,052  	 if ((State & Check) != Check)   90,534  	    Dep &= ~SetMin;        .                .        // Policy deps that must be satisfied to install the package  666,020        if (IsImportantDep(Start) == true &&         .  	  (State & Check) != Check)   75,591  	 Dep &= ~SetPolicy;        .  #if 0        .        if (Start.IsCritical() == true)        .  	 if ((State & Check) != Check) {        .  	    Dep &= ~SetMin;        .  	    Dep &= ~SetPolicy;        .  	 }        .  #endif        .     }        .          .     return Dep;   63,987  }        .  									/*}}}*/        .  // DepCache::DependencyState - Compute the 3 results for a dep		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is the main dependency computation bit. It computes the 3 main        .     results for a dependencys, Now, Install and Candidate. Callers must        .     invert the result if dealing with conflicts. */        .  unsigned char pkgDepCache::DependencyState(DepIterator &D)1,521,888  {  190,236  => ???:0x0002e057 (95118x)  570,708     unsigned char State = 0;        .             .     if (CheckDep(D,NowVersion) == true)        .        State |= DepNow;  190,236     if (CheckDep(D,InstallVersion) == true)  730,739        State |= DepInstall;  190,236     if (CheckDep(D,CandidateVersion) == true)   89,506        State |= DepCVer;        .             .     return State;  665,826  }        .  									/*}}}*/        .  // DepCache::UpdateVerState - Compute the Dep member of the state	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This determines the combined dependency representation of a package        .     for its two states now and install. This is done by using the pre-generated        .     dependency information. */        .  void pkgDepCache::UpdateVerState(PkgIterator Pkg)  395,514  {      87,892  => ???:0x0002e057 (43946x)        .     // Empty deps are always true  175,784     StateCache &State = PkgState[Pkg->ID];   43,946     State.DepState = 0xFF;        .             .     // Check the Current state  131,838     if (Pkg->CurrentVer != 0)        .     {        .        DepIterator D = Pkg.CurrentVer().DependsList();    6,743        State.DepState &= VersionState(D,DepNow,DepNowMin,DepNowPolicy);    1,011  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)14,528,956  => apt-pkg/depcache.cc:pkgDepCache::VersionState(pkgCache::DepIterator, unsigned char, unsigned char, unsigned char) (613x)        .     }        .             .     /* Check the candidate state. We do not compare against the whole as        .        a candidate state but check the candidate version against the         .        install states */  131,838     if (State.CandidateVer != 0)        .     {        .        DepIterator D = State.CandidateVerIter(*this).DependsList();  118,725        State.DepState &= VersionState(D,DepInstall,DepCandMin,DepCandPolicy);12,430,404  => apt-pkg/depcache.cc:pkgDepCache::VersionState(pkgCache::DepIterator, unsigned char, unsigned char, unsigned char) (7915x)        .     }        .             .     // Check target state which can only be current or installed  131,838     if (State.InstallVer != 0)        .     {        .        DepIterator D = State.InstVerIter(*this).DependsList();    9,195        State.DepState &= VersionState(D,DepInstall,DepInstMin,DepInstPolicy);1,048,622  => apt-pkg/depcache.cc:pkgDepCache::VersionState(pkgCache::DepIterator, unsigned char, unsigned char, unsigned char) (613x)        .     }  263,676  }        .  									/*}}}*/        .  // DepCache::Update - Figure out all the state information		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This will figure out the state of all the packages and all the         .     dependencies based on the current policy. */        .  void pkgDepCache::Update(OpProgress *Prog)        8  {           2  => ???:0x0002e057 (1x)        3     iUsrSize = 0;        1     iDownloadSize = 0;        1     iDelCount = 0;        1     iInstCount = 0;        1     iKeepCount = 0;        1     iBrokenCount = 0;        1     iBadCount = 0;        .             .     // Perform the depends pass        1     int Done = 0;  219,730     for (PkgIterator I = PkgBegin(); I.end() != true; I++,Done++)  987,657  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::PkgIterator::operator++(int) (43946x)        .     {  615,244        if (Prog != 0 && Done%20 == 0)   19,782  	 Prog->Progress(Done);  495,738  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::Progress(unsigned long) (2198x)  103,812        for (VerIterator V = I.VersionList(); V.end() != true; V++)        .        {        .  	 unsigned char Group = 0;        .  	         .  	 for (DepIterator D = V.DependsList(); D.end() != true; D++)        .  	 {        .  	    // Build the dependency state.  285,354  	    unsigned char &State = DepState[D->ID];  380,474  	    State = DependencyState(D);    4,012  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)2,075,550,392  => apt-pkg/depcache.cc:pkgDepCache::DependencyState(pkgCache::DepIterator&) (95118x)        .          .  	    // Add to the group if we are within an or..   95,118  	    Group |= State;  285,354  	    State |= Group << 3;  190,236  	    if ((D->CompareOp & Dep::Or) != Dep::Or)  404,352  	       Group = 0;        .          .  	    // Invert for Conflicts  471,424  	    if (D->Type == Dep::Conflicts || D->Type == Dep::Obsoletes)   22,312  	       State = ~State;        .  	 }	         .        }        .          .        // Compute the pacakge dependency state and size additions  263,676        AddSizes(I);      980  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)1,733,663  => apt-pkg/depcache.cc:pkgDepCache::AddSizes(pkgCache::PkgIterator const&, long) (43946x)  395,514        UpdateVerState(I);    1,009  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)16,138,567  => apt-pkg/depcache.cc:pkgDepCache::UpdateVerState(pkgCache::PkgIterator) (43946x)  263,676        AddStates(I);      975  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)3,077,954  => apt-pkg/depcache.cc:pkgDepCache::AddStates(pkgCache::PkgIterator const&, int) (43946x)        .     }        .          2     if (Prog != 0)              5        Prog->Progress(Done);  498,290  => /home/agrr/apt-rpm/apt-pkg/contrib/progress.cc:OpProgress::Progress(unsigned long) (1x)        6  }        .  									/*}}}*/        .  // DepCache::Update - Update the deps list of a package	   		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is a helper for update that only does the dep portion of the scan.         .     It is mainly ment to scan reverse dependencies. */        .  void pkgDepCache::Update(DepIterator D)        .  {        .     // Update the reverse deps-- line 603 ------------------------------------------ line 932 ----------------------------------------        .     Update(Pkg);        .     AddSizes(Pkg);        .  }        .  									/*}}}*/        .  // StateCache::Update - Compute the various static display things	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* This is called whenever the Candidate version changes. */        .  void pkgDepCache::StateCache::Update(PkgIterator Pkg,pkgCache &Cache)  439,460  {   87,892  => ???:0x0002e057 (43946x)        .     // Some info        .     VerIterator Ver = CandidateVerIter(Cache);        .             .     // Use a null string or the version string   15,830     if (Ver.end() == true)  108,093        CandVersion = "";        .     else   23,745        CandVersion = Ver.VerStr();        .             .     // Find the current version   43,946     CurVersion = "";  219,730     if (Pkg->CurrentVer != 0)      613        CurVersion = Pkg.CurrentVer().VerStr();        .             .     // Strip off the epochs for display  219,730     CurVersion = StripEpoch(CurVersion);2,075,499  => apt-pkg/depcache.cc:pkgDepCache::StateCache::StripEpoch(char const*) (43946x)    1,791  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  219,730     CandVersion = StripEpoch(CandVersion);1,141,753  => apt-pkg/depcache.cc:pkgDepCache::StateCache::StripEpoch(char const*) (43946x)        .             .     // Figure out if its up or down or equal  263,676     Status = Ver.CompareVer(Pkg.CurrentVer());      899  => /home/mandrake/rpm/BUILD/glibc-2.12.1/elf/../sysdeps/i386/dl-trampoline.S:_dl_runtime_resolve (1x)  813,680  => /home/agrr/apt-rpm/apt-pkg/pkgcache.cc:pkgCache::VerIterator::CompareVer(pkgCache::VerIterator const&) const (43946x)  135,516     if (Pkg->CurrentVer == 0 || Pkg->VersionList == 0 || CandidateVer == 0)   43,333       Status = 2;        263,676  }        .  									/*}}}*/        .  // StateCache::StripEpoch - Remove the epoch specifier from the version	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  const char *pkgDepCache::StateCache::StripEpoch(const char *Ver)  263,676  {  175,784     if (Ver == 0)        .        return 0;        .          .     // Strip any epoch  758,692     for (const char *I = Ver; *I != 0; I++)  267,010        if (*I == ':')    1,223  	 return I + 1;        .     return Ver;  175,784  }        .  									/*}}}*/        .          .  // Policy::GetCandidateVer - Returns the Candidate install version	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* The default just returns the highest available version that is not        .     a source and automatic. */        .  pkgCache::VerIterator pkgDepCache::Policy::GetCandidateVer(PkgIterator Pkg)        .  {-- line 986 ------------------------------------------ line 1013 ----------------------------------------        .             .     return Last;        .  }        .  									/*}}}*/        .  // Policy::IsImportantDep - True if the dependency is important		/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  bool pkgDepCache::Policy::IsImportantDep(DepIterator Dep)  668,904  {  222,968  => ???:0x0002e057 (111484x)        .     // CNC:2002-03-17 - Every place that uses this function seems to        .     //		       currently check for IsCritical() as well. Since        .     //		       this is a virtual (heavy) function, we'll try        .     //		       not to use it while not necessary.        .     // AG:2010 We need Suggests support for RPM so this function becomes important again  334,452     if (Dep.IsCritical())  111,484        return true;    1,442     else if(Dep->Type == pkgCache::Dep::Suggests)    5,047        return _config->FindB("APT::Install-Suggests", false);2,380,184  => /home/agrr/apt-rpm/apt-pkg/contrib/configuration.cc:Configuration::FindB(char const*, bool) const (721x)        .    111,484     return false;        .    445,936  }        .  									/*}}}*/        .          .  // CNC:2003-02-24        .  // pkgDepCache::State::* - Routines to work on the state of a DepCache.	/*{{{*/        .  // ---------------------------------------------------------------------        .  /* */        .  void pkgDepCache::State::Copy(pkgDepCache::State const &Other)        .  {-- line 1042 ------------------------------------------ line 1098 ----------------------------------------        .           return true;        .     }        .     return false;        .  }        .          .  void pkgDepCache::State::UnIgnoreAll()        .  {        .     memset(PkgIgnore, 0, Dep->Head().PackageCount*sizeof(*PkgIgnore));3,524,241  }        2  => ???:0x0002e057 (1x)        .          .  									/*}}}*/        .          .  // vim:sts=3:sw=3---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/cmdline/apt-get.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/cmdline/apt-get.cc---------------------------------------------------------------------------------- Auto-annotated source: /home/agrr/apt-rpm/cmdline/cmdline.cc--------------------------------------------------------------------------------  No information has been collected for /home/agrr/apt-rpm/cmdline/cmdline.cc--------------------------------------------------------------------------------The following files chosen for auto-annotation could not be found:--------------------------------------------------------------------------------  /home/mandrake/rpm/BUILD/glibc-2.12.1/csu/../sysdeps/i386/elf/start.S--------------------------------------------------------------------------------Ir -------------------------------------------------------------------------------- 9  percentage of events annotated