Subject: Bug in RosterControl.SetPresence method
Hi,
I think I found a bug...
if (m_Roster.ContainsKey(pres.From.Bare))
This line in the RosterControl.SetPresence method causes a problem:
I look into my roster. It has 8 items, and one of them is myname@gmail.com
The presence packet is coming from MyName@gmail.com (note the capitalization).
So, the roster controls in MiniClient shows "myname" as unavailable.
I can still send a message to it (because it is in fact available), but when this user replies to MiniClient, MiniClient blows up with an exception.
I tried a quick workaround (using ToLower() and a temporary List<string> from roster), but it only got me a few lines lower in that method, and then - another exception.
I think you can easily replicate this problem if you register a new GMail/GTalk account and make sure it has a capital letter in it.
Thank you.
--Dmitriy
I think I found a bug...
if (m_Roster.ContainsKey(pres.From.Bare))
This line in the RosterControl.SetPresence method causes a problem:
I look into my roster. It has 8 items, and one of them is myname@gmail.com
The presence packet is coming from MyName@gmail.com (note the capitalization).
So, the roster controls in MiniClient shows "myname" as unavailable.
I can still send a message to it (because it is in fact available), but when this user replies to MiniClient, MiniClient blows up with an exception.
I tried a quick workaround (using ToLower() and a temporary List<string> from roster), but it only got me a few lines lower in that method, and then - another exception.
I think you can easily replicate this problem if you register a new GMail/GTalk account and make sure it has a capital letter in it.
Thank you.
--Dmitriy
Dmitriy
Show profile
Link to this post
