* grub-core/normal/menu_entry.c (complete): Make sure that width is >0.

This commit is contained in:
Vladimir Serbinenko 2013-10-26 00:07:59 +02:00
parent a28567364a
commit 5f4028d4a5
2 changed files with 10 additions and 4 deletions

View file

@ -1,3 +1,7 @@
2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/normal/menu_entry.c (complete): Make sure that width is >0.
2013-10-25 Vladimir Serbinenko <phcoder@gmail.com>
Make char and string width grub_size_t rather than grub_ssize_t.

View file

@ -1029,10 +1029,12 @@ complete (struct screen *screen, int continuous, int update)
if (restore)
for (i = 0; i < screen->nterms; i++)
{
int width = grub_term_width (screen->terms[i].term) - 2;
unsigned width = grub_term_width (screen->terms[i].term);
if (width > 2)
width -= 2;
if (width > 15)
width -= 6;
int num_sections = ((completion_buffer.len
unsigned num_sections = ((completion_buffer.len
+ width - 1)
/ width);
grub_uint32_t *endp;