efi_loader: remove redundant statement
authorHeinrich Schuchardt <xypron.glpk@gmx.de>
Thu, 20 Sep 2018 17:57:54 +0000 (19:57 +0200)
committerAlexander Graf <agraf@suse.de>
Sun, 23 Sep 2018 19:55:31 +0000 (21:55 +0200)
ascii2unicode() always ends the u16 string with '\0'.
Remove redundant assignment.

Add description for efi_str_to_u16() and ascii2unicode().

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Signed-off-by: Alexander Graf <agraf@suse.de>
include/efi_loader.h
lib/efi_loader/efi_device_path_to_text.c

index 2855c01681abc6b31704f458f6b4c7a3c0dfa467..5d522f133ecc625a2ac5639f712aeee7c1dd8a96 100644 (file)
@@ -411,7 +411,15 @@ efi_status_t efi_dp_split_file_path(struct efi_device_path *full_path,
        (((_dp)->type == DEVICE_PATH_TYPE_##_type) && \
         ((_dp)->sub_type == DEVICE_PATH_SUB_TYPE_##_subtype))
 
-/* Convert strings from normal C strings to uEFI strings */
+/**
+ * ascii2unicode() - convert ASCII string to UTF-16 string
+ *
+ * A zero terminated ASCII string is converted to a zero terminated UTF-16
+ * string. The output buffer must be preassigned.
+ *
+ * @unicode:   preassigned output buffer for UTF-16 string
+ * @ascii:     ASCII string to be converted
+ */
 static inline void ascii2unicode(u16 *unicode, const char *ascii)
 {
        while (*ascii)
index ca8037def2394714d9c13724ff1e61f44dc85a80..0082236359524e05a5b89da0dd30a80c56219250 100644 (file)
 const efi_guid_t efi_guid_device_path_to_text_protocol =
                EFI_DEVICE_PATH_TO_TEXT_PROTOCOL_GUID;
 
+/**
+ * efi_str_to_u16() - convert ASCII string to UTF-16
+ *
+ * A u16 buffer is allocated from pool. The ASCII string is copied to the u16
+ * buffer.
+ *
+ * @str:       ASCII string
+ * Return:     UTF-16 string. NULL if out of memory.
+ */
 static u16 *efi_str_to_u16(char *str)
 {
        efi_uintn_t len;
@@ -29,7 +38,6 @@ static u16 *efi_str_to_u16(char *str)
        if (ret != EFI_SUCCESS)
                return NULL;
        ascii2unicode(out, str);
-       out[len - 1] = 0;
        return out;
 }