From 96aa6ab8734e7bfc89792c05cac410353bcccabf Mon Sep 17 00:00:00 2001 From: "James M. Cape" Date: Tue, 3 Dec 2002 07:07:38 +0000 Subject: [PATCH] Check for NULL before doing anything. Tue Dec 3 01:05:00 2002 James M. Cape * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): Check for NULL before doing anything. --- ChangeLog | 5 +++++ ChangeLog.pre-2-10 | 5 +++++ ChangeLog.pre-2-12 | 5 +++++ ChangeLog.pre-2-2 | 5 +++++ ChangeLog.pre-2-4 | 5 +++++ ChangeLog.pre-2-6 | 5 +++++ ChangeLog.pre-2-8 | 5 +++++ glib/gunicollate.c | 32 ++++++++++++++++++++++++++------ 8 files changed, 61 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index b1deff9..83e4968 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Dec 3 01:05:00 2002 James M. Cape + + * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): + Check for NULL before doing anything. + Mon Dec 2 16:34:13 2002 Owen Taylor * === Released 2.1.3 === diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index b1deff9..83e4968 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +Tue Dec 3 01:05:00 2002 James M. Cape + + * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): + Check for NULL before doing anything. + Mon Dec 2 16:34:13 2002 Owen Taylor * === Released 2.1.3 === diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index b1deff9..83e4968 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -1,3 +1,8 @@ +Tue Dec 3 01:05:00 2002 James M. Cape + + * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): + Check for NULL before doing anything. + Mon Dec 2 16:34:13 2002 Owen Taylor * === Released 2.1.3 === diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index b1deff9..83e4968 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,8 @@ +Tue Dec 3 01:05:00 2002 James M. Cape + + * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): + Check for NULL before doing anything. + Mon Dec 2 16:34:13 2002 Owen Taylor * === Released 2.1.3 === diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index b1deff9..83e4968 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,8 @@ +Tue Dec 3 01:05:00 2002 James M. Cape + + * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): + Check for NULL before doing anything. + Mon Dec 2 16:34:13 2002 Owen Taylor * === Released 2.1.3 === diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index b1deff9..83e4968 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,8 @@ +Tue Dec 3 01:05:00 2002 James M. Cape + + * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): + Check for NULL before doing anything. + Mon Dec 2 16:34:13 2002 Owen Taylor * === Released 2.1.3 === diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index b1deff9..83e4968 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,8 @@ +Tue Dec 3 01:05:00 2002 James M. Cape + + * glib/gunicollate.c (g_utf8_collate, g_utf8_collate_key): + Check for NULL before doing anything. + Mon Dec 2 16:34:13 2002 Owen Taylor * === Released 2.1.3 === diff --git a/glib/gunicollate.c b/glib/gunicollate.c index 41cbe81..3cd6911 100644 --- a/glib/gunicollate.c +++ b/glib/gunicollate.c @@ -53,8 +53,14 @@ g_utf8_collate (const gchar *str1, #ifdef __STDC_ISO_10646__ - gunichar *str1_norm = _g_utf8_normalize_wc (str1, -1, G_NORMALIZE_ALL_COMPOSE); - gunichar *str2_norm = _g_utf8_normalize_wc (str2, -1, G_NORMALIZE_ALL_COMPOSE); + gunichar *str1_norm; + gunichar *str2_norm; + + g_return_val_if_fail (str1 != NULL, 0); + g_return_val_if_fail (str2 != NULL, 0); + + str1_norm = _g_utf8_normalize_wc (str1, -1, G_NORMALIZE_ALL_COMPOSE); + str2_norm = _g_utf8_normalize_wc (str2, -1, G_NORMALIZE_ALL_COMPOSE); result = wcscoll ((wchar_t *)str1_norm, (wchar_t *)str2_norm); @@ -64,8 +70,14 @@ g_utf8_collate (const gchar *str1, #else /* !__STDC_ISO_10646__ */ const gchar *charset; - gchar *str1_norm = g_utf8_normalize (str1, -1, G_NORMALIZE_ALL_COMPOSE); - gchar *str2_norm = g_utf8_normalize (str2, -1, G_NORMALIZE_ALL_COMPOSE); + gchar *str1_norm; + gchar *str2_norm; + + g_return_val_if_fail (str1 != NULL, 0); + g_return_val_if_fail (str2 != NULL, 0); + + str1_norm = g_utf8_normalize (str1, -1, G_NORMALIZE_ALL_COMPOSE); + str2_norm = g_utf8_normalize (str2, -1, G_NORMALIZE_ALL_COMPOSE); if (g_get_charset (&charset)) { @@ -169,11 +181,15 @@ g_utf8_collate_key (const gchar *str, #ifdef __STDC_ISO_10646__ - gunichar *str_norm = _g_utf8_normalize_wc (str, len, G_NORMALIZE_ALL_COMPOSE); + gunichar *str_norm; wchar_t *result_wc; size_t i; size_t result_len = 0; + g_return_val_if_fail (str1 != NULL, NULL); + + str_norm = _g_utf8_normalize_wc (str, len, G_NORMALIZE_ALL_COMPOSE); + setlocale (LC_COLLATE, ""); xfrm_len = wcsxfrm (NULL, (wchar_t *)str_norm, 0); @@ -197,7 +213,11 @@ g_utf8_collate_key (const gchar *str, #else /* !__STDC_ISO_10646__ */ const gchar *charset; - gchar *str_norm = g_utf8_normalize (str, len, G_NORMALIZE_ALL_COMPOSE); + gchar *str_norm; + + g_return_val_if_fail (str1 != NULL, NULL); + + str_norm = g_utf8_normalize (str, len, G_NORMALIZE_ALL_COMPOSE); if (g_get_charset (&charset)) { -- 2.7.4