tulir / gomuks

A terminal based Matrix client written in Go.
https://maunium.net/go/gomuks
GNU Affero General Public License v3.0
1.34k stars 120 forks source link

Ghost members still appear in members list despite being kicked #377

Open FiskFan1999 opened 2 years ago

FiskFan1999 commented 2 years ago

On a small room that I am a member of, I noticed that there were some "ghost members" who's name was visible in the right-column list of users even though they had been previously kicked (these members don't show up when i view the room with other matrix clients).

Should note that both of these users were kicked from the channel by myself.

After some searching around, I found that one reason might be that those users are still present in m.room.members (which can be accessed through /devtools on element)

I feel like this could be due to some behavior in https://github.com/tulir/gomuks/blob/75471c3242c57c1e4d98896c0eea2d376eb4f80a/matrix/rooms/room.go#L605 or https://github.com/tulir/gomuks/blob/75471c3242c57c1e4d98896c0eea2d376eb4f80a/matrix/rooms/room.go#L648

But I am still trying to understand how gomuks/matrix constructs the list of members from the cache, and what that all means...