Add a test for grup names of length 1.
authorMatthias Clasen <mclasen@redhat.com>
Wed, 14 Sep 2005 18:04:53 +0000 (18:04 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Wed, 14 Sep 2005 18:04:53 +0000 (18:04 +0000)
2005-09-14  Matthias Clasen  <mclasen@redhat.com>

* tests/keyfile-test.c: Add a test for grup names of length 1.

* glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
of length 1.  (#316309)

ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-12
glib/gkeyfile.c
tests/keyfile-test.c

index b041806248f2699ecfc8496e71b2a4120917e846..fe23d0c2d93064c28178be9ad3c28c738ba67ffc 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2005-09-14  Matthias Clasen  <mclasen@redhat.com>
+
+       * tests/keyfile-test.c: Add a test for grup names of length 1.
+
+       * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
+       of length 1.  (#316309)
+       
 2005-09-12  Matthias Clasen  <mclasen@redhat.com>
 
        * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
index b041806248f2699ecfc8496e71b2a4120917e846..fe23d0c2d93064c28178be9ad3c28c738ba67ffc 100644 (file)
@@ -1,3 +1,10 @@
+2005-09-14  Matthias Clasen  <mclasen@redhat.com>
+
+       * tests/keyfile-test.c: Add a test for grup names of length 1.
+
+       * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
+       of length 1.  (#316309)
+       
 2005-09-12  Matthias Clasen  <mclasen@redhat.com>
 
        * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
index b041806248f2699ecfc8496e71b2a4120917e846..fe23d0c2d93064c28178be9ad3c28c738ba67ffc 100644 (file)
@@ -1,3 +1,10 @@
+2005-09-14  Matthias Clasen  <mclasen@redhat.com>
+
+       * tests/keyfile-test.c: Add a test for grup names of length 1.
+
+       * glib/gkeyfile.c (g_key_file_line_is_group): Accept group names
+       of length 1.  (#316309)
+       
 2005-09-12  Matthias Clasen  <mclasen@redhat.com>
 
        * glib/gmarkup.c (g_markup_escape_text): Clarify docs.
index 63469e297ac8b1688131d8f7f329a89815962dcf..d77a1ae1678baa835f5701e9422f1c5d87125e2d 100644 (file)
@@ -2989,14 +2989,9 @@ g_key_file_line_is_group (const gchar *line)
 
   p = g_utf8_next_char (p);
 
-  if (!*p)
-    return FALSE;
-
-  p = g_utf8_next_char (p);
-
   /* Group name must be non-empty
    */
-  if (*p == ']')
+  if (!*p || *p == ']')
     return FALSE;
 
   while (*p && *p != ']')
index 475688e6d17daeb52f671bd89a6137c9ea542a62..e98304d4341afddb31f08b2b26fce0f520b9acf2 100644 (file)
@@ -755,6 +755,25 @@ test_lists (void)
   g_key_file_free (keyfile);  
 }
 
+static void
+test_groups (void)
+{
+  GKeyFile *keyfile;
+
+  const gchar *data = 
+    "[1]\n"
+    "key1=123\n"
+    "[2]\n"
+    "key2=123\n";
+  
+  keyfile = load_data (data, 0);
+
+  check_string_value (keyfile, "1", "key1", "123");
+  check_string_value (keyfile, "2", "key2", "123");
+
+  g_key_file_free (keyfile);  
+}
+
 /* http://bugzilla.gnome.org/show_bug.cgi?id=165887 */
 static void 
 test_group_remove (void)
@@ -874,6 +893,7 @@ main (int argc, char *argv[])
   test_lists ();
   test_group_remove ();
   test_key_remove ();
+  test_groups ();
   
   return 0;
 }