From 64cc81f769ef6ac97b8b9ff4d2693066ffcac63f Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 21 Apr 2010 09:33:57 -0400 Subject: [PATCH] Add an --allow-any-name option This will make it easier for people to keep their GConf key names in the transition period. Conflicts: gio/gschema-compile.c --- gio/gschema-compile.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gio/gschema-compile.c b/gio/gschema-compile.c index ffeb547a8..2a98b4f4a 100644 --- a/gio/gschema-compile.c +++ b/gio/gschema-compile.c @@ -53,6 +53,8 @@ typedef struct GVariantType *type; } ParseState; +static gboolean allow_any_name = FALSE; + static gboolean is_valid_keyname (const gchar *key, GError **error) @@ -66,6 +68,9 @@ is_valid_keyname (const gchar *key, return FALSE; } + if (allow_any_name) + return TRUE; + if (!g_ascii_islower (key[0])) { g_set_error (error, G_MARKUP_ERROR, G_MARKUP_ERROR_INVALID_CONTENT, @@ -498,10 +503,10 @@ main (int argc, char **argv) GOptionEntry entries[] = { { "targetdir", 0, 0, G_OPTION_ARG_FILENAME, &targetdir, N_("where to store the gschemas.compiled file"), N_("DIRECTORY") }, { "dry-run", 0, 0, G_OPTION_ARG_NONE, &dry_run, N_("Do not write the gschema.compiled file"), NULL }, + { "allow-any-name", 0, 0, G_OPTION_ARG_NONE, &allow_any_name, N_("Do not enforce key name restrictions") }, /* These options are only for use in the gschema-compile tests */ { "one-schema-file", 0, G_OPTION_FLAG_HIDDEN, G_OPTION_ARG_FILENAME, &one_schema_file, NULL, NULL }, - { NULL } };