diff mbox series

[edk2,2/6] BaseTools/CommonLib: use explicit 64-bit type in Strtoi()

Message ID 20181129123129.25095-3-ard.biesheuvel@linaro.org
State Superseded
Headers show
Series BaseTools: get rid of MAX_UINTN | expand

Commit Message

Ard Biesheuvel Nov. 29, 2018, 12:31 p.m. UTC
Don't use the native word size string to number parsing routines,
but instead, use the 64-bit one and cast to UINTN.

Currently, the only user is in Source/C/DevicePath/DevicePathFromText.c
which takes care to use Strtoi64 () unless it assumes the value fits
in 32-bit, so this change is a no-op even on 32-bit build hosts.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

---
 BaseTools/Source/C/Common/CommonLib.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

-- 
2.19.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Comments

Carsey, Jaben Nov. 29, 2018, 3:17 p.m. UTC | #1
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>


> -----Original Message-----

> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of

> Ard Biesheuvel

> Sent: Thursday, November 29, 2018 4:31 AM

> To: edk2-devel@lists.01.org

> Cc: Laszlo Ersek <lersek@redhat.com>; Gao, Liming <liming.gao@intel.com>

> Subject: [edk2] [PATCH 2/6] BaseTools/CommonLib: use explicit 64-bit type

> in Strtoi()

> 

> Don't use the native word size string to number parsing routines,

> but instead, use the 64-bit one and cast to UINTN.

> 

> Currently, the only user is in Source/C/DevicePath/DevicePathFromText.c

> which takes care to use Strtoi64 () unless it assumes the value fits

> in 32-bit, so this change is a no-op even on 32-bit build hosts.

> 

> Contributed-under: TianoCore Contribution Agreement 1.1

> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

> ---

>  BaseTools/Source/C/Common/CommonLib.c | 4 ++--

>  1 file changed, 2 insertions(+), 2 deletions(-)

> 

> diff --git a/BaseTools/Source/C/Common/CommonLib.c

> b/BaseTools/Source/C/Common/CommonLib.c

> index bea6af0a45b1..c5e32b1292e0 100644

> --- a/BaseTools/Source/C/Common/CommonLib.c

> +++ b/BaseTools/Source/C/Common/CommonLib.c

> @@ -2252,9 +2252,9 @@ Strtoi (

>    )

>  {

>    if (IsHexStr (Str)) {

> -    return StrHexToUintn (Str);

> +    return (UINTN)StrHexToUint64 (Str);

>    } else {

> -    return StrDecimalToUintn (Str);

> +    return (UINTN)StrDecimalToUint64 (Str);

>    }

>  }

> 

> --

> 2.19.1

> 

> _______________________________________________

> edk2-devel mailing list

> edk2-devel@lists.01.org

> https://lists.01.org/mailman/listinfo/edk2-devel

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
diff mbox series

Patch

diff --git a/BaseTools/Source/C/Common/CommonLib.c b/BaseTools/Source/C/Common/CommonLib.c
index bea6af0a45b1..c5e32b1292e0 100644
--- a/BaseTools/Source/C/Common/CommonLib.c
+++ b/BaseTools/Source/C/Common/CommonLib.c
@@ -2252,9 +2252,9 @@  Strtoi (
   )
 {
   if (IsHexStr (Str)) {
-    return StrHexToUintn (Str);
+    return (UINTN)StrHexToUint64 (Str);
   } else {
-    return StrDecimalToUintn (Str);
+    return (UINTN)StrDecimalToUint64 (Str);
   }
 }