This reverts commit f82dbf2bd871e9cce327b511a393ffa543d7f69e.

Signed-off-by: Oliver Steffen <ostef...@redhat.com>
---
 grub-core/kern/misc.c | 81 +++++++++++--------------------------------
 1 file changed, 21 insertions(+), 60 deletions(-)

diff --git a/grub-core/kern/misc.c b/grub-core/kern/misc.c
index b57249acb..0854fefc0 100644
--- a/grub-core/kern/misc.c
+++ b/grub-core/kern/misc.c
@@ -24,7 +24,6 @@
 #include <grub/term.h>
 #include <grub/env.h>
 #include <grub/i18n.h>
-#include <grub/types.h>
 #include <grub/charset.h>
 
 union printf_arg
@@ -36,8 +35,7 @@ union printf_arg
     {
       INT, LONG, LONGLONG,
       UNSIGNED_INT = 3, UNSIGNED_LONG, UNSIGNED_LONGLONG,
-      STRING,
-      GUID
+      STRING
     } type;
   long long ll;
 };
@@ -781,9 +779,6 @@ parse_printf_arg_fmt (const char *fmt0, struct printf_args 
*args,
       switch (c)
        {
        case 'p':
-         if (*(fmt) == 'G')
-           ++fmt;
-         /* Fall through. */
        case 'x':
        case 'X':
        case 'u':
@@ -899,10 +894,6 @@ parse_printf_arg_fmt (const char *fmt0, struct printf_args 
*args,
            args->ptr[curn].type = UNSIGNED_LONGLONG;
          else
            args->ptr[curn].type = UNSIGNED_INT;
-         if (*(fmt) == 'G') {
-           args->ptr[curn].type = GUID;
-           ++fmt;
-         }
          break;
        case 's':
          args->ptr[curn].type = STRING;
@@ -944,7 +935,6 @@ parse_printf_args (const char *fmt0, struct printf_args 
*args, va_list args_in)
        args->ptr[n].ll = va_arg (args_in, long long);
        break;
       case STRING:
-      case GUID:
        if (sizeof (void *) == sizeof (long long))
          args->ptr[n].ll = va_arg (args_in, long long);
        else
@@ -962,27 +952,6 @@ write_char (char *str, grub_size_t *count, grub_size_t 
max_len, unsigned char ch
   (*count)++;
 }
 
-static void
-write_number (char *str, grub_size_t *count, grub_size_t max_len, grub_size_t 
format1,
-            char rightfill, char zerofill, char c, long long value)
-{
-  char tmp[32];
-  const char *p = tmp;
-  grub_size_t len;
-  grub_size_t fill;
-
-  len = grub_lltoa (tmp, c, value) - tmp;
-  fill = len < format1 ? format1 - len : 0;
-  if (! rightfill)
-    while (fill--)
-      write_char (str, count, max_len, zerofill);
-  while (*p)
-    write_char (str, count, max_len, *p++);
-  if (rightfill)
-    while (fill--)
-      write_char (str, count, max_len, zerofill);
-}
-
 static int
 grub_vsnprintf_real (char *str, grub_size_t max_len, const char *fmt0,
                     struct printf_args *args)
@@ -1065,40 +1034,32 @@ grub_vsnprintf_real (char *str, grub_size_t max_len, 
const char *fmt0,
       switch (c)
        {
        case 'p':
-         if (*(fmt) == 'G')
-           {
-             ++fmt;
-             grub_guid_t *guid = (grub_guid_t *)(grub_addr_t) curarg;
-             write_number (str, &count, max_len, 8, 0, '0', 'x', guid->data1);
-             write_char (str, &count, max_len, '-');
-             write_number (str, &count, max_len, 4, 0, '0', 'x', guid->data2);
-             write_char (str, &count, max_len, '-');
-             write_number (str, &count, max_len, 4, 0, '0', 'x', guid->data3);
-             write_char (str, &count, max_len, '-');
-             write_number (str, &count, max_len, 2, 0, '0', 'x', 
guid->data4[0]);
-             write_number (str, &count, max_len, 2, 0, '0', 'x', 
guid->data4[1]);
-             write_char (str, &count, max_len, '-');
-             write_number (str, &count, max_len, 2, 0, '0', 'x', 
guid->data4[2]);
-             write_number (str, &count, max_len, 2, 0, '0', 'x', 
guid->data4[3]);
-             write_number (str, &count, max_len, 2, 0, '0', 'x', 
guid->data4[4]);
-             write_number (str, &count, max_len, 2, 0, '0', 'x', 
guid->data4[5]);
-             write_number (str, &count, max_len, 2, 0, '0', 'x', 
guid->data4[6]);
-             write_number (str, &count, max_len, 2, 0, '0', 'x', 
guid->data4[7]);
-             break;
-           }
-         else
-           {
-             write_char (str, &count, max_len, '0');
-             write_char (str, &count, max_len, 'x');
-             c = 'x';
-           }
+         write_char (str, &count, max_len, '0');
+         write_char (str, &count, max_len, 'x');
+         c = 'x';
          /* Fall through. */
        case 'x':
        case 'X':
        case 'u':
        case 'd':
        case 'o':
-         write_number (str, &count, max_len, format1, rightfill, zerofill, c, 
curarg);
+         {
+           char tmp[32];
+           const char *p = tmp;
+           grub_size_t len;
+           grub_size_t fill;
+
+           len = grub_lltoa (tmp, c, curarg) - tmp;
+           fill = len < format1 ? format1 - len : 0;
+           if (! rightfill)
+             while (fill--)
+               write_char (str, &count, max_len, zerofill);
+           while (*p)
+             write_char (str, &count, max_len, *p++);
+           if (rightfill)
+             while (fill--)
+               write_char (str, &count, max_len, zerofill);
+         }
          break;
 
        case 'c':
-- 
2.41.0


_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to