whenで渡したdeferredのcancellerが処理されていなかったので修正