OpenCV Manager crashes with exception (Bug #2660)
authorAlexander Smorkalov <alexander.smorkalov@itseez.com>
Mon, 24 Dec 2012 14:05:48 +0000 (18:05 +0400)
committerAlexander Smorkalov <alexander.smorkalov@itseez.com>
Mon, 24 Dec 2012 14:05:48 +0000 (18:05 +0400)
String checking and range cheching added.

android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java

index 7c4b8e4..6f604fb 100644 (file)
@@ -402,10 +402,16 @@ public class ManagerActivity extends Activity
 
     protected String NormalizeVersion(String OpenCVersion, String PackageVersion)
     {
+        if (OpenCVersion == null || PackageVersion == null)
+            return "unknown";
+
         int dot = PackageVersion.indexOf(".");
-        return OpenCVersion.substring(0,  OpenCVersion.length()-1) + "." +
-            OpenCVersion.toCharArray()[OpenCVersion.length()-1] + "." +
-            PackageVersion.substring(0, dot) + " rev " + PackageVersion.substring(dot+1);
+        if (dot == -1 || OpenCVersion.length() == 0)
+            return "unknown";
+        else
+            return OpenCVersion.substring(0,  OpenCVersion.length()-1) + "." +
+                OpenCVersion.toCharArray()[OpenCVersion.length()-1] + "." +
+                PackageVersion.substring(0, dot) + " rev " + PackageVersion.substring(dot+1);
     }
 
     protected String ConvertPackageName(String Name, String Version)