presence: Make set_metadata() erase any old metadata for an entry.
This commit is contained in:
parent
85171f1f16
commit
25e664566f
|
@ -1751,13 +1751,14 @@ set_metadata(struct Client *client_p, const char *key, const char *value)
|
||||||
{
|
{
|
||||||
struct MetadataEntry *md;
|
struct MetadataEntry *md;
|
||||||
|
|
||||||
|
delete_metadata(client_p, key);
|
||||||
if(client_p->user != NULL)
|
if(client_p->user != NULL)
|
||||||
{
|
{
|
||||||
md = rb_bh_alloc(metadata_heap);
|
md = rb_bh_alloc(metadata_heap);
|
||||||
rb_strlcpy(md->key, key, NICKLEN);
|
rb_strlcpy(md->key, key, NICKLEN);
|
||||||
rb_strlcpy(md->value, value, TOPICLEN);
|
rb_strlcpy(md->value, value, TOPICLEN);
|
||||||
|
|
||||||
irc_dictionary_add(client_p->user->metadata, key, md);
|
irc_dictionary_add(client_p->user->metadata, md->key, md);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue