diff options
author | James Booth <boothj5@gmail.com> | 2014-01-23 22:38:12 +0000 |
---|---|---|
committer | James Booth <boothj5@gmail.com> | 2014-01-23 22:38:12 +0000 |
commit | e089ffb15ca3918b456e05c6198fc0cd122d08a2 (patch) | |
tree | 2512f23ddabfc8c4ff789bffa74898764101da48 /src | |
parent | 8dbe300d72e3bdaba672b4a7027ab0f2fb431862 (diff) | |
download | profani-tty-e089ffb15ca3918b456e05c6198fc0cd122d08a2.tar.gz |
Show message when alias already exists in /alias add
Diffstat (limited to 'src')
-rw-r--r-- | src/command/commands.c | 7 | ||||
-rw-r--r-- | src/config/preferences.c | 11 | ||||
-rw-r--r-- | src/config/preferences.h | 2 |
3 files changed, 14 insertions, 6 deletions
diff --git a/src/command/commands.c b/src/command/commands.c index c4390966..5d30d183 100644 --- a/src/command/commands.c +++ b/src/command/commands.c @@ -1834,8 +1834,11 @@ cmd_alias(gchar **args, struct cmd_help_t help) cons_show("Usage: %s", help.usage); return TRUE; } else { - prefs_add_alias(alias, value); - cons_show("Command alias added /%s -> %s", alias, value); + if (prefs_add_alias(alias, value) == TRUE) { + cons_show("Command alias added /%s -> %s", alias, value); + } else { + cons_show("Command alias /%s already exists.", alias); + } return TRUE; } } diff --git a/src/config/preferences.c b/src/config/preferences.c index 88e267f4..3107f303 100644 --- a/src/config/preferences.c +++ b/src/config/preferences.c @@ -260,11 +260,16 @@ prefs_set_autoaway_time(gint value) _save_prefs(); } -void +gboolean prefs_add_alias(const char * const name, const char * const value) { - g_key_file_set_string(prefs, PREF_GROUP_ALIAS, name, value); - _save_prefs(); + if (g_key_file_has_key(prefs, PREF_GROUP_ALIAS, name, NULL)) { + return FALSE; + } else { + g_key_file_set_string(prefs, PREF_GROUP_ALIAS, name, value); + _save_prefs(); + return TRUE; + } } char * diff --git a/src/config/preferences.h b/src/config/preferences.h index 22a175d4..e79137ed 100644 --- a/src/config/preferences.h +++ b/src/config/preferences.h @@ -97,7 +97,7 @@ void prefs_set_autoaway_time(gint value); void prefs_add_login(const char *jid); -void prefs_add_alias(const char * const name, const char * const value); +gboolean prefs_add_alias(const char * const name, const char * const value); gboolean prefs_remove_alias(const char * const name); char* prefs_get_alias(const char * const name); GList* prefs_get_aliases(void); |