Mercurial > pidgin.yaz
view gaim.desktop @ 11701:5d7da4056644
[gaim-migrate @ 13992]
SF Patch #1332870, from corfe83
"In gtkimhtml.c, in function gtk_smiley_tree_destroy, in
the while loop, we go through the tree and add all the
nodes to be deleted to a GSList. However, we add them
by appending them to the list, but the order of the
list doesn't matter. Because GSList's don't keep track
of the last item in the list, this means each step of
the loop (when we append) we are incrementing through
the whole list. In my tests, on closing the preference
box, this loop was gone through more than 1,000 times,
and at many stages this list it is appending to is well
over 50 elements long.
I've changed it to prepend items to the list, which
works just the same (although destroying items in the
tree in a different order), and is much faster (prepend
works in O(1) time, as opposed to O(N) time)."
I think the moral of the story is, when order doesn't matter, use g_[s]list_prepend instead of g_[s]list_append.
committer: Tailor Script <tailor@pidgin.im>
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Thu, 20 Oct 2005 08:01:03 +0000 |
parents | 57e3e958ff49 |
children | 391acec18e46 |
line wrap: on
line source
[Desktop Entry] Encoding=UTF-8 Categories=Application;Network; Comment=Send instant messages over multiple protocols Comment[da]=Send beskeder over flere protokoller Comment[de]=Multi-Protokoll Instant Messenger Client Comment[es]=Cliente de mensajería instantánea multiprotocolo Comment[fr]=Client de messagerie instantanée multiprotocole Comment[hu]=Többprotokollos üzenőkliens Comment[it]=Client multiprotocollo per messaggi immediati Comment[ko]=다중 프로토콜 메신저 Comment[nb]=Send lynmeldinger over flere protokoller Comment[nl]=Multi-protocol programma voor expresberichten Comment[pl]=Komunikator internetowy obsługujący kilka protokołów Comment[pt_BR]=Cliente multi-protocolo de mensagens Comment[pt]=Envie mensagens instantâneas sobre vários protocolos Comment[sl]=Večprotokolni odjemalec za neposredno sporočanje Comment[sq]=Dërgoni mesazhe të atypëratyshëm protokollesh të ndryshëm Comment[sv]=Sänder snabbmeddelande över många protokoll Comment[zh_CN]=通过多种协议发送即时消息 GenericName=Internet Messenger GenericName[da]=Internet beskeder GenericName[fr]=Messagerie instantanée GenericName[hu]=IM GenericName[it]=Internet Messenger GenericName[ko]=메신저 GenericName[nb]=Lynmeldingsklient GenericName[nl]=Expresberichten GenericName[pl]=Komunikator Internetowy GenericName[pt_BR]=Mensageiro da Internet Gaim GenericName[pt]=Mensageiro Internet GenericName[sl]=Spletni sel GenericName[sq]=Lajmësjellës Internet GenericName[sv]=Meddelandeklient GenericName[zh_CN]=互联网通讯程序 Name=Gaim Internet Messenger Name[da]=Gaim - internet beskeder Name[de]=Gaim Internet Messenger Name[fr]=Gaim Messagerie Instantanée Name[hu]=Gaim IM Name[it]=Gaim Internet Messenger Name[ko]=게임 메신저 Name[nb]=Gaim lynmeldingsklient Name[nl]=Gaim - Expresberichten Name[pl]=Komunikator Internetowy Gaim Name[pt]=Mensageiro Internet Gaim Name[sl]=Gaim - spletni sel Name[sq]=Lajmësjellësi Internet Gaim Name[sv]=Gaim Internet Messenger Name[zh_CN]=Gaim 互联网通讯程序 Exec=gaim Icon=gaim.png StartupNotify=true Terminal=false Type=Application