PT-2026-125065
Published
2026-10-16
·
Updated
2026-10-16
Description by
Score
N/A
Not availableNo severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
When a multithreaded frame (
zstdmt feature, CParameter::NbWorkers) is
left unfinished, its jobs may still be running on the worker threads: the C
library only waits for them when the next frame starts, or when the context
is freed. A session reset makes the context accept changes again in the
meantime, so:- unloading the dictionary (
load dictionary,ref cdict,ref prefix,disable dictionary,init*, orresetwith parameters) freed the dictionary a worker was still compressing against; - changing
NbWorkersmade the next frame resize the job table before waiting for the old jobs.
The flaw was corrected by refusing these calls while a multithreaded frame
is unfinished. The new
CCtx::wait for workers() waits for the workers
first.Vendors
Affected products
Related identifiers
Found an issue in the description? Have something to add? Feel free to write us 👾