]>
Commit | Line | Data |
---|---|---|
24acfa14 MT |
1 | BASH PATCH REPORT |
2 | ================= | |
3 | ||
4 | Bash-Release: 3.2 | |
5 | Patch-ID: bash32-049 | |
6 | ||
7 | Bug-Reported-by: Len Lattanzi <llattanzi@apple.com> | |
8 | Bug-Reference-ID: <52B1297F-6675-45CC-B63E-24745337D006@apple.com> | |
9 | Bug-Reference-URL: | |
10 | ||
11 | Bug-Description: | |
12 | ||
13 | On systems where mbrtowc() returns -2 when passed a length argument with | |
14 | value 0, when using a multibyte locale, Readline's emacs-mode forward-char | |
15 | at the end of a line will leave the point beyond the end of the line. | |
16 | ||
17 | Patch: | |
18 | ||
19 | *** ../bash-3.2-patched/lib/readline/mbutil.c 2009-05-29 23:09:26.000000000 -0400 | |
20 | --- lib/readline/mbutil.c 2009-05-29 23:10:12.000000000 -0400 | |
21 | *************** | |
22 | *** 78,82 **** | |
23 | int seed, count, find_non_zero; | |
24 | { | |
25 | ! size_t tmp; | |
26 | mbstate_t ps; | |
27 | int point; | |
28 | --- 78,82 ---- | |
29 | int seed, count, find_non_zero; | |
30 | { | |
31 | ! size_t tmp, len; | |
32 | mbstate_t ps; | |
33 | int point; | |
34 | *************** | |
35 | *** 99,103 **** | |
36 | while (count > 0) | |
37 | { | |
38 | ! tmp = mbrtowc (&wc, string+point, strlen(string + point), &ps); | |
39 | if (MB_INVALIDCH ((size_t)tmp)) | |
40 | { | |
41 | --- 99,106 ---- | |
42 | while (count > 0) | |
43 | { | |
44 | ! len = strlen (string + point); | |
45 | ! if (len == 0) | |
46 | ! break; | |
47 | ! tmp = mbrtowc (&wc, string+point, len, &ps); | |
48 | if (MB_INVALIDCH ((size_t)tmp)) | |
49 | { | |
50 | *** ../bash-3.2/patchlevel.h Thu Apr 13 08:31:04 2006 | |
51 | --- patchlevel.h Mon Oct 16 14:22:54 2006 | |
52 | *************** | |
53 | *** 26,30 **** | |
54 | looks for to find the patch level (for the sccs version string). */ | |
55 | ||
56 | ! #define PATCHLEVEL 48 | |
57 | ||
58 | #endif /* _PATCHLEVEL_H_ */ | |
59 | --- 26,30 ---- | |
60 | looks for to find the patch level (for the sccs version string). */ | |
61 | ||
62 | ! #define PATCHLEVEL 49 | |
63 | ||
64 | #endif /* _PATCHLEVEL_H_ */ |