summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c9
-rw-r--r--MdePkg/Library/UefiDevicePathLib/DevicePathToText.c2
2 files changed, 6 insertions, 5 deletions
diff --git a/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c b/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c
index b8966854b2..e5f6a1f062 100644
--- a/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c
+++ b/MdePkg/Library/UefiDevicePathLib/DevicePathFromText.c
@@ -2795,17 +2795,18 @@ DevPathFromTextBluetooth (
);
Index = sizeof (BLUETOOTH_ADDRESS) - 1;
- while (!IS_NULL(BluetoothStr) && Index >= 0) {
- Walker = SplitStr (&BluetoothStr, L':');
- TempBufferSize = StrSize (Walker) + StrLen (L"0x") * sizeof (CHAR16);
+ Walker = BluetoothStr;
+ while (!IS_NULL(*Walker) && Index >= 0) {
+ TempBufferSize = 2 * sizeof(CHAR16) + StrSize(L"0x");
TempNumBuffer = AllocateZeroPool (TempBufferSize);
if (TempNumBuffer == NULL) {
break;
}
StrCpyS (TempNumBuffer, TempBufferSize / sizeof (CHAR16), L"0x");
- StrCatS (TempNumBuffer, TempBufferSize / sizeof (CHAR16), Walker);
+ StrnCatS (TempNumBuffer, TempBufferSize / sizeof (CHAR16), Walker, 2);
BluetoothDp->BD_ADDR.Address[Index] = (UINT8)Strtoi (TempNumBuffer);
FreePool (TempNumBuffer);
+ Walker += 2;
Index--;
}
diff --git a/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c b/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c
index be4619ab85..627308c340 100644
--- a/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c
+++ b/MdePkg/Library/UefiDevicePathLib/DevicePathToText.c
@@ -1584,7 +1584,7 @@ DevPathToTextBluetooth (
Bluetooth = DevPath;
UefiDevicePathLibCatPrint (
Str,
- L"Bluetooth(%02x:%02x:%02x:%02x:%02x:%02x)",
+ L"Bluetooth(%02x%02x%02x%02x%02x%02x)",
Bluetooth->BD_ADDR.Address[5],
Bluetooth->BD_ADDR.Address[4],
Bluetooth->BD_ADDR.Address[3],