[PATCH 1/4] efi_loader: simplify show_efi_boot_opt_data()
Heinrich Schuchardt
xypron.glpk at gmx.de
Mon May 24 11:56:53 CEST 2021
To print a UTF-16 string use %ls instead of converting string to UTF-8.
Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
---
cmd/efidebug.c | 13 +------------
1 file changed, 1 insertion(+), 12 deletions(-)
diff --git a/cmd/efidebug.c b/cmd/efidebug.c
index 0bf7b8856c..9444eca49c 100644
--- a/cmd/efidebug.c
+++ b/cmd/efidebug.c
@@ -1147,8 +1147,6 @@ static void show_efi_boot_opt_data(u16 *varname16, void *data, size_t *size)
{
struct efi_device_path *initrd_path = NULL;
struct efi_load_option lo;
- char *label, *p;
- size_t label_len16, label_len;
u16 *dp_str;
efi_status_t ret;
efi_uintn_t initrd_dp_size;
@@ -1160,14 +1158,6 @@ static void show_efi_boot_opt_data(u16 *varname16, void *data, size_t *size)
return;
}
- label_len16 = u16_strlen(lo.label);
- label_len = utf16_utf8_strnlen(lo.label, label_len16);
- label = malloc(label_len + 1);
- if (!label)
- return;
- p = label;
- utf16_utf8_strncpy(&p, lo.label, label_len16);
-
printf("%ls:\nattributes: %c%c%c (0x%08x)\n",
varname16,
/* ACTIVE */
@@ -1177,7 +1167,7 @@ static void show_efi_boot_opt_data(u16 *varname16, void *data, size_t *size)
/* HIDDEN */
lo.attributes & LOAD_OPTION_HIDDEN ? 'H' : '-',
lo.attributes);
- printf(" label: %s\n", label);
+ printf(" label: %ls\n", lo.label);
dp_str = efi_dp_str(lo.file_path);
printf(" file_path: %ls\n", dp_str);
@@ -1194,7 +1184,6 @@ static void show_efi_boot_opt_data(u16 *varname16, void *data, size_t *size)
printf(" data:\n");
print_hex_dump(" ", DUMP_PREFIX_OFFSET, 16, 1,
lo.optional_data, *size, true);
- free(label);
}
/**
--
2.30.2
More information about the U-Boot
mailing list