Would it be easier to change all call sites to use utf16_to_utf8_alloc? Le mar. 22 août 2023, 23:40, Vitaly Kuzmichev <vitaly.kuzmic...@rtsoft.de> a écrit :
> Transform get_utf8() function to use grub_utf16_to_utf8_alloc() > helper function to convert strings from UTF-16 to UTF-8. > > Signed-off-by: Vitaly Kuzmichev <vitaly.kuzmic...@rtsoft.de> > --- > grub-core/fs/ntfs.c | 18 +----------------- > 1 file changed, 1 insertion(+), 17 deletions(-) > > diff --git a/grub-core/fs/ntfs.c b/grub-core/fs/ntfs.c > index 1bee35e87..9258ea835 100644 > --- a/grub-core/fs/ntfs.c > +++ b/grub-core/fs/ntfs.c > @@ -552,23 +552,7 @@ free_file (struct grub_ntfs_file *mft) > static char * > get_utf8 (grub_uint8_t *in, grub_size_t len) > { > - grub_uint8_t *buf; > - grub_uint16_t *tmp; > - grub_size_t i; > - > - buf = grub_calloc (len, GRUB_MAX_UTF8_PER_UTF16 + 1); > - tmp = grub_calloc (len, sizeof (tmp[0])); > - if (!buf || !tmp) > - { > - grub_free (buf); > - grub_free (tmp); > - return NULL; > - } > - for (i = 0; i < len; i++) > - tmp[i] = grub_le_to_cpu16 (grub_get_unaligned16 (in + 2 * i)); > - *grub_utf16_to_utf8 (buf, tmp, len, UTF16_CPU) = '\0'; > - grub_free (tmp); > - return (char *) buf; > + return (char *) grub_utf16_to_utf8_alloc (in, len, UTF16_LE); > } > > static int > -- > 2.34.1 > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > https://lists.gnu.org/mailman/listinfo/grub-devel >
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel