[gparted] Improve logic for libparted minimum version check
- From: Curtis Gedak <gedakc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gparted] Improve logic for libparted minimum version check
- Date: Sat, 27 Feb 2010 23:31:15 +0000 (UTC)
commit c4e58e037ce175809398a7f1084f7b2bb8d9041a
Author: Curtis Gedak <gedakc gmail com>
Date: Sat Feb 27 16:28:34 2010 -0700
Improve logic for libparted minimum version check
configure.in | 38 ++++++++++++++++++--------------------
1 files changed, 18 insertions(+), 20 deletions(-)
---
diff --git a/configure.in b/configure.in
index 5086853..1f78e01 100644
--- a/configure.in
+++ b/configure.in
@@ -51,30 +51,28 @@ AC_TRY_RUN(
int main ()
{
- int min_major ;
- int min_minor ;
- int min_micro ;
- int major ;
- int minor ;
- int micro ;
-
- if ( sscanf( "$LIBPARTED_VERSION", "%d.%d.%d", &min_major, &min_minor, &min_micro ) == 3 )
+ int min_major = 0;
+ int min_minor = 0;
+ int min_micro = 0;
+ int major = 0;
+ int minor = 0;
+ int micro = 0;
+
+ if ( ( sscanf( "$LIBPARTED_VERSION", "%d.%d.%d", &min_major, &min_minor, &min_micro ) == 3 ) ||
+ ( sscanf( "$LIBPARTED_VERSION", "%d.%d", &min_major, &min_minor ) == 2 ) ||
+ ( sscanf( "$LIBPARTED_VERSION", "%d", &min_major ) == 1 )
+ )
{
- /* Check for libparted three digit version number */
- if ( sscanf( ped_get_version(), "%d.%d.%d", &major, &minor, µ ) == 3 )
+ if ( ( sscanf( ped_get_version(), "%d.%d.%d", &major, &minor, µ ) == 3 ) ||
+ ( sscanf( ped_get_version(), "%d.%d", &major, &minor ) == 2 ) ||
+ ( sscanf( ped_get_version(), "%d", &major ) == 1 )
+ )
{
printf( "Found libparted %s\t", ped_get_version() ) ;
return ! ( (major > min_major) ||
- ((major == min_major) && (minor > min_minor)) ||
- ((major == min_major) && (minor == min_minor) && (micro >= min_micro)) ) ;
- }
-
- /* Check for two digit libparted version number */
- if ( sscanf( ped_get_version(), "%d.%d", &major, &minor ) == 2 )
- {
- printf( "Found libparted %s\t", ped_get_version() ) ;
- return ! ( (major > min_major) ||
- ((major == min_major) && (minor >= min_minor)) ) ;
+ ( (major == min_major) && (minor > min_minor) ) ||
+ ( (major == min_major) && (minor == min_minor) && (micro >= min_micro) )
+ ) ;
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]