Callback called twice if there is an exception in callback itself

Sorry, can't figure out how to write test for this bug, so you'll have to believe me it's fixed :-)