From: Jay Freeman (saurik) Date: Mon, 7 Mar 2011 15:37:06 +0000 (-0800) Subject: Avoid concurrent database filter and refresh. X-Git-Tag: v1.1.0%b1~27 X-Git-Url: https://git.saurik.com/cydia.git/commitdiff_plain/695fdd5caa5344cc25f55d5440ab1f18d3ee3641 Avoid concurrent database filter and refresh. --- diff --git a/MobileCydia.mm b/MobileCydia.mm index 0c07bbfe..9d7881ae 100644 --- a/MobileCydia.mm +++ b/MobileCydia.mm @@ -6015,6 +6015,8 @@ bool DepSubstrate(const pkgCache::VerIterator &iterator) { } - (NSArray *) _reloadPackages:(NSArray *)packages { +// XXX: maybe move @synchronized() to _reloadData? +@synchronized (database_) { NSMutableArray *filtered([NSMutableArray arrayWithCapacity:[packages count]]); _profile(PackageTable$reloadData$Filter) @@ -6024,7 +6026,7 @@ bool DepSubstrate(const pkgCache::VerIterator &iterator) { _end return filtered; -} +} } - (void) _reloadData { if (reloading_ != 0) {