From b2679481b57d87945df02983f95ff8e6c9ba5928 Mon Sep 17 00:00:00 2001 From: Jeff Brown Date: Mon, 12 Mar 2012 15:34:53 -0700 Subject: Fix potential NPE in SQLiteProgram. Bug: 6122537 Change-Id: I76a12f58f08b708065dfdd11c78f54701d90873b --- core/java/android/database/sqlite/SQLiteProgram.java | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'core/java/android/database') diff --git a/core/java/android/database/sqlite/SQLiteProgram.java b/core/java/android/database/sqlite/SQLiteProgram.java index 94a23cb..e9b06c6 100644 --- a/core/java/android/database/sqlite/SQLiteProgram.java +++ b/core/java/android/database/sqlite/SQLiteProgram.java @@ -64,20 +64,20 @@ public abstract class SQLiteProgram extends SQLiteClosable { break; } + if (bindArgs != null && bindArgs.length > mNumParameters) { + throw new IllegalArgumentException("Too many bind arguments. " + + bindArgs.length + " arguments were provided but the statement needs " + + mNumParameters + " arguments."); + } + if (mNumParameters != 0) { mBindArgs = new Object[mNumParameters]; + if (bindArgs != null) { + System.arraycopy(bindArgs, 0, mBindArgs, 0, bindArgs.length); + } } else { mBindArgs = null; } - - if (bindArgs != null) { - if (bindArgs.length > mNumParameters) { - throw new IllegalArgumentException("Too many bind arguments. " - + bindArgs.length + " arguments were provided but the statement needs " - + mNumParameters + " arguments."); - } - System.arraycopy(bindArgs, 0, mBindArgs, 0, bindArgs.length); - } } final SQLiteDatabase getDatabase() { -- cgit v1.1