Commits

Anonymous committed 748961c

Fix segfault on netsplit due to clearing metadata too late.

Comments (0)

Files changed (2)

 #include "s_newconf.h"
 #include "logger.h"
 #include "chmode.h"
-#include "irc_dictionary.h";
+#include "irc_dictionary.h"
 
 /* bitmasks for error returns, so we send once per call */
 #define SM_ERR_NOTS             0x00000001	/* No TS on channel */
 	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)