Mercurial > pidgin.yaz
view PLUGIN_HOWTO @ 20982:aee8d876fed1
When getting info on a myspace user not on the buddy list, a temporary
PurpleBuddy is needed so that the data can be associated properly. This
fixes a bug wherein the profile link went to http://myspace.com/0 for all
buddies not on the list. A check against that uid being 0 has also been added
to avoid displaying junk data.
Such temporary MsimUser objects (note that the temporariness of MsimUser
objects is unchanged; a temporary PurpleBuddy has just been added to go with
it) are destroyed before a delayed callback can be triggerred. This means that
we can not request a buddy icon on that object, because we will end up with
a pointer to freed data in the callback some time in the future. This fixes
a crash when getting info on a non-buddy list buddy (which for reasons I can't
pinpoint was most likely if the username contained capital letters).
A reference counting system for MsimUser objects would fix this but is a
significantly more complex solution.
author | Evan Schoenberg <evan.s@dreskin.net> |
---|---|
date | Thu, 18 Oct 2007 12:01:41 +0000 |
parents | 83ec0b408926 |
children | db5a58aabe38 |
line wrap: on
line source
For information on writing a plugin for Purple, Pidgin or Finch, go http://developer.pidgin.im and click on API. From there, see the HOWTOs in the "Related Pages" section. You can also generate this documentation locally by installing doxygen and graphviz dot, then running "make docs" in the source tree. The documentation will be in the docs/html directory.