2/4 is moving the code around at the same time as making a functional change, and I can't tell why it's moving the code around. Why does dmo_wrapper_sink_Receive() now call get_output_samples() an extra time?
I know 4/4 is backed by tests, but what race or deadlock is it trying to fix?