]> jfr.im git - solanum.git/blobdiff - src/channel.c
Reset check_splitmode_ev to NULL after removing it,
[solanum.git] / src / channel.c
index 36b847f6495ac3f135642b9ee692dda673dfcefd..e3e2c060b4f3f827ad0732c784453cf48bb3591a 100644 (file)
@@ -41,6 +41,8 @@
 #include "s_newconf.h"
 #include "logger.h"
 
+struct config_channel_entry ConfigChannel;
+rb_dlink_list global_channel_list;
 static rb_bh *channel_heap;
 static rb_bh *ban_heap;
 static rb_bh *topic_heap;
@@ -238,8 +240,6 @@ remove_user_from_channel(struct membership *msptr)
        if(client_p->servptr == &me)
                rb_dlinkDelete(&msptr->locchannode, &chptr->locmembers);
 
-       chptr->users_last = rb_current_time();
-
        if(!(chptr->mode.mode & MODE_PERMANENT) && rb_dlink_list_length(&chptr->members) <= 0)
                destroy_channel(chptr);
 
@@ -275,8 +275,6 @@ remove_user_from_channels(struct Client *client_p)
                if(client_p->servptr == &me)
                        rb_dlinkDelete(&msptr->locchannode, &chptr->locmembers);
 
-               chptr->users_last = rb_current_time();
-
                if(!(chptr->mode.mode & MODE_PERMANENT) && rb_dlink_list_length(&chptr->members) <= 0)
                        destroy_channel(chptr);
 
@@ -997,6 +995,7 @@ check_splitmode(void *unused)
                                             "Network rejoined, deactivating splitmode");
 
                        rb_event_delete(check_splitmode_ev);
+                       check_splitmode_ev = NULL;
                }
        }
 }