Add context to upstreamConn.runUntilRegistered

git-svn-id: file:///srv/svn/repo/suika/trunk@776 f0ae65fe-ee39-954e-97ec-027ff2717ef4
This commit is contained in:
contact 2022-02-08 15:37:31 +00:00
parent 5e54c4b726
commit 6f8aa7f95a
2 changed files with 4 additions and 4 deletions

View File

@ -1955,14 +1955,14 @@ func (uc *upstreamConn) ReadMessage() (*irc.Message, error) {
return msg, nil return msg, nil
} }
func (uc *upstreamConn) runUntilRegistered() error { func (uc *upstreamConn) runUntilRegistered(ctx context.Context) error {
for !uc.registered { for !uc.registered {
msg, err := uc.ReadMessage() msg, err := uc.ReadMessage()
if err != nil { if err != nil {
return fmt.Errorf("failed to read message: %v", err) return fmt.Errorf("failed to read message: %v", err)
} }
if err := uc.handleMessage(context.TODO(), msg); err != nil { if err := uc.handleMessage(ctx, msg); err != nil {
if _, ok := err.(registrationError); ok { if _, ok := err.(registrationError); ok {
return err return err
} else { } else {
@ -1977,7 +1977,7 @@ func (uc *upstreamConn) runUntilRegistered() error {
if err != nil { if err != nil {
uc.logger.Printf("failed to parse connect command %q: %v", command, err) uc.logger.Printf("failed to parse connect command %q: %v", command, err)
} else { } else {
uc.SendMessage(context.TODO(), m) uc.SendMessage(ctx, m)
} }
} }

View File

@ -221,7 +221,7 @@ func (net *network) run() {
} }
uc.register() uc.register()
if err := uc.runUntilRegistered(); err != nil { if err := uc.runUntilRegistered(context.TODO()); err != nil {
text := err.Error() text := err.Error()
temp := true temp := true
if regErr, ok := err.(registrationError); ok { if regErr, ok := err.(registrationError); ok {