diff --git a/lib/voicemeeter/base.rb b/lib/voicemeeter/base.rb index 2899343..ac3b9f2 100644 --- a/lib/voicemeeter/base.rb +++ b/lib/voicemeeter/base.rb @@ -68,7 +68,8 @@ module Voicemeeter end def clear_dirty - while pdirty? || mdirty? + catch(:clear) do + loop { throw(:clear) unless pdirty? || mdirty? } end end