summaryrefslogtreecommitdiffstats
path: root/rsElement.cpp
diff options
context:
space:
mode:
authorJason Sams <rjsams@android.com>2010-10-21 14:06:55 -0700
committerJason Sams <rjsams@android.com>2010-10-21 21:17:30 -0700
commit225afd317e101a7be5fe02c0a86361146ea89f05 (patch)
treeaf9ed039287d6a03a6442eb8c8d332f97d0f6e48 /rsElement.cpp
parent1c94845e04e974b22edf07d21ca03337bfb23b7c (diff)
downloadandroid_frameworks_rs-225afd317e101a7be5fe02c0a86361146ea89f05.tar.gz
android_frameworks_rs-225afd317e101a7be5fe02c0a86361146ea89f05.tar.bz2
android_frameworks_rs-225afd317e101a7be5fe02c0a86361146ea89f05.zip
Fix refcounting bugs where the sys refcount
could be corrupted during async type creation. Change-Id: If42828e92990598b0cb5da81c82ea513f94725f2 Fix stack object deletion bug. Change-Id: I2c723aa5ad15e0c99dc9cd0cfbc7db80bace172a
Diffstat (limited to 'rsElement.cpp')
-rw-r--r--rsElement.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/rsElement.cpp b/rsElement.cpp
index 9e6fbd5f..dc021fcb 100644
--- a/rsElement.cpp
+++ b/rsElement.cpp
@@ -30,8 +30,6 @@ using namespace android::renderscript;
Element::Element(Context *rsc) : ObjectBase(rsc)
{
mBits = 0;
- mAllocFile = __FILE__;
- mAllocLine = __LINE__;
mFields = NULL;
mFieldCount = 0;
mHasReference = false;
@@ -140,7 +138,7 @@ Element *Element::createFromStream(Context *rsc, IStream *stream)
for (uint32_t ct=0; ct < rsc->mStateElement.mElements.size(); ct++) {
Element *ee = rsc->mStateElement.mElements[ct];
if(ee->isEqual(elem)) {
- delete elem;
+ ObjectBase::checkDelete(elem);
ee->incUserRef();
return ee;
}