diff options
author | Thomas Frauendorfer | Miray Software <tf@miray.de> | 2021-02-15 13:40:16 +0100 |
---|---|---|
committer | Daniel Kiper <daniel.kiper@oracle.com> | 2021-03-02 15:54:19 +0100 |
commit | 7f11bde3143b21b40d8225ea1d641e0f83b5a01e (patch) | |
tree | 080e6c49ec334fb4756c8edd9e7a0f1102ac4b20 | |
parent | 968de8c23c1cba0f18230f778ebcf6c412ec8ec5 (diff) | |
download | grub-7f11bde3143b21b40d8225ea1d641e0f83b5a01e.tar.gz |
kern/misc: Split parse_printf_args() into format parsing and va_list handling
This patch is preparing for a follow up patch which will use
the format parsing part to compare the arguments in a printf()
format from an external source against a printf() format with
expected arguments.
Signed-off-by: Thomas Frauendorfer | Miray Software <tf@miray.de>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
-rw-r--r-- | grub-core/kern/misc.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/grub-core/kern/misc.c b/grub-core/kern/misc.c index 430e72340..c58857ca2 100644 --- a/grub-core/kern/misc.c +++ b/grub-core/kern/misc.c @@ -645,8 +645,7 @@ grub_lltoa (char *str, int c, unsigned long long n) } static void -parse_printf_args (const char *fmt0, struct printf_args *args, - va_list args_in) +parse_printf_arg_fmt (const char *fmt0, struct printf_args *args) { const char *fmt; char c; @@ -804,6 +803,14 @@ parse_printf_args (const char *fmt0, struct printf_args *args, break; } } +} + +static void +parse_printf_args (const char *fmt0, struct printf_args *args, va_list args_in) +{ + grub_size_t n; + + parse_printf_arg_fmt (fmt0, args); for (n = 0; n < args->count; n++) switch (args->ptr[n].type) |