mirror of
https://github.com/irssi/irssi.git
synced 2025-01-03 14:56:47 -05:00
Prevent a UAF error during the execution of some commands
Some arguments were free'd first and then printed, leading to gibberish being output to screen or a crash. Found by Joseph Bisch. Closes: !GL17
This commit is contained in:
parent
7e619ed990
commit
7605f67f95
@ -278,9 +278,9 @@ static void cmd_channel_add_modify(const char *data, gboolean add)
|
||||
rec = channel_setup_find(channel, chatnet);
|
||||
if (rec == NULL) {
|
||||
if (add == FALSE) {
|
||||
cmd_params_free(free_arg);
|
||||
printformat(NULL, NULL, MSGLEVEL_CLIENTNOTICE,
|
||||
TXT_CHANSETUP_NOT_FOUND, channel, chatnet);
|
||||
cmd_params_free(free_arg);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -136,9 +136,9 @@ static void cmd_server_add_modify(const char *data, gboolean add)
|
||||
|
||||
if (rec == NULL) {
|
||||
if (add == FALSE) {
|
||||
cmd_params_free(free_arg);
|
||||
printformat(NULL, NULL, MSGLEVEL_CLIENTNOTICE,
|
||||
TXT_SETUPSERVER_NOT_FOUND, addr, port);
|
||||
cmd_params_free(free_arg);
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -106,9 +106,9 @@ static void cmd_network_add_modify(const char *data, gboolean add)
|
||||
rec = ircnet_find(name);
|
||||
if (rec == NULL) {
|
||||
if (add == FALSE) {
|
||||
cmd_params_free(free_arg);
|
||||
printformat(NULL, NULL, MSGLEVEL_CLIENTNOTICE,
|
||||
IRCTXT_NETWORK_NOT_FOUND, name);
|
||||
cmd_params_free(free_arg);
|
||||
return;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user