mirror of
https://github.com/Kyren223/eko.git
synced 2025-09-03 20:18:22 +00:00
Fix writing a message to an offline user causes an error log on the
backend
This commit is contained in:
@@ -1 +1 @@
|
||||
v0.1.1
|
||||
v0.1.2
|
||||
|
@@ -217,7 +217,7 @@ func SendMessage(ctx context.Context, sess *session.Session, request *packet.Sen
|
||||
return UserPropagate(ctx, sess, user.ID, &packet.MessagesInfo{
|
||||
Messages: []data.Message{message},
|
||||
RemovedMessages: nil,
|
||||
})
|
||||
}, false)
|
||||
}
|
||||
|
||||
assert.Never("already checked in the first line for the case where both are nil")
|
||||
@@ -769,7 +769,7 @@ func SetMember(ctx context.Context, sess *session.Session, request *packet.SetMe
|
||||
if newMember.UserID == sess.ID() {
|
||||
return networksInfoPayload
|
||||
} else {
|
||||
UserPropagate(ctx, sess, newMember.UserID, networksInfoPayload)
|
||||
UserPropagate(ctx, sess, newMember.UserID, networksInfoPayload, true)
|
||||
return membersInfoPayload
|
||||
}
|
||||
}
|
||||
@@ -1117,7 +1117,7 @@ func DeleteMessage(ctx context.Context, sess *session.Session, request *packet.D
|
||||
return UserPropagate(ctx, sess, *message.ReceiverID, &packet.MessagesInfo{
|
||||
Messages: nil,
|
||||
RemovedMessages: []snowflake.ID{message.ID},
|
||||
})
|
||||
}, false)
|
||||
}
|
||||
|
||||
assert.Never("unreachable")
|
||||
@@ -1197,7 +1197,7 @@ func EditMessage(ctx context.Context, sess *session.Session, request *packet.Edi
|
||||
return UserPropagate(ctx, sess, *message.ReceiverID, &packet.MessagesInfo{
|
||||
Messages: []data.Message{editedMessage},
|
||||
RemovedMessages: nil,
|
||||
})
|
||||
}, false)
|
||||
}
|
||||
|
||||
assert.Never("unreachable")
|
||||
@@ -1494,7 +1494,7 @@ func BlockUser(ctx context.Context, sess *session.Session, request *packet.Block
|
||||
RemovedBlockedUsers: nil,
|
||||
BlockingUsers: []snowflake.ID{sess.ID()},
|
||||
RemovedBlockingUsers: nil,
|
||||
})
|
||||
}, false)
|
||||
|
||||
return &packet.BlockInfo{
|
||||
BlockedUsers: []snowflake.ID{user.ID},
|
||||
@@ -1534,7 +1534,7 @@ func BlockUser(ctx context.Context, sess *session.Session, request *packet.Block
|
||||
RemovedBlockedUsers: nil,
|
||||
BlockingUsers: nil,
|
||||
RemovedBlockingUsers: []snowflake.ID{sess.ID()},
|
||||
})
|
||||
}, false)
|
||||
|
||||
return &packet.BlockInfo{
|
||||
BlockedUsers: nil,
|
||||
|
@@ -129,10 +129,15 @@ func SplitMembersAndUsers(membersAndUsers []data.GetNetworkMembersRow) ([]data.M
|
||||
func UserPropagate(
|
||||
ctx context.Context, sess *session.Session,
|
||||
userId snowflake.ID, payload packet.Payload,
|
||||
errorOnNil bool,
|
||||
) packet.Payload {
|
||||
session := sess.Manager().Session(userId)
|
||||
if session == nil {
|
||||
slog.ErrorContext(ctx, "propagation failed", ctxkeys.UserID.String(), userId, "reason", "session is nil")
|
||||
if errorOnNil {
|
||||
slog.ErrorContext(ctx, "propagation failed", ctxkeys.UserID.String(), userId, "reason", "session is nil")
|
||||
} else {
|
||||
slog.InfoContext(ctx, "propagation failed", ctxkeys.UserID.String(), userId, "reason", "session is nil")
|
||||
}
|
||||
return payload
|
||||
}
|
||||
timeout := 1 * time.Second
|
||||
|
Reference in New Issue
Block a user