From ed7f1b83aa5ae5e4b0792b4b846ebede60a3473e Mon Sep 17 00:00:00 2001 From: srowen Date: Thu, 29 Apr 2010 22:18:25 +0000 Subject: [PATCH] Slight tweak to last change -- parse MODE value even when there's no SCAN_FORMATS. Also be extra paranoid about other call to String.split() git-svn-id: https://zxing.googlecode.com/svn/trunk@1324 59b500cc-1b3d-0410-9834-0bbf25fbcc57 --- .../google/zxing/client/android/CaptureActivity.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/android/src/com/google/zxing/client/android/CaptureActivity.java b/android/src/com/google/zxing/client/android/CaptureActivity.java index aa476c0fb..f0b8e6f1f 100755 --- a/android/src/com/google/zxing/client/android/CaptureActivity.java +++ b/android/src/com/google/zxing/client/android/CaptureActivity.java @@ -264,17 +264,17 @@ public final class CaptureActivity extends Activity implements SurfaceHolder.Cal } private static Vector parseDecodeFormats(Intent intent) { - String formats = intent.getStringExtra(Intents.Scan.SCAN_FORMATS); - if (formats != null) { - return parseDecodeFormats(Arrays.asList(COMMA_PATTERN.split(formats)), - intent.getStringExtra(Intents.Scan.MODE)); + List scanFormats = null; + String scanFormatsString = intent.getStringExtra(Intents.Scan.SCAN_FORMATS); + if (scanFormatsString != null) { + scanFormats = Arrays.asList(COMMA_PATTERN.split(scanFormatsString)); } - return null; + return parseDecodeFormats(scanFormats, intent.getStringExtra(Intents.Scan.MODE)); } private static Vector parseDecodeFormats(Uri inputUri) { List formats = inputUri.getQueryParameters(Intents.Scan.SCAN_FORMATS); - if (formats.size() == 1){ + if (formats != null && formats.size() == 1 && formats.get(0) != null){ formats = Arrays.asList(COMMA_PATTERN.split(formats.get(0))); } return parseDecodeFormats(formats, inputUri.getQueryParameter(Intents.Scan.MODE));