comparison libpurple/protocols/jabber/buddy.c @ 27149:01c91af62ab3

Plug a leak from changing this to use jabber_get_bare_jid instead of normalize.
author Paul Aurich <paul@darkrain42.org>
date Sun, 07 Jun 2009 06:19:12 +0000
parents bc2aa262a567
children d570d1e10382
comparison
equal deleted inserted replaced
27143:8ab2309dfd68 27149:01c91af62ab3
67 67
68 JabberBuddy *jabber_buddy_find(JabberStream *js, const char *name, 68 JabberBuddy *jabber_buddy_find(JabberStream *js, const char *name,
69 gboolean create) 69 gboolean create)
70 { 70 {
71 JabberBuddy *jb; 71 JabberBuddy *jb;
72 const char *realname; 72 char *realname;
73 73
74 if (js->buddies == NULL) 74 if (js->buddies == NULL)
75 return NULL; 75 return NULL;
76 76
77 if(!(realname = jabber_get_bare_jid(name))) 77 if(!(realname = jabber_get_bare_jid(name)))
79 79
80 jb = g_hash_table_lookup(js->buddies, realname); 80 jb = g_hash_table_lookup(js->buddies, realname);
81 81
82 if(!jb && create) { 82 if(!jb && create) {
83 jb = g_new0(JabberBuddy, 1); 83 jb = g_new0(JabberBuddy, 1);
84 g_hash_table_insert(js->buddies, g_strdup(realname), jb); 84 g_hash_table_insert(js->buddies, realname, jb);
85 } 85 } else
86 g_free(realname);
86 87
87 return jb; 88 return jb;
88 } 89 }
89 90
90 91