void DirManager::WriteCacheToDisk() { BlockHash::iterator i; int numNeed = 0; i = blockFileHash.begin(); while (i != blockFileHash.end()) { BlockFile *b = i->second; if (b->GetNeedWriteCacheToDisk()) numNeed++; i++; } if (numNeed == 0) return; AudacityProject *p = GetActiveProject(); p->ProgressShow(_("Saving recorded audio"), _("Saving recorded audio to disk...")); i = blockFileHash.begin(); int current = 0; while (i != blockFileHash.end()) { BlockFile *b = i->second; if (b->GetNeedWriteCacheToDisk()) { b->WriteCacheToDisk(); p->ProgressUpdate((int)((current * 1000.0) / numNeed)); } i++; current++; } p->ProgressHide(); }