adium: 1e356233: C89-ify. Use g_list_prepend instead of g...
elb at pidgin.im
Tue Apr 14 23:09:25 EDT 2009
Zachary West spake unto us the following wisdom:
> I'm also looking at making the "in_room" list something else; it's
> *incredibly* costly to look up an individual chat buddy based on their
> name, which is done all over the place (in what I'm attempting to do),
> especially for larger chat rooms. This will require killing a few
> public API functions (such as setting the purple_conv_chat_set_users,
> which directly sets the GList).
Note that at one point in time we had this issue with the buddy list,
and thus created a hash table that mirrors the list for the purpose of
O(1) buddy lookups. You might want to employ something similar -- and
it might be usable upstream.
> I'm also not really (at _all_) familiar with libpurple code, so I
> don't want to push something hugely bad into im.pidgin.pidgin itself.
If you're not confident pushing yourself, you can create a patch on
the Pidgin trac, or come find one of us on IRC. We'd be happy to
help. Reducing Adium's need for divergence with upstream libpurple is
a goal I think we all share.
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...
Size: 189 bytes
Desc: Digital signature
More information about the Devel