diff options
| author | Andrey A. Chernov <ache@FreeBSD.org> | 2004-10-18 07:10:33 +0000 |
|---|---|---|
| committer | Andrey A. Chernov <ache@FreeBSD.org> | 2004-10-18 07:10:33 +0000 |
| commit | 6af9ea3853f51199706411995f3df6dd405f894b (patch) | |
| tree | 2d21ab334e0c6cea3f19e86785adaa8232258828 /contrib | |
| parent | d1447d3869eb60ad63f309539ff818bc0909e653 (diff) | |
| parent | e5ce20496d1a1c93eeac0079c7a3785dd22a6da3 (diff) | |
Notes
Diffstat (limited to 'contrib')
| -rw-r--r-- | contrib/libreadline/mbutil.c | 4 | ||||
| -rw-r--r-- | contrib/libreadline/misc.c | 6 |
2 files changed, 2 insertions, 8 deletions
diff --git a/contrib/libreadline/mbutil.c b/contrib/libreadline/mbutil.c index 9a8f17c0f74e..695845a60f4e 100644 --- a/contrib/libreadline/mbutil.c +++ b/contrib/libreadline/mbutil.c @@ -126,11 +126,11 @@ _rl_find_next_mbchar_internal (string, seed, count, find_non_zero) if (find_non_zero) { tmp = mbrtowc (&wc, string + point, strlen (string + point), &ps); - while (wcwidth (wc) == 0) + while (tmp > 0 && wcwidth (wc) == 0) { point += tmp; tmp = mbrtowc (&wc, string + point, strlen (string + point), &ps); - if (tmp == (size_t)(0) || tmp == (size_t)(-1) || tmp == (size_t)(-2)) + if (MB_NULLWCH (tmp) || MB_INVALIDCH (tmp)) break; } } diff --git a/contrib/libreadline/misc.c b/contrib/libreadline/misc.c index ab1e1337fd3a..403313a04350 100644 --- a/contrib/libreadline/misc.c +++ b/contrib/libreadline/misc.c @@ -276,12 +276,6 @@ rl_maybe_save_line () _rl_saved_line_for_history->line = savestring (rl_line_buffer); _rl_saved_line_for_history->data = (char *)rl_undo_list; } - else if (STREQ (rl_line_buffer, _rl_saved_line_for_history->line) == 0) - { - free (_rl_saved_line_for_history->line); - _rl_saved_line_for_history->line = savestring (rl_line_buffer); - _rl_saved_line_for_history->data = (char *)rl_undo_list; /* XXX possible memleak */ - } return 0; } |
