[Mono.Data.Sqlite] Using the Version class to do the version comparison correctly
[mono.git] / mcs / class / Mono.Data.Sqlite / Mono.Data.Sqlite_2.0 / UnsafeNativeMethods.cs
index 1c483588c34ae5ef77f7b9e5c2086fb48a3236ec..bc9826d29f47dc83a2ad0875d14c046ae60b7343 100644 (file)
@@ -24,19 +24,17 @@ namespace Mono.Data.Sqlite
       // calculate the version number parts\r
       // https://www.sqlite.org/c3ref/c_source_id.html\r
       // (<major> * 1000000) + (<minor> * 1000) + (<release>)\r
-      int version = sqlite3_libversion_number();\r
-      int release = version % 1000;\r
-      int minor = (version / 1000) % 1000;\r
-      int major = version / 1000000;\r
+      int versionNumber = sqlite3_libversion_number();\r
+      int release = versionNumber % 1000;\r
+      int minor = (versionNumber / 1000) % 1000;\r
+      int major = versionNumber / 1000000;\r
+      Version version = new Version(major, minor, release);\r
 \r
       // set the various versions\r
       // https://sqlite.org/changes.html\r
-      bool v3_5_0 = major >= 3 && minor >= 5 && release >= 0;\r
-      bool v3_7_14 = major >= 3 && minor >= 7 && release >= 14;\r
-      bool v3_7_3 = major >= 3 && minor >= 7 && release >= 3;\r
-      use_sqlite3_open_v2 = v3_5_0;\r
-      use_sqlite3_close_v2 = v3_7_14;\r
-      use_sqlite3_create_function_v2 = v3_7_3;\r
+      use_sqlite3_open_v2 = version >= new Version(3, 5, 0);\r
+      use_sqlite3_close_v2 = version >= new Version(3, 7, 14);\r
+      use_sqlite3_create_function_v2 = version >= new Version(3, 7, 3);\r
     }\r
 \r
 #if !SQLITE_STANDARD\r