Then it could be done as a separate process from the merge.
That would ensure it doesn't conflict with anything.
It performs the merge process normally. Once it's finished, if the box is checked, it calls reverse.
Reverse reads the file, reverses it, saves it, and updates the waveform.
Unless the problem is regenerating the waveform...
If there are no problems updating the waveform when merging, I don't understand why this should be different.
Then it could be done as a separate process from the merge.
That would ensure it doesn't conflict with anything.
It performs the merge process normally. Once it's finished, if the box is checked, it calls reverse.
Reverse reads the file, reverses it, saves it, and updates the waveform.
Unless the problem is regenerating the waveform...
If there are no problems updating the waveform when merging, I don't understand why this should be different.
It's just an idea.