annotate doc/imgstore-signals.dox @ 25890:9c0337d4b878

Fix the crash/leaks in statusbox *** Plucked rev 0cb6e54b (darkrain42@pidgin.im): Look up the old image before we store the new one in the hash table. Looking up the new image and then unref:ing it (hence freeing the data and subsequently returning it) is not good. This was causing problems with changing buddy icons while using mystatusbox. Refs #9120. *** Plucked rev d25c9ed7 (darkrain42@pidgin.im): Don't leak image refs in gtkstatusbox and assertion failure in nullprpl purple_imgstore_new_from_file gives us a ref and pidgin_status_box_set_buddy_icon also takes a ref.
author Paul Aurich <paul@darkrain42.org>
date Wed, 06 May 2009 18:58:47 +0000
parents e0613cf8c493
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
16688
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
1 /** @page imgstore-signals Image Store Signals
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
2
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
3 @signals
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
4 @signal image-deleting
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
5 @endsignals
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
6
20807
e0613cf8c493 Add some links from signal documentation back to the documentation for the
Will Thompson <will.thompson@collabora.co.uk>
parents: 16688
diff changeset
7 @see imgstore.h
e0613cf8c493 Add some links from signal documentation back to the documentation for the
Will Thompson <will.thompson@collabora.co.uk>
parents: 16688
diff changeset
8
16688
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
9 <hr>
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
10
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
11 @signaldef image-deleting
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
12 @signalproto
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
13 char *(*image_deleting)(const PurpleStoredImage *img);
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
14 @endsignalproto
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
15 @signaldesc
20807
e0613cf8c493 Add some links from signal documentation back to the documentation for the
Will Thompson <will.thompson@collabora.co.uk>
parents: 16688
diff changeset
16 Emitted when a #PurpleStoredImage is about to be destroyed. This allows
16688
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
17 for what amounts to weak references. Code can hold onto a pointer to
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
18 the PurpleStoredImage without actually "holding" a reference. They can
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
19 then use a signal handler to let them know when their img is about to
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
20 be destroyed.
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
21 @param img The image about to be destroyed.
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
22 @note It's not possible to purple_imgstore_ref() img to save it.
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
23 @endsignaldef
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
24
61ddeb85ab86 Document the image-deleting signal.
Richard Laager <rlaager@wiktel.com>
parents:
diff changeset
25 */
20807
e0613cf8c493 Add some links from signal documentation back to the documentation for the
Will Thompson <will.thompson@collabora.co.uk>
parents: 16688
diff changeset
26 // vim: syntax=c.doxygen tw=75 et