It's not necessary to set the state to failed here since that happens in the download_failed() method.