Merge pull request #733 from terrelln/pzstd-deadlock

[pzstd] Fix potential deadlock in the case of errors
This commit is contained in:
Yann Collet 2017-06-23 14:18:55 -07:00 committed by GitHub
commit 379f9d874d

View File

@ -585,7 +585,10 @@ std::uint64_t writeFile(
std::uint64_t bytesWritten = 0;
std::shared_ptr<BufferWorkQueue> out;
// Grab the output queue for each decompression job (in order).
while (outs.pop(out) && !errorHolder.hasError()) {
while (outs.pop(out)) {
if (errorHolder.hasError()) {
continue;
}
if (!decompress) {
// If we are compressing and want to write skippable frames we can't
// start writing before compression is done because we need to know the