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.