summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff Brown <jeffbrown@google.com>2012-03-12 15:34:53 -0700
committerJeff Brown <jeffbrown@google.com>2012-03-12 15:35:28 -0700
commitb2679481b57d87945df02983f95ff8e6c9ba5928 (patch)
tree4db4a8afcdf331ea4f4116f8d8c0adf0261f077b
parent8ac70c42507560bf6df7114e96f788c03a18bd6a (diff)
downloadframeworks_base-b2679481b57d87945df02983f95ff8e6c9ba5928.zip
frameworks_base-b2679481b57d87945df02983f95ff8e6c9ba5928.tar.gz
frameworks_base-b2679481b57d87945df02983f95ff8e6c9ba5928.tar.bz2
Fix potential NPE in SQLiteProgram.
Bug: 6122537 Change-Id: I76a12f58f08b708065dfdd11c78f54701d90873b
-rw-r--r--core/java/android/database/sqlite/SQLiteProgram.java18
1 files changed, 9 insertions, 9 deletions
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() {