3
0
mirror of https://github.com/ergochat/ergo.git synced 2024-11-15 00:19:29 +01:00
NS SAREGISTER would fail due to a nil dereference of `client`;
add two safeguards against this.
This commit is contained in:
Shivaram Lingamneni 2022-01-10 01:58:05 -05:00
parent 8605cd2295
commit 3162c8a1c8

View File

@ -474,8 +474,10 @@ func (am *AccountManager) Register(client *Client, account string, callbackNames
am.Unregister(casefoldedAccount, true)
return &registrationCallbackError{underlying: err}
} else {
am.server.logger.Info("accounts",
fmt.Sprintf("nickname %s registered account %s, pending verification", client.Nick(), account))
if client != nil && code != "" {
am.server.logger.Info("accounts",
fmt.Sprintf("nickname %s registered account %s, pending verification", client.Nick(), account))
}
return am.server.store.Update(func(tx *buntdb.Tx) error {
_, _, err = tx.Set(verificationCodeKey, code, setOptions)
return err