752ceb1
From 207ad8688667666661a9546a8409d4e312e98341 Mon Sep 17 00:00:00 2001
78e1a10
From: Peter Jones <pjones@redhat.com>
78e1a10
Date: Thu, 30 Nov 2017 15:11:39 -0500
31cddd6
Subject: [PATCH] Add grub_debug_enabled()
78e1a10
78e1a10
---
78e1a10
 grub-core/kern/misc.c | 21 ++++++++++++++++-----
78e1a10
 include/grub/misc.h   |  1 +
78e1a10
 2 files changed, 17 insertions(+), 5 deletions(-)
78e1a10
78e1a10
diff --git a/grub-core/kern/misc.c b/grub-core/kern/misc.c
78e1a10
index 636f97e1ba1..e758ab3416d 100644
78e1a10
--- a/grub-core/kern/misc.c
78e1a10
+++ b/grub-core/kern/misc.c
78e1a10
@@ -159,17 +159,28 @@ int grub_err_printf (const char *fmt, ...)
78e1a10
 __attribute__ ((alias("grub_printf")));
78e1a10
 #endif
78e1a10
 
78e1a10
+int
78e1a10
+grub_debug_enabled (const char * condition)
78e1a10
+{
78e1a10
+  const char *debug;
78e1a10
+
78e1a10
+  debug = grub_env_get ("debug");
78e1a10
+  if (!debug)
78e1a10
+    return 0;
78e1a10
+
78e1a10
+  if (grub_strword (debug, "all") || grub_strword (debug, condition))
78e1a10
+    return 1;
78e1a10
+
78e1a10
+  return 0;
78e1a10
+}
78e1a10
+
78e1a10
 void
78e1a10
 grub_real_dprintf (const char *file, const int line, const char *condition,
78e1a10
 		   const char *fmt, ...)
78e1a10
 {
78e1a10
   va_list args;
78e1a10
-  const char *debug = grub_env_get ("debug");
78e1a10
 
78e1a10
-  if (! debug)
78e1a10
-    return;
78e1a10
-
78e1a10
-  if (grub_strword (debug, "all") || grub_strword (debug, condition))
78e1a10
+  if (grub_debug_enabled (condition))
78e1a10
     {
78e1a10
       grub_printf ("%s:%d: ", file, line);
78e1a10
       va_start (args, fmt);
78e1a10
diff --git a/include/grub/misc.h b/include/grub/misc.h
752ceb1
index cbfae75a1b4..f7473c154f0 100644
78e1a10
--- a/include/grub/misc.h
78e1a10
+++ b/include/grub/misc.h
78e1a10
@@ -367,6 +367,7 @@ grub_puts (const char *s)
78e1a10
 }
78e1a10
 
78e1a10
 int EXPORT_FUNC(grub_puts_) (const char *s);
78e1a10
+int EXPORT_FUNC(grub_debug_enabled) (const char *condition);
78e1a10
 void EXPORT_FUNC(grub_real_dprintf) (const char *file,
78e1a10
                                      const int line,
78e1a10
                                      const char *condition,