diff options
Diffstat (limited to 'e-util')
-rw-r--r-- | e-util/ChangeLog | 5 | ||||
-rw-r--r-- | e-util/ename/e-name-western.c | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog index 631d33b8a3..8d78374234 100644 --- a/e-util/ChangeLog +++ b/e-util/ChangeLog @@ -1,3 +1,8 @@ +2003-04-04 Chris Toshok <toshok@ximian.com> + + * ename/e-name-western.c (e_name_western_extract_middle): fix abr. + (e_name_western_get_suffix_at_str_end): same. + 2003-04-02 Not Zed <NotZed@Ximian.com> * e-passwords.c (e_passwords_forget_passwords): Delete all diff --git a/e-util/ename/e-name-western.c b/e-util/ename/e-name-western.c index 33c9d53f6c..081ddc64e0 100644 --- a/e-util/ename/e-name-western.c +++ b/e-util/ename/e-name-western.c @@ -299,8 +299,10 @@ e_name_western_extract_middle (ENameWestern *name, ENameWesternIdxs *idxs) return; middle = name->full + idxs->first_idx + strlen (name->first); - middle = g_utf8_next_char (middle); + if (*middle == '\0') + return; + middle = g_utf8_next_char (middle); if (*middle == '\0') return; @@ -536,6 +538,8 @@ e_name_western_get_suffix_at_str_end (char *str) word = e_name_western_get_preceding_word (str, p - str); nextp = p - strlen (word); + if (nextp == str) + break; nextp = g_utf8_prev_char (nextp); e_name_western_cleanup_string (& word); |