Package = NULL;\r
Index = 0;\r
Offset = sizeof (EFI_HII_PACKAGE_LIST_HEADER);\r
- CopyMem (&PackageListLength, &HiiPackageList->PackageLength, sizeof (UINT32));\r
+ PackageListLength = ReadUnaligned32 (&HiiPackageList->PackageLength);\r
while (Offset < PackageListLength) {\r
Package = (EFI_HII_PACKAGE_HEADER *) (((UINT8 *) HiiPackageList) + Offset);\r
CopyMem (&PackageHeader, Package, sizeof (EFI_HII_PACKAGE_HEADER));\r
}\r
\r
ExtendOpCode = ((EFI_IFR_GUID_LABEL *) IfrOpHdr)->ExtendOpCode;\r
- CopyMem (&LabelNumber, &((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Number, sizeof (UINT16));\r
+ LabelNumber = ReadUnaligned16 (&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Number);\r
if ((ExtendOpCode != EFI_IFR_EXTEND_OP_LABEL) || (LabelNumber != Label) \r
|| !CompareGuid ((EFI_GUID *)(UINTN)(&((EFI_IFR_GUID_LABEL *)IfrOpHdr)->Guid), &mIfrVendorGuid)) {\r
//\r
// Update package list length\r
//\r
BufferSize = UpdateBufferPos - (UINT8 *) UpdateBuffer;\r
- CopyMem (&UpdateBuffer->PackageLength, &BufferSize, sizeof (UINT32));\r
+ WriteUnaligned32 (&UpdateBuffer->PackageLength, (UINT32)BufferSize);\r
\r
FreePool (HiiPackageList);\r
\r
VA_START (Args, Number);\r
for (Index = 0; Index < Number; Index++) {\r
BufCfgArray = (UINT8 *) VA_ARG (Args, VOID *);\r
- CopyMem (&TotalLen, BufCfgArray, sizeof (UINT32));\r
+ TotalLen = ReadUnaligned32 ((UINT32 *)BufCfgArray);\r
BufferPos = BufCfgArray + sizeof (UINT32);\r
\r
while ((UINT32)(BufferPos - BufCfgArray) < TotalLen) {\r
- CopyMem (&Offset, BufferPos, sizeof (UINT16));\r
+ Offset = ReadUnaligned16 ((UINT16 *)BufferPos);\r
BufferPos += sizeof (UINT16);\r
- CopyMem (&Width, BufferPos, sizeof (UINT16));\r
+ Width = ReadUnaligned16 ((UINT16 *)BufferPos);\r
BufferPos += sizeof (UINT16);\r
Value = BufferPos;\r
BufferPos += Width;\r