fix xdg support missing in one theme file

- fix some missed get_irssi_dir() usages
- fix comment in src/core/settings.c refering to ~/.irssi
This commit is contained in:
altffour 2021-01-06 19:28:11 +03:00
commit 43e956d16b
No known key found for this signature in database
GPG key ID: B4ADFA86EDF5CCE9
3 changed files with 9 additions and 5 deletions

View file

@ -768,7 +768,7 @@ static void init_configfile(void)
char *str; char *str;
if (stat(get_irssi_dir(), &statbuf) != 0) { if (stat(get_irssi_dir(), &statbuf) != 0) {
/* ~/.irssi not found, create it. */ /* irssi folder not found, create it. */
if (g_mkdir_with_parents(get_irssi_dir(), 0700) != 0) { if (g_mkdir_with_parents(get_irssi_dir(), 0700) != 0) {
g_error("Couldn't create %s directory: %s", g_error("Couldn't create %s directory: %s",
get_irssi_dir(), g_strerror(errno)); get_irssi_dir(), g_strerror(errno));

View file

@ -936,7 +936,7 @@ THEME_REC *theme_load(const char *setname)
fname = g_build_filename(g_get_user_data_dir(), "irssi", fname = g_build_filename(g_get_user_data_dir(), "irssi",
g_strdup_printf("%s.theme", name), NULL); g_strdup_printf("%s.theme", name), NULL);
else else
fname = g_strdup_printf("%s/%s.theme", get_irssi_dir(), name); fname = g_strdup_printf("%s/%s.theme", get_irssi_dir(), name, NULL);
if (stat(fname, &statbuf) != 0) { if (stat(fname, &statbuf) != 0) {
/* check global config dir */ /* check global config dir */
g_free(fname); g_free(fname);
@ -1264,7 +1264,7 @@ static void theme_save(THEME_REC *theme, int save_all)
if (is_xdg_supported()) if (is_xdg_supported())
path = g_build_filename(g_get_user_data_dir(), "irssi", basename, NULL); path = g_build_filename(g_get_user_data_dir(), "irssi", basename, NULL);
else else
path = g_strdup_printf("%s/%s", get_irssi_dir(), basename); path = g_strdup_printf("%s/%s", get_irssi_dir(), basename, NULL);
ok = config_write(config, path, 0660) == 0; ok = config_write(config, path, 0660) == 0;
g_free(basename); g_free(basename);
@ -1421,7 +1421,8 @@ void themes_reload(void)
current_theme = theme_load("default"); current_theme = theme_load("default");
if (current_theme == NULL) { if (current_theme == NULL) {
if (is_xdg_supported()) if (is_xdg_supported())
fname = g_build_filename(g_get_user_data_dir(), "irssi", "default.theme"); fname =
g_build_filename(g_get_user_data_dir(), "irssi", "default.theme", NULL);
else else
fname = g_strdup_printf("%s/default.theme", get_irssi_dir()); fname = g_strdup_printf("%s/default.theme", get_irssi_dir());
current_theme = theme_create(fname, "default"); current_theme = theme_create(fname, "default");

View file

@ -209,6 +209,9 @@ static void sig_complete_load(GList **list, WINDOW_REC *window,
return; return;
/* completing filename parameter for /SCRIPT LOAD */ /* completing filename parameter for /SCRIPT LOAD */
if (is_xdg_supported())
user_dir = g_build_filename(g_get_user_data_dir(), "scripts", NULL);
else
user_dir = g_strdup_printf("%s/scripts", get_irssi_dir()); user_dir = g_strdup_printf("%s/scripts", get_irssi_dir());
*list = filename_complete(word, user_dir); *list = filename_complete(word, user_dir);
*list = g_list_concat(*list, filename_complete(word, SCRIPTDIR)); *list = g_list_concat(*list, filename_complete(word, SCRIPTDIR));