changeset 25083:fa5987472e00

Add a note that we should use hash tables for the permit and deny lists. I don't think we'll be able to make this change until we break binary compatibility for 3.0.0.
author Mark Doliner <mark@kingant.net>
date Thu, 12 Feb 2009 02:33:05 +0000
parents b6bcd024a393
children e97fc1577a0f c1f85543556d fa22ec9d1e84 da4e18e318e7 a2388ce30772
files libpurple/account.h
diffstat 1 files changed, 8 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/libpurple/account.h	Tue Feb 10 20:37:51 2009 +0000
+++ b/libpurple/account.h	Thu Feb 12 02:33:05 2009 +0000
@@ -132,6 +132,14 @@
 								/*   to NULL when the account inherits      */
 								/*   proxy settings from global prefs.      */
 
+	/*
+	 * TODO: Supplementing the next two linked lists with hash tables
+	 * should help performance a lot when these lists are long.  This
+	 * matters quite a bit for protocols like MSN, where all your
+	 * buddies are added to your permit list.  Currently we have to
+	 * iterate through the entire list if we want to check if someone
+	 * is permitted or denied.  We should do this for 3.0.0.
+	 */
 	GSList *permit;             /**< Permit list.                           */
 	GSList *deny;               /**< Deny list.                             */
 	int perm_deny;              /**< The permit/deny setting.               */