When exchanging voice, voice 1 is removed
MuseScore 0.9.6.2 and trunk
Currently, MuseScore relies on voice 1 to hold the "timeline". There is no way to remove rests in voice 1, only in voices > 1. Except if you use the Exchange voice feature and I believe this is a bug.
This bug prevents the plugin framework to go through the measures if a measure has only one voice > 1.