- nano.c:help_init() - Fix crashing in do_help when COLS < 23 (David Benbennick)
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@1441 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
Этот коммит содержится в:
родитель
2ddd75e705
Коммит
3a78406d56
@ -13,6 +13,8 @@ CVS code
|
||||
main()
|
||||
- Fix nano not compiling with ENABLE_RCFILE and DISABLE_TABCOMP
|
||||
(David Benbennick).
|
||||
help_init()
|
||||
- Fix crashing in do_help when COLS < 23 (David Benbennick).
|
||||
- rcfile.c:
|
||||
colortoint()
|
||||
- Don't bomb after invalid color and print bad color name
|
||||
|
13
nano.c
13
nano.c
@ -389,9 +389,12 @@ void help_init(void)
|
||||
/* If we're on the main list, we also count the toggle help text.
|
||||
* Each line has "M-%c\t\t\t", which fills 24 columns, plus at most
|
||||
* COLS - 24 characters, plus '\n'.*/
|
||||
if (currshortcut == main_list)
|
||||
if (currshortcut == main_list) {
|
||||
size_t endislen = strlen(_("enable/disable"));
|
||||
|
||||
for (t = toggles; t != NULL; t = t->next)
|
||||
allocsize += COLS - 17;
|
||||
allocsize += 8 + strlen(t->desc) + endislen;
|
||||
}
|
||||
#endif /* !NANO_SMALL */
|
||||
|
||||
/* help_text has been freed and set to NULL unless the user resized
|
||||
@ -448,16 +451,16 @@ void help_init(void)
|
||||
*(ptr++) = '\t';
|
||||
|
||||
assert(s->help != NULL);
|
||||
ptr += sprintf(ptr, "%.*s\n", COLS - 24, s->help);
|
||||
ptr += sprintf(ptr, "%.*s\n", COLS > 24 ? COLS - 24 : 0, s->help);
|
||||
}
|
||||
|
||||
#ifndef NANO_SMALL
|
||||
/* And the toggles... */
|
||||
if (currshortcut == main_list)
|
||||
for (t = toggles; t != NULL; t = t->next) {
|
||||
ptr += sprintf(ptr, "M-%c\t\t\t", t->val - 32);
|
||||
assert(t->desc != NULL);
|
||||
ptr += sprintf(ptr, _("%.*s enable/disable\n"), COLS - 24, t->desc);
|
||||
ptr += sprintf(ptr, "M-%c\t\t\t%s %s\n", t->val - 32, t->desc,
|
||||
_("enable/disable"));
|
||||
}
|
||||
#endif /* !NANO_SMALL */
|
||||
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user