refactoring: simplify control flow

* don't use boolean markers to trace the exception control flow