if(IsOper(source_p))
rb_dlinkFindDestroy(source_p, &oper_list);
+ /* get rid of any metadata the user may have */
+ user_metadata_clear(source_p);
+
sendto_common_channels_local(source_p, ":%s!%s@%s QUIT :%s",
source_p->name,
source_p->username, source_p->host, comment);
{
free_away(client_p);
- /* get rid of any metadata the user may have */
- user_metadata_clear(client_p);
-
if(--user->refcnt <= 0)
{
if(user->away)
{
struct Metadata *md;
- if(irc_dictionary_find(target->user->metadata, name) != NULL)
- return NULL;
-
md = rb_malloc(sizeof(struct Metadata));
md->name = rb_strdup(name);
md->value = rb_strdup(value);
if(propegate)
sendto_match_servs(&me, "*", CAP_ENCAP, NOCAPS, "ENCAP * METADATA ADD %s %s :%s",
- target->name, name, value);
+ target->id, name, value);
return md;
}
if(propegate)
sendto_match_servs(&me, "*", CAP_ENCAP, NOCAPS, "ENCAP * METADATA DELETE %s %s",
- target->name, name);
+ target->id, name);
}
/*