Out of curiosity, why did you change the exception handling here. I feel that this might screw up some of the error handling in the UI, but I have not tested this yet.