Savannah bug 23751: Segfault when viewing help using Japanese locale

Fix break_line crashing when using certain locales from Mitsuya Shibata



git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@4272 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
master
Chris Allegretta 2008-07-12 01:54:49 +00:00
parent 07fcc4c973
commit 09b8124859
2 changed files with 12 additions and 0 deletions

View File

@ -1,3 +1,6 @@
2008-07-11 Mitsuya Shibata <mty.shibata@gmail.com>
* text.c: Fix crashing in help menu when using certain locales
2008-07-09 Chris Allegretta <chrisa@asty.org> 2008-07-09 Chris Allegretta <chrisa@asty.org>
* nano.c/nano.h/global.c/text.c: New generalized undo code, currently * nano.c/nano.h/global.c/text.c: New generalized undo code, currently
just works for adding and deleting text and splitting and unsplitting lines. just works for adding and deleting text and splitting and unsplitting lines.

View File

@ -1127,6 +1127,15 @@ ssize_t break_line(const char *line, ssize_t goal
/* In fact, the whole line displays shorter than goal. */ /* In fact, the whole line displays shorter than goal. */
return cur_loc; return cur_loc;
#ifndef DISABLE_HELP
if (newln && blank_loc <= 0) {
/* If blank was not found or was found only first character,
* force line break. */
cur_loc -= line_len;
return cur_loc;
}
#endif
if (blank_loc == -1) { if (blank_loc == -1) {
/* No blank was found that was short enough. */ /* No blank was found that was short enough. */
bool found_blank = FALSE; bool found_blank = FALSE;