void QueueEditor::PauseParsInGroups(ItemList* itemList, bool extraParsOnly) { while (true) { RawFileList GroupFileList; FileInfo* firstFileInfo = nullptr; for (ItemList::iterator it = itemList->begin(); it != itemList->end(); ) { EditItem& item = *it; if (!firstFileInfo || (firstFileInfo->GetNzbInfo() == item.m_fileInfo->GetNzbInfo())) { GroupFileList.push_back(item.m_fileInfo); if (!firstFileInfo) { firstFileInfo = item.m_fileInfo; } itemList->erase(it); it = itemList->begin(); continue; } it++; } if (!GroupFileList.empty()) { PausePars(&GroupFileList, extraParsOnly); } else { break; } } }
void QueueEditor::PauseParsInGroups(ItemList* pItemList, bool bExtraParsOnly) { while (true) { FileList GroupFileList; GroupFileList.clear(); FileInfo* pFirstFileInfo = NULL; for (ItemList::iterator it = pItemList->begin(); it != pItemList->end(); ) { EditItem* pItem = *it; if (!pFirstFileInfo || (pFirstFileInfo->GetNZBInfo() == pItem->m_pFileInfo->GetNZBInfo())) { GroupFileList.push_back(pItem->m_pFileInfo); if (!pFirstFileInfo) { pFirstFileInfo = pItem->m_pFileInfo; } delete pItem; pItemList->erase(it); it = pItemList->begin(); continue; } it++; } if (!GroupFileList.empty()) { PausePars(&GroupFileList, bExtraParsOnly); } else { break; } } }