Fix several memory leaks.
This commit is contained in:
parent
c686014c1b
commit
03f7c8c304
13 changed files with 72 additions and 14 deletions
|
@ -70,6 +70,8 @@ grub_font_draw_string (const char *str, grub_font_t font,
|
|||
return err;
|
||||
}
|
||||
|
||||
for (ptr = visual; ptr < visual + visual_len; ptr++)
|
||||
grub_free (ptr->combining);
|
||||
grub_free (visual);
|
||||
|
||||
return GRUB_ERR_NONE;
|
||||
|
|
|
@ -85,7 +85,7 @@ grub_gfxmenu_try (int entry, grub_menu_t menu, int nested)
|
|||
|| cached_view->screen.width != mode_info.width
|
||||
|| cached_view->screen.height != mode_info.height)
|
||||
{
|
||||
grub_free (cached_view);
|
||||
grub_gfxmenu_view_destroy (cached_view);
|
||||
/* Create the view. */
|
||||
cached_view = grub_gfxmenu_view_new (full_theme_path ? : theme_path,
|
||||
mode_info.width,
|
||||
|
|
|
@ -83,7 +83,10 @@ list_destroy (void *vself)
|
|||
self->selected_item_box->destroy (self->selected_item_box);
|
||||
if (self->icon_manager)
|
||||
grub_gfxmenu_icon_manager_destroy (self->icon_manager);
|
||||
|
||||
if (self->scrollbar_thumb)
|
||||
self->scrollbar_thumb->destroy (self->scrollbar_thumb);
|
||||
if (self->scrollbar_frame)
|
||||
self->scrollbar_frame->destroy (self->scrollbar_frame);
|
||||
grub_free (self);
|
||||
}
|
||||
|
||||
|
|
|
@ -185,6 +185,7 @@ draw_text (grub_gui_progress_bar_t self)
|
|||
int y = ((height - grub_font_get_descent (font)) / 2
|
||||
+ grub_font_get_ascent (font) / 2);
|
||||
grub_font_draw_string (text, font, text_color, x, y);
|
||||
grub_free (text);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue