/*++ @file\r
\r
-Copyright (c) 2006 - 2009, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>\r
Portions copyright (c) 2011, Apple Inc. All rights reserved.\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
break;\r
}\r
\r
- NumOfLba = VA_ARG (args, UINT32);\r
+ NumOfLba = VA_ARG (args, UINTN);\r
\r
//\r
// Check input parameters\r
//\r
- if (NumOfLba == 0) {\r
+ if (NumOfLba == 0 || (StartingLba + NumOfLba) > NumOfBlocks) {\r
VA_END (args);\r
return EFI_INVALID_PARAMETER;\r
}\r
-\r
- if ((StartingLba + NumOfLba) > NumOfBlocks) {\r
- return EFI_INVALID_PARAMETER;\r
- }\r
} while (1);\r
\r
VA_END (args);\r
break;\r
}\r
\r
- NumOfLba = VA_ARG (args, UINT32);\r
+ NumOfLba = VA_ARG (args, UINTN);\r
\r
while (NumOfLba > 0) {\r
Status = FvbEraseBlock (FvbDevice->Instance, StartingLba, mFvbModuleGlobal, EfiGoneVirtual ());\r