If "next" throws we lose the initial tasks error.  May want to maintain the tasks error and then set its inner exception to "ex" in the catch (if it exists) and return the entire error.