From 3078fa74aa2d1350f0a71480d2d772d711adf519 Mon Sep 17 00:00:00 2001 From: Thomas Frauendorfer | Miray Software Date: Wed, 11 Sep 2019 11:16:03 +0200 Subject: [PATCH] Only call ver->close if it is set in verifier The 'fail:' branch in Verifiers unconditionally calls ver->close but some verifiers like shim_lock have no close method set. If verification with such a verifier fails then grub will hang --- grub-core/commands/verifiers.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) mode change 100644 => 100755 grub-core/commands/verifiers.c diff --git a/grub-core/commands/verifiers.c b/grub-core/commands/verifiers.c old mode 100644 new mode 100755 index 0dde481..7b9297c --- a/grub-core/commands/verifiers.c +++ b/grub-core/commands/verifiers.c @@ -196,7 +196,8 @@ grub_verifiers_open (grub_file_t io, enum grub_file_type type) return ret; fail: - ver->close (context); + if (ver->close) + ver->close (context); fail_noclose: verified_free (verified); grub_free (ret); -- 1.9.1