[Pidgin] #13947: Ability to create 1000+ accounts

Pidgin trac at pidgin.im
Thu May 5 00:14:22 EDT 2011


#13947: Ability to create 1000+ accounts
-----------------------------------------+----------------------------------
 Reporter:  gugu                         |        Owner:           
     Type:  patch                        |       Status:  new      
Milestone:  Patches Needing Improvement  |    Component:  libpurple
  Version:                               |   Resolution:           
 Keywords:  accounts spectrum            |  
-----------------------------------------+----------------------------------
Changes (by darkrain42):

  * milestone:  => Patches Needing Improvement


Comment:

 I'd like to see this use a different delimiter, which is totally unlikely
 to ever appear in a valid account name ('|' is valid in an XMPP resource)

 I'd also like to see the lists go away totally in 3.0.0.

    * the lookup functions should be 'static' (not exported outside of the
 C file), and don't need to have the purple_accounts_ prefix (they don't
 need not to have it either)
    * You cannot insert a key (gchar*) into the hash table and then free
 that gchar*.  The main idiom which would be used here would be for the
 hash table to "steal" the key (and be responsible for freeing it), or make
 a copy.
    * The change on line 3000 doesn't make sense (why is it there?  Is that
 a programming error, or a valid condition that could be reached under odd
 circumstances)
    * This is wrong (you need braces after the if statement in order for
 the return to not just short-circuit the entire function):
         if (g_hash_table_lookup(accounts_hash, lookup_key) != NULL)
         2896            g_free(lookup_key);
 2876    2897                    return;

-- 
Ticket URL: <http://developer.pidgin.im/ticket/13947#comment:1>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list