aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--e-util/ChangeLog5
-rw-r--r--e-util/ename/e-name-western.c10
2 files changed, 11 insertions, 4 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog
index 5de15f534f..69f0b37bff 100644
--- a/e-util/ChangeLog
+++ b/e-util/ChangeLog
@@ -1,3 +1,8 @@
+2002-01-10 Christopher James Lahey <clahey@ximian.com>
+
+ * ename/e-name-western.c (e_name_western_word_is_suffix): Allow
+ for a period after suffixes. Fixes Ximian bug #17012.
+
2002-01-04 Jeffrey Stedfast <fejj@ximian.com>
* e-memory.c (e_memchunk_clean): Prune free'd nodes from our free
diff --git a/e-util/ename/e-name-western.c b/e-util/ename/e-name-western.c
index c016533d91..f8d717c403 100644
--- a/e-util/ename/e-name-western.c
+++ b/e-util/ename/e-name-western.c
@@ -128,10 +128,12 @@ e_name_western_word_is_suffix (char *word)
int i;
for (i = 0; e_name_western_sfx_table [i] != NULL; i ++) {
- if (g_strcasecmp (word, e_name_western_sfx_table [i]))
- continue;
-
- return TRUE;
+ int length = strlen (e_name_western_sfx_table [i]);
+ if (!g_strcasecmp (word, e_name_western_sfx_table [i]) ||
+ ( !g_strncasecmp (word, e_name_western_sfx_table [i], length) &&
+ strlen(word) == length + 1 &&
+ word[length] == '.' ))
+ return TRUE;
}
return FALSE;