Make passing NULL for new_prefix work as documented. (#338845, Yevgen
authorMatthias Clasen <mclasen@redhat.com>
Tue, 18 Apr 2006 02:21:43 +0000 (02:21 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Tue, 18 Apr 2006 02:21:43 +0000 (02:21 +0000)
2006-04-17  Matthias Clasen  <mclasen@redhat.com>

* glib/gcompletion.c (g_completion_complete_utf8): Make passing
NULL for new_prefix work as documented.  (#338845, Yevgen Muntyan)

* tests/completion-test.c: Test that passing NULL for
new_prefix in g_completion_complete_utf8 works.

ChangeLog
ChangeLog.pre-2-12
glib/gcompletion.c
tests/completion-test.c

index 7bf5b516ef0f07395c957a59730277e976f703ab..ec3256f912f31a0c9ee35dd2f3846901ff11b0a2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2006-04-17  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gcompletion.c (g_completion_complete_utf8): Make passing
+       NULL for new_prefix work as documented.  (#338845, Yevgen Muntyan)
+
+       * tests/completion-test.c: Test that passing NULL for 
+       new_prefix in g_completion_complete_utf8 works.
+
 2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
 
        * configure.in: Remove obsolete entry for no_NO.
index 7bf5b516ef0f07395c957a59730277e976f703ab..ec3256f912f31a0c9ee35dd2f3846901ff11b0a2 100644 (file)
@@ -1,3 +1,11 @@
+2006-04-17  Matthias Clasen  <mclasen@redhat.com>
+
+       * glib/gcompletion.c (g_completion_complete_utf8): Make passing
+       NULL for new_prefix work as documented.  (#338845, Yevgen Muntyan)
+
+       * tests/completion-test.c: Test that passing NULL for 
+       new_prefix in g_completion_complete_utf8 works.
+
 2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
 
        * configure.in: Remove obsolete entry for no_NO.
index ac249798c572a24eaaa739b239e2860d8bb5e45e..5d2607846e6d40fbf256f60a8bbd47286a382c7b 100644 (file)
@@ -194,7 +194,7 @@ g_completion_complete_utf8 (GCompletion  *cmp,
 
   list = g_completion_complete (cmp, prefix, new_prefix);
 
-  if (*new_prefix)
+  if (new_prefix && *new_prefix)
     {
       p = *new_prefix + strlen (*new_prefix);
       q = g_utf8_find_prev_char (*new_prefix, p);
index 88d2986febfeb2bda156ee6b02c62943714ce72e..bece9c34a0cdee5cd8cb4db4245837d8cf89a50f 100644 (file)
@@ -44,20 +44,30 @@ int main (int argc, char *argv[])
 
   items = g_completion_complete (cmp, "a", &prefix);
   g_assert (!strcmp ("a\302", prefix));
+  g_assert (g_list_length (items) == 2);
   g_free (prefix);
   
   items = g_completion_complete_utf8 (cmp, "a", &prefix);
   g_assert (!strcmp ("a", prefix));
+  g_assert (g_list_length (items) == 2);
   g_free (prefix);
 
   items = g_completion_complete (cmp, "b", &prefix);
   g_assert (!strcmp ("b", prefix));
+  g_assert (g_list_length (items) == 2);
   g_free (prefix);
   
   items = g_completion_complete_utf8 (cmp, "b", &prefix);
   g_assert (!strcmp ("b", prefix));
+  g_assert (g_list_length (items) == 2);
   g_free (prefix);
 
+  items = g_completion_complete (cmp, "a", NULL);
+  g_assert (g_list_length (items) == 2);
+
+  items = g_completion_complete_utf8 (cmp, "a", NULL);
+  g_assert (g_list_length (items) == 2);
+
   g_completion_free (cmp);
 
   return 0;