From fe7c9a1f83c0583d6287e2e3fe6995407465f479 Mon Sep 17 00:00:00 2001 From: Ralf Corsepius Date: Tue, 1 Feb 2011 05:43:21 +0000 Subject: 2011-02-01 Ralf Corsepius * libmisc/stringto/stringtoint.c: Reformat range check. Add check for result==0. --- cpukit/ChangeLog | 2 ++ cpukit/libmisc/stringto/stringtoint.c | 8 +++----- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'cpukit') diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog index 8aec3a32f5..3a5dc3435c 100644 --- a/cpukit/ChangeLog +++ b/cpukit/ChangeLog @@ -1,5 +1,7 @@ 2011-02-01 Ralf Corsepius + * libmisc/stringto/stringtoint.c: Reformat range check. + Add check for result==0. * libmisc/stringto/stringtofloat.c: Reformat range check. Add check for result = -HUGE_VALF. * libmisc/stringto/stringtodouble.c: Reformat range check. diff --git a/cpukit/libmisc/stringto/stringtoint.c b/cpukit/libmisc/stringto/stringtoint.c index 41cf3c288a..8e3663b496 100644 --- a/cpukit/libmisc/stringto/stringtoint.c +++ b/cpukit/libmisc/stringto/stringtoint.c @@ -49,11 +49,9 @@ rtems_status_code rtems_string_to_int ( if ( end == s ) return RTEMS_NOT_DEFINED; - if ( (result == LONG_MAX) && (errno == ERANGE) ) - return RTEMS_INVALID_NUMBER; - - if ( (result == LONG_MIN) && (errno == ERANGE) ) - return RTEMS_INVALID_NUMBER; + if ( ( errno == ERANGE ) && + (( result == 0 ) || ( result == LONG_MAX ) || ( result == LONG_MIN ))) + return RTEMS_INVALID_NUMBER; #if (INT_MAX < LONG_MAX) if ( result > INT_MAX ) { -- cgit v1.2.3