mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-07-25 00:04:49 +02:00
Draw: Atomically release objects.
There may be scenarios where we release objects from separate threads, just make them safe.
This commit is contained in:
@@ -597,9 +597,10 @@ std::shared_ptr<Download> Downloader::StartDownloadWithCallback(
|
||||
void Downloader::Update() {
|
||||
restart:
|
||||
for (size_t i = 0; i < downloads_.size(); i++) {
|
||||
if (downloads_[i]->Progress() == 1.0f || downloads_[i]->Failed()) {
|
||||
downloads_[i]->RunCallback();
|
||||
downloads_[i]->Join();
|
||||
auto &dl = downloads_[i];
|
||||
if (dl->Done()) {
|
||||
dl->RunCallback();
|
||||
dl->Join();
|
||||
downloads_.erase(downloads_.begin() + i);
|
||||
goto restart;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user