annotate 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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15934
cc3c50816cc9 More gaim->whatever isms
Mark Doliner <mark@kingant.net>
parents: 14505
diff changeset
1 For information on writing a plugin for Purple, Pidgin or Finch, go
16176
83ec0b408926 Beat some older documentation into submission.
Richard Laager <rlaager@wiktel.com>
parents: 15934
diff changeset
2 http://developer.pidgin.im and click on API. From there, see the HOWTOs in the
83ec0b408926 Beat some older documentation into submission.
Richard Laager <rlaager@wiktel.com>
parents: 15934
diff changeset
3 "Related Pages" section.
14505
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
4
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
5 You can also generate this documentation locally by installing
15934
cc3c50816cc9 More gaim->whatever isms
Mark Doliner <mark@kingant.net>
parents: 14505
diff changeset
6 doxygen and graphviz dot, then running "make docs" in the
14505
7acebc9d043f [gaim-migrate @ 17225]
Mark Doliner <mark@kingant.net>
parents:
diff changeset
7 source tree. The documentation will be in the docs/html directory.