FIX: When an error is thrown in the block function, catch it and resolve the complete (invoke complete). This solves an issue where a thrown error will never trigger the complete function.