summaryrefslogtreecommitdiffstats
path: root/core/java/android/database/sqlite/SQLiteCursor.java
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2011-10-25 17:09:09 -0700
committerJeff Sharkey <jsharkey@android.com>2011-10-26 10:43:51 -0700
commit7978a414bbbc737bfb342db8840c29376e33a34d (patch)
tree3b0697f45a02a8ff85da4ddad63479fd74af58ea /core/java/android/database/sqlite/SQLiteCursor.java
parent6e03b22015bd834da1a5755e75d7468e5b3b13c5 (diff)
downloadframeworks_base-7978a414bbbc737bfb342db8840c29376e33a34d.zip
frameworks_base-7978a414bbbc737bfb342db8840c29376e33a34d.tar.gz
frameworks_base-7978a414bbbc737bfb342db8840c29376e33a34d.tar.bz2
Only populate stack when StrictMode will use it.
When the StrictMode VM flag is changed mid-lifecycle, pass along at least a basic trace. Bug: 5516561 Change-Id: I6c922ba20f34349c35624cfc04d1c71ee56ad6ef
Diffstat (limited to 'core/java/android/database/sqlite/SQLiteCursor.java')
-rw-r--r--core/java/android/database/sqlite/SQLiteCursor.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/core/java/android/database/sqlite/SQLiteCursor.java b/core/java/android/database/sqlite/SQLiteCursor.java
index 9574300..c24acd4 100644
--- a/core/java/android/database/sqlite/SQLiteCursor.java
+++ b/core/java/android/database/sqlite/SQLiteCursor.java
@@ -95,7 +95,11 @@ public class SQLiteCursor extends AbstractWindowedCursor {
if (query.mDatabase == null) {
throw new IllegalArgumentException("query.mDatabase cannot be null");
}
- mStackTrace = new DatabaseObjectNotClosedException().fillInStackTrace();
+ if (StrictMode.vmSqliteObjectLeaksEnabled()) {
+ mStackTrace = new DatabaseObjectNotClosedException().fillInStackTrace();
+ } else {
+ mStackTrace = null;
+ }
mDriver = driver;
mEditTable = editTable;
mColumnNameMap = null;
@@ -319,7 +323,7 @@ public class SQLiteCursor extends AbstractWindowedCursor {
try {
// if the cursor hasn't been closed yet, close it first
if (mWindow != null) {
- if (StrictMode.vmSqliteObjectLeaksEnabled()) {
+ if (mStackTrace != null) {
int len = mQuery.mSql.length();
StrictMode.onSqliteObjectLeaked(
"Finalizing a Cursor that has not been deactivated or closed. " +