Mercurial > pidgin
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 |
| rev | line source |
|---|---|
| 15934 | 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 | 4 |
| 5 You can also generate this documentation locally by installing | |
| 15934 | 6 doxygen and graphviz dot, then running "make docs" in the |
| 14505 | 7 source tree. The documentation will be in the docs/html directory. |
