grub2/0407-grub-core-gfxmenu-view.c-grub_gfxmenu_view_new-Clear.patch
Peter Jones f74b50e380 Rebase to upstream, fix a pile of bugs. The usual.
Signed-off-by: Peter Jones <pjones@redhat.com>
2013-06-12 15:37:08 -04:00

65 lines
2.0 KiB
Diff

From f11cb55e6d2efcccb2be34942622f18a40dd1218 Mon Sep 17 00:00:00 2001
From: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
Date: Fri, 3 May 2013 14:02:49 +0200
Subject: [PATCH 407/482] * grub-core/gfxmenu/view.c
(grub_gfxmenu_view_new): Clear grub_gfxmenu_timeout_notifications.
(grub_gfxmenu_view_destroy): Likewise.
---
ChangeLog | 6 ++++++
grub-core/gfxmenu/view.c | 15 +++++++++++++++
2 files changed, 21 insertions(+)
diff --git a/ChangeLog b/ChangeLog
index 9e99eb5..858f0b0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+ * grub-core/gfxmenu/view.c (grub_gfxmenu_view_new): Clear
+ grub_gfxmenu_timeout_notifications.
+ (grub_gfxmenu_view_destroy): Likewise.
+
+2013-05-03 Vladimir Serbinenko <phcoder@gmail.com>
+
* grub-core/normal/term.c (print_ucs4_real): Fix startwidth in dry run.
2013-05-02 Vladimir Serbinenko <phcoder@gmail.com>
diff --git a/grub-core/gfxmenu/view.c b/grub-core/gfxmenu/view.c
index 475fc76..bcf6399 100644
--- a/grub-core/gfxmenu/view.c
+++ b/grub-core/gfxmenu/view.c
@@ -58,6 +58,14 @@ grub_gfxmenu_view_new (const char *theme_path,
if (! view)
return 0;
+ while (grub_gfxmenu_timeout_notifications)
+ {
+ struct grub_gfxmenu_timeout_notify *p;
+ p = grub_gfxmenu_timeout_notifications;
+ grub_gfxmenu_timeout_notifications = grub_gfxmenu_timeout_notifications->next;
+ grub_free (p);
+ }
+
view->screen.x = 0;
view->screen.y = 0;
view->screen.width = width;
@@ -105,6 +113,13 @@ grub_gfxmenu_view_destroy (grub_gfxmenu_view_t view)
{
if (!view)
return;
+ while (grub_gfxmenu_timeout_notifications)
+ {
+ struct grub_gfxmenu_timeout_notify *p;
+ p = grub_gfxmenu_timeout_notifications;
+ grub_gfxmenu_timeout_notifications = grub_gfxmenu_timeout_notifications->next;
+ grub_free (p);
+ }
grub_video_bitmap_destroy (view->desktop_image);
if (view->terminal_box)
view->terminal_box->destroy (view->terminal_box);
--
1.8.2.1