pidgin: b3ac8324: Add purple_{buddy,chat,group,contact}_de...

Ethan Blanton elb at pidgin.im
Thu Apr 9 16:32:48 EDT 2009


Sadrul Habib Chowdhury spake unto us the following wisdom:
> > Modified files:
> >         ChangeLog ChangeLog.API libpurple/blist.c libpurple/blist.h
> > 
> > ChangeLog: 
> > 
> > Add purple_{buddy,chat,group,contact}_destroy to the blist API, free
> > blist data on libpurple unload.  Thanks to Nick Hebner for this.
> > 
> > References #8683
> > 
> 
> We probably should not make the _destroy functions public. It'd be too
> easy for a plugin to do purple_buddy_destroy and screw up the tree, when
> purple_blist_remove_buddy would have been more appropriate.

Then I posit that purple_buddy_new et al. should not be public,
either.  If we expose one, we really need to expose the other.  We
discussed this briefly in devel at cpi.

Alternately, purple_{buddy,chat,group,contact}_new could make sure
that the allocated object is properly tracked for destruction.  They
do not currently seem to do so.

I'm happy to make these static if that's the right thing to do, of
course -- it just wasn't immediately clear to me that it is.

Ethan

-- 
The laws that forbid the carrying of arms are laws [that have no remedy
for evils].  They disarm only those who are neither inclined nor
determined to commit crimes.
		-- Cesare Beccaria, "On Crimes and Punishments", 1764
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://pidgin.im/pipermail/devel/attachments/20090409/779051f5/attachment.sig>


More information about the Devel mailing list