diff options
author | Louis Chemineau <louis@chmn.me> | 2022-05-05 11:21:20 +0200 |
---|---|---|
committer | Louis Chemineau <louis@chmn.me> | 2022-05-05 17:21:23 +0200 |
commit | 8a2cf5bb68617004d24469c65b68e8b01ca56621 (patch) | |
tree | 58cb1836b328b159be549f5759245db9fbf1f6d5 /lib | |
parent | d3efd40a24be45a2a38a904c111d10fa4de01f81 (diff) | |
download | nextcloud-server-8a2cf5bb68617004d24469c65b68e8b01ca56621.tar.gz nextcloud-server-8a2cf5bb68617004d24469c65b68e8b01ca56621.zip |
Do not dispatch postSetPassword when setPassword fails
Also Improve error message when setPassword fails
Signed-off-by: Louis Chemineau <louis@chmn.me>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/private/User/User.php | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/lib/private/User/User.php b/lib/private/User/User.php index 0a51622428b..e7aa72fafba 100644 --- a/lib/private/User/User.php +++ b/lib/private/User/User.php @@ -320,13 +320,17 @@ class User implements IUser { } if ($this->backend->implementsActions(Backend::SET_PASSWORD)) { $result = $this->backend->setPassword($this->uid, $password); - $this->legacyDispatcher->dispatch(IUser::class . '::postSetPassword', new GenericEvent($this, [ - 'password' => $password, - 'recoveryPassword' => $recoveryPassword, - ])); - if ($this->emitter) { - $this->emitter->emit('\OC\User', 'postSetPassword', [$this, $password, $recoveryPassword]); + + if ($result !== false) { + $this->legacyDispatcher->dispatch(IUser::class . '::postSetPassword', new GenericEvent($this, [ + 'password' => $password, + 'recoveryPassword' => $recoveryPassword, + ])); + if ($this->emitter) { + $this->emitter->emit('\OC\User', 'postSetPassword', [$this, $password, $recoveryPassword]); + } } + return !($result === false); } else { return false; |