Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu <hao.a...@intel.com> Reviewed-by: Liming Gao <liming....@intel.com> --- MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c b/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c index d58f069..2ad0463 100644 --- a/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c +++ b/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c @@ -2596,7 +2596,7 @@ DevPathFromTextUsbWwid ( UsbWwid->VendorId = (UINT16) Strtoi (VIDStr); UsbWwid->ProductId = (UINT16) Strtoi (PIDStr); UsbWwid->InterfaceNumber = (UINT16) Strtoi (InterfaceNumStr); - StrnCpy ((CHAR16 *) ((UINT8 *) UsbWwid + sizeof (USB_WWID_DEVICE_PATH)), SerialNumberStr, SerialNumberStrLen); + CopyMem ((CHAR16 *) ((UINT8 *) UsbWwid + sizeof (USB_WWID_DEVICE_PATH)), SerialNumberStr, SerialNumberStrLen); return (EFI_DEVICE_PATH_PROTOCOL *) UsbWwid; } @@ -2759,8 +2759,18 @@ DevPathFromTextBluetooth ( if (TempNumBuffer == NULL) { break; } - StrnCpy (TempNumBuffer, L"0x", TempBufferSize / sizeof (CHAR16)); - StrnCat (TempNumBuffer + StrLen (L"0x"), Walker, TempBufferSize / sizeof (CHAR16) - StrLen (L"0x") ); + StrnCpyS ( + TempNumBuffer, + TempBufferSize / sizeof (CHAR16), + L"0x", + TempBufferSize / sizeof (CHAR16) - 1 + ); + StrnCatS ( + TempNumBuffer + StrLen (L"0x"), + TempBufferSize / sizeof (CHAR16) - StrLen (L"0x"), + Walker, + TempBufferSize / sizeof (CHAR16) - StrLen (L"0x") - 1 + ); BluetoothDp->BD_ADDR.Address[Index] = (UINT8)Strtoi (TempNumBuffer); FreePool (TempNumBuffer); Index--; @@ -2982,7 +2992,7 @@ DevPathFromTextFilePath ( (UINT16) (sizeof (FILEPATH_DEVICE_PATH) + StrLen (TextDeviceNode) * 2) ); - StrCpy (File->PathName, TextDeviceNode); + StrCpyS (File->PathName, StrLen (TextDeviceNode) + 1, TextDeviceNode); return (EFI_DEVICE_PATH_PROTOCOL *) File; } -- 1.9.5.msysgit.0 ------------------------------------------------------------------------------ _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel