0ef3a30b84
The processing thread must be messaged when shutting down, and depending on the state of the device, waveInReset may not do it. Additionally, all buffers must be removed from the device before they can be unprepared and the device closed.