|
|
|
@ -18,7 +18,7 @@ from twisted.internet import defer |
|
|
|
|
from ._base import BaseHandler |
|
|
|
|
from synapse.api.constants import LoginType |
|
|
|
|
from synapse.types import UserID |
|
|
|
|
from synapse.api.errors import AuthError, LoginError, Codes |
|
|
|
|
from synapse.api.errors import AuthError, LoginError, Codes, StoreError, SynapseError |
|
|
|
|
from synapse.util.async import run_on_reactor |
|
|
|
|
|
|
|
|
|
from twisted.web.client import PartialDownloadError |
|
|
|
@ -563,7 +563,12 @@ class AuthHandler(BaseHandler): |
|
|
|
|
|
|
|
|
|
except_access_token_ids = [requester.access_token_id] if requester else [] |
|
|
|
|
|
|
|
|
|
yield self.store.user_set_password_hash(user_id, password_hash) |
|
|
|
|
try: |
|
|
|
|
yield self.store.user_set_password_hash(user_id, password_hash) |
|
|
|
|
except StoreError as e: |
|
|
|
|
if e.code == 404: |
|
|
|
|
raise SynapseError(404, "Unknown user", Codes.NOT_FOUND) |
|
|
|
|
raise e |
|
|
|
|
yield self.store.user_delete_access_tokens( |
|
|
|
|
user_id, except_access_token_ids |
|
|
|
|
) |
|
|
|
|