How to pass a bit of data around a lot of function invocations that don't take such a thing as a parameter that are being called from a thread even though they were originally part of a single-threaded program:
- Acquire mutex on somewhere global.
- Put a pointer to the data there.
- In the
winget_progress_createfunction, copy the pointer into thewinget_progressstruct and release the mutex. - Stir and serve.
Is that reasonable?