]> git.ipfire.org Git - thirdparty/grub.git/commit
kern/misc, kern/efi: Extract UTF-8 to UTF-16 code
authorOliver Steffen <osteffen@redhat.com>
Fri, 26 May 2023 11:35:47 +0000 (13:35 +0200)
committerDaniel Kiper <daniel.kiper@oracle.com>
Thu, 1 Jun 2023 09:45:00 +0000 (11:45 +0200)
commita0b16564ee2e8eb7f597926bf60c4de2d696cd66
treed17a8247f74a4329bd5a7a2b407144c8e7d7150d
parent389d3dc835a37c42184d2fab978ccd902a2399f7
kern/misc, kern/efi: Extract UTF-8 to UTF-16 code

Create a new function for UTF-8 to UTF-16 conversion called
grub_utf8_to_utf16_alloc() in the grub-code/kern/misc.c and replace
charset conversion code used in some places in the EFI code. It is
modeled after the grub_utf8_to_ucs4_alloc() like functions in
include/grub/charset.h. It can't live in include/grub/charset.h,
because it needs to be reachable from the kern/efi code.

Add a check for integer overflow and remove redundant NUL-termination.

Signed-off-by: Oliver Steffen <osteffen@redhat.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
grub-core/kern/efi/efi.c
grub-core/kern/misc.c
include/grub/misc.h