From: Jay Freeman (saurik) Date: Thu, 25 Nov 2010 23:40:38 +0000 (-0800) Subject: Add @synchronized (database_) around some Package selectors used from JS. X-Git-Url: https://git.saurik.com/cydia.git/commitdiff_plain/ff694a50945672b9142b4166434ab7893a39c25c Add @synchronized (database_) around some Package selectors used from JS. --- diff --git a/MobileCydia.mm b/MobileCydia.mm index e2a6db31..c2a83db0 100644 --- a/MobileCydia.mm +++ b/MobileCydia.mm @@ -2245,16 +2245,22 @@ struct PackageNameOrdering : } - (Address *) maintainer { - if (file_.end()) +@synchronized (database_) { + if ([database_ era] != era_ || file_.end()) return nil; + pkgRecords::Parser *parser = &[database_ records]->Lookup(file_); const std::string &maintainer(parser->Maintainer()); return maintainer.empty() ? nil : [Address addressWithString:[NSString stringWithUTF8String:maintainer.c_str()]]; -} +} } - (size_t) size { - return version_.end() ? 0 : version_->InstalledSize; -} +@synchronized (database_) { + if ([database_ era] != era_ || version_.end()) + return 0; + + return version_->InstalledSize; +} } - (NSString *) longDescription { @synchronized (database_) {