mirror of
https://mau.dev/mautrix/go.git
synced 2026-03-14 22:35:52 +01:00
bridgev2: don't use double puppet of other user in DMs
This commit is contained in:
parent
9d082e1e2b
commit
f2585f7bcc
1 changed files with 9 additions and 7 deletions
|
|
@ -999,7 +999,7 @@ func (portal *Portal) getIntentAndUserMXIDFor(ctx context.Context, sender EventS
|
|||
return
|
||||
}
|
||||
extraUserID = source.UserMXID
|
||||
} else if sender.SenderLogin != "" {
|
||||
} else if sender.SenderLogin != "" && portal.Receiver == "" {
|
||||
senderLogin := portal.Bridge.GetCachedUserLoginByID(sender.SenderLogin)
|
||||
if senderLogin != nil {
|
||||
intent = senderLogin.User.DoublePuppet(ctx)
|
||||
|
|
@ -1010,13 +1010,15 @@ func (portal *Portal) getIntentAndUserMXIDFor(ctx context.Context, sender EventS
|
|||
}
|
||||
}
|
||||
if sender.Sender != "" {
|
||||
for _, login := range otherLogins {
|
||||
if login.Client.IsThisUser(ctx, sender.Sender) {
|
||||
intent = login.User.DoublePuppet(ctx)
|
||||
if intent != nil {
|
||||
return
|
||||
if portal.Receiver == "" {
|
||||
for _, login := range otherLogins {
|
||||
if login.Client.IsThisUser(ctx, sender.Sender) {
|
||||
intent = login.User.DoublePuppet(ctx)
|
||||
if intent != nil {
|
||||
return
|
||||
}
|
||||
extraUserID = login.UserMXID
|
||||
}
|
||||
extraUserID = login.UserMXID
|
||||
}
|
||||
}
|
||||
ghost, err := portal.Bridge.GetGhostByID(ctx, sender.Sender)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue