Using BaseException causes exceptions not to fire correctly.