memory fixes: cancelling the future on exception, will hopefully stop endless loops