1
0
mirror of https://github.com/profanity-im/profanity.git synced 2024-09-22 19:45:54 -04:00

Fix /log level crash

Fix crash caused by `/log level` command.

Minor refactoring of command function.
This commit is contained in:
John Hernandez 2023-04-18 18:16:57 +02:00
parent 4933d4e4f3
commit 5a1f2dedd3

View File

@ -6516,12 +6516,17 @@ cmd_log(ProfWin* window, const char* const command, gchar** args)
char* subcmd = args[0];
char* value = args[1];
if (strcmp(subcmd, "maxsize") == 0) {
if (value == NULL) {
cons_bad_cmd_usage(command);
return TRUE;
}
if (strcmp(subcmd, "where") == 0) {
cons_show("Log file: %s", get_log_file_location());
return TRUE;
}
if (value == NULL) {
cons_bad_cmd_usage(command);
return TRUE;
}
if (strcmp(subcmd, "maxsize") == 0) {
int intval = 0;
char* err_msg = NULL;
gboolean res = strtoi_range(value, &intval, PREFS_MIN_LOG_SIZE, INT_MAX, &err_msg);
@ -6536,29 +6541,16 @@ cmd_log(ProfWin* window, const char* const command, gchar** args)
}
if (strcmp(subcmd, "rotate") == 0) {
if (value == NULL) {
cons_bad_cmd_usage(command);
return TRUE;
}
_cmd_set_boolean_preference(value, command, "Log rotate", PREF_LOG_ROTATE);
return TRUE;
}
if (strcmp(subcmd, "shared") == 0) {
if (value == NULL) {
cons_bad_cmd_usage(command);
return TRUE;
}
_cmd_set_boolean_preference(value, command, "Shared log", PREF_LOG_SHARED);
cons_show("Setting only takes effect after saving and restarting Profanity.");
return TRUE;
}
if (strcmp(subcmd, "where") == 0) {
cons_show("Log file: %s", get_log_file_location());
return TRUE;
}
if (strcmp(subcmd, "level") == 0) {
log_level_t prof_log_level;
if (log_level_from_string(value, &prof_log_level) == 0) {