Browse Source

* fixed a problem when it comes to the cache rebuilding

debian/1.8.y
Michael Vogt 17 years ago
parent
commit
f416d22e97
  1. 25
      apt-pkg/deb/debindexfile.cc
  2. 2
      apt-pkg/deb/debindexfile.h

25
apt-pkg/deb/debindexfile.cc

@ -458,20 +458,21 @@ bool debTranslationsIndex::Merge(pkgCacheGenerator &Gen,OpProgress &Prog) const
/* */
pkgCache::PkgFileIterator debTranslationsIndex::FindInCache(pkgCache &Cache) const
{
string FileName = TranslationFile();
pkgCache::PkgFileIterator File = Cache.FileBegin();
if (this->UseTranslation())
for (; File.end() == false; File++)
{
if (IndexFile(LanguageCode().c_str()) != File.FileName())
continue;
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;
}
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;
}
/*}}}*/

2
apt-pkg/deb/debindexfile.h

@ -96,7 +96,7 @@ class debTranslationsIndex : public pkgIndexFile
// Interface for the Cache Generator
virtual bool Exists() const;
virtual bool HasPackages() const {return true;};
virtual bool HasPackages() const { return UseTranslation();};
virtual unsigned long Size() const;
virtual bool Merge(pkgCacheGenerator &Gen,OpProgress &Prog) const;
virtual pkgCache::PkgFileIterator FindInCache(pkgCache &Cache) const;

Loading…
Cancel
Save