SF.net SVN: geany:[5270] trunk/src/editor.c
ntrel at users.sourceforge.net
ntrel at xxxxx
Fri Oct 1 14:28:05 UTC 2010
Revision: 5270
http://geany.svn.sourceforge.net/geany/?rev=5270&view=rev
Author: ntrel
Date: 2010-10-01 14:28:05 +0000 (Fri, 01 Oct 2010)
Log Message:
-----------
Refactor editor_snippets_init().
Modified Paths:
--------------
trunk/src/editor.c
Modified: trunk/src/editor.c
===================================================================
--- trunk/src/editor.c 2010-10-01 14:09:44 UTC (rev 5269)
+++ trunk/src/editor.c 2010-10-01 14:28:05 UTC (rev 5270)
@@ -120,31 +120,14 @@
}
-void editor_snippets_init(void)
+static void snippets_init(GKeyFile *sysconfig, GKeyFile *userconfig)
{
gsize i, j, len = 0, len_keys = 0;
- gchar *sysconfigfile, *userconfigfile;
gchar **groups_user, **groups_sys;
gchar **keys_user, **keys_sys;
gchar *value;
- GKeyFile *sysconfig = g_key_file_new();
- GKeyFile *userconfig = g_key_file_new();
GHashTable *tmp;
- snippet_offsets = g_queue_new();
-
- sysconfigfile = g_strconcat(app->datadir, G_DIR_SEPARATOR_S, "snippets.conf", NULL);
- userconfigfile = g_strconcat(app->configdir, G_DIR_SEPARATOR_S, "snippets.conf", NULL);
-
- /* check for old autocomplete.conf files (backwards compatibility) */
- if (! g_file_test(userconfigfile, G_FILE_TEST_IS_REGULAR))
- setptr(userconfigfile,
- g_strconcat(app->configdir, G_DIR_SEPARATOR_S, "autocomplete.conf", NULL));
-
- /* load the actual config files */
- g_key_file_load_from_file(sysconfig, sysconfigfile, G_KEY_FILE_NONE, NULL);
- g_key_file_load_from_file(userconfig, userconfigfile, G_KEY_FILE_NONE, NULL);
-
/* keys are strings, values are GHashTables, so use g_free and g_hash_table_destroy */
snippet_hash =
g_hash_table_new_full(g_str_hash, g_str_equal, g_free, (GDestroyNotify) g_hash_table_destroy);
@@ -165,6 +148,7 @@
}
g_strfreev(keys_sys);
}
+ g_strfreev(groups_sys);
/* now read defined completions in user's configuration directory and add / replace them */
groups_user = g_key_file_get_groups(userconfig, &len);
@@ -194,11 +178,34 @@
}
g_strfreev(keys_user);
}
+ g_strfreev(groups_user);
+}
+
+void editor_snippets_init(void)
+{
+ gchar *sysconfigfile, *userconfigfile;
+ GKeyFile *sysconfig = g_key_file_new();
+ GKeyFile *userconfig = g_key_file_new();
+
+ snippet_offsets = g_queue_new();
+
+ sysconfigfile = g_strconcat(app->datadir, G_DIR_SEPARATOR_S, "snippets.conf", NULL);
+ userconfigfile = g_strconcat(app->configdir, G_DIR_SEPARATOR_S, "snippets.conf", NULL);
+
+ /* check for old autocomplete.conf files (backwards compatibility) */
+ if (! g_file_test(userconfigfile, G_FILE_TEST_IS_REGULAR))
+ setptr(userconfigfile,
+ g_strconcat(app->configdir, G_DIR_SEPARATOR_S, "autocomplete.conf", NULL));
+
+ /* load the actual config files */
+ g_key_file_load_from_file(sysconfig, sysconfigfile, G_KEY_FILE_NONE, NULL);
+ g_key_file_load_from_file(userconfig, userconfigfile, G_KEY_FILE_NONE, NULL);
+
+ snippets_init(sysconfig, userconfig);
+
g_free(sysconfigfile);
g_free(userconfigfile);
- g_strfreev(groups_sys);
- g_strfreev(groups_user);
g_key_file_free(sysconfig);
g_key_file_free(userconfig);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list