Move reinstate_user_modes() and update_user_mode() from funny.c to server.c and parse.c
Move these functions where they belong.
This commit is contained in:
parent
c4ba093ca5
commit
305cfe2afb
|
@ -24,11 +24,9 @@
|
|||
int funny_is_ignore_channel (void);
|
||||
void funny_set_ignore_channel (char *);
|
||||
void funny_match (char *);
|
||||
void reinstate_user_modes (void);
|
||||
void funny_print_widelist (void);
|
||||
void funny_list (char *, char **);
|
||||
void funny_mode (char *, char **);
|
||||
void funny_namreply (char *, char **);
|
||||
void update_user_mode (int, const char *);
|
||||
|
||||
#endif /* FUNNY_H_ */
|
||||
|
|
|
@ -249,6 +249,7 @@ extern SGroup *server_group_list;
|
|||
void disconnectcmd (char *, char *, char *, char *);
|
||||
char *BX_get_umode (int);
|
||||
int BX_server_list_size (void);
|
||||
void reinstate_user_modes (int);
|
||||
|
||||
void BX_set_server_away (int, char *, int);
|
||||
char * BX_get_server_away (int);
|
||||
|
|
|
@ -408,41 +408,3 @@ void funny_mode(char *from, char **ArgList)
|
|||
}
|
||||
}
|
||||
|
||||
void update_user_mode(int server, const char *modes)
|
||||
{
|
||||
int onoff = 1;
|
||||
const char *p_umodes = get_possible_umodes(server);
|
||||
const char *p;
|
||||
|
||||
for (; *modes; modes++)
|
||||
{
|
||||
char c = *modes;
|
||||
|
||||
switch (c)
|
||||
{
|
||||
case '-':
|
||||
onoff = 0;
|
||||
break;
|
||||
case '+':
|
||||
onoff = 1;
|
||||
break;
|
||||
case 'o':
|
||||
case 'O':
|
||||
set_server_operator(server, onoff);
|
||||
/* fallthrough */
|
||||
default:
|
||||
p = strchr(p_umodes, c);
|
||||
if (p)
|
||||
set_server_flag(server, p - p_umodes, onoff);
|
||||
else
|
||||
yell("Ignoring invalid user mode '%c' from server", c);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void reinstate_user_modes (void)
|
||||
{
|
||||
char *modes = get_umode(from_server);
|
||||
if (modes && *modes)
|
||||
send_to_server("MODE %s +%s", get_server_nickname(from_server), modes);
|
||||
}
|
||||
|
|
|
@ -581,7 +581,7 @@ static void got_initial_version_28(char *server, char *sversion, char *channel_m
|
|||
reconnect_all_channels(from_server);
|
||||
|
||||
reset_display_target();
|
||||
reinstate_user_modes();
|
||||
reinstate_user_modes(from_server);
|
||||
if (use_nat_address == 1)
|
||||
userhostbase(get_server_nickname(from_server), get_nat_address, 1, "%s", get_server_nickname(from_server));
|
||||
update_all_status(current_window, NULL, 0);
|
||||
|
|
|
@ -1462,6 +1462,38 @@ static void check_bitch_mode(char *from, char *uh, char *channel, char *line, Ch
|
|||
reset_display_target();
|
||||
}
|
||||
|
||||
static void update_user_mode(int server, const char *modes)
|
||||
{
|
||||
int onoff = 1;
|
||||
const char *p_umodes = get_possible_umodes(server);
|
||||
const char *p;
|
||||
|
||||
for (; *modes; modes++)
|
||||
{
|
||||
char c = *modes;
|
||||
|
||||
switch (c)
|
||||
{
|
||||
case '-':
|
||||
onoff = 0;
|
||||
break;
|
||||
case '+':
|
||||
onoff = 1;
|
||||
break;
|
||||
case 'o':
|
||||
case 'O':
|
||||
set_server_operator(server, onoff);
|
||||
/* fallthrough */
|
||||
default:
|
||||
p = strchr(p_umodes, c);
|
||||
if (p)
|
||||
set_server_flag(server, p - p_umodes, onoff);
|
||||
else
|
||||
yell("Ignoring invalid user mode '%c' from server", c);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void p_mode(char *from, char **ArgList)
|
||||
{
|
||||
char *target;
|
||||
|
|
|
@ -1918,6 +1918,13 @@ void clear_user_modes (int gindex)
|
|||
set_umode(gindex);
|
||||
}
|
||||
|
||||
void reinstate_user_modes(int server)
|
||||
{
|
||||
char *modes = get_umode(server);
|
||||
if (modes && *modes)
|
||||
my_send_to_server(server, "MODE %s +%s", get_server_nickname(server), modes);
|
||||
}
|
||||
|
||||
/*
|
||||
* Encapsulates everything we need to change our AWAY status.
|
||||
* This improves greatly on having everyone peek into that member.
|
||||
|
|
Loading…
Reference in New Issue