From f16f2764f42d4d924c42a7a87ceaf91d6335d962 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 18 Apr 2006 02:21:43 +0000 Subject: [PATCH] Make passing NULL for new_prefix work as documented. (#338845, Yevgen 2006-04-17 Matthias Clasen * 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 | 8 ++++++++ ChangeLog.pre-2-12 | 8 ++++++++ glib/gcompletion.c | 2 +- tests/completion-test.c | 10 ++++++++++ 4 files changed, 27 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 7bf5b51..ec3256f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2006-04-17 Matthias Clasen + + * 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 * configure.in: Remove obsolete entry for no_NO. diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index 7bf5b51..ec3256f 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -1,3 +1,11 @@ +2006-04-17 Matthias Clasen + + * 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 * configure.in: Remove obsolete entry for no_NO. diff --git a/glib/gcompletion.c b/glib/gcompletion.c index ac24979..5d26078 100644 --- a/glib/gcompletion.c +++ b/glib/gcompletion.c @@ -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); diff --git a/tests/completion-test.c b/tests/completion-test.c index 88d2986..bece9c3 100644 --- a/tests/completion-test.c +++ b/tests/completion-test.c @@ -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; -- 2.7.4