summaryrefslogtreecommitdiff
path: root/libs/binder/Parcel.cpp
diff options
context:
space:
mode:
authoralk3pInjection <webmaster@raspii.tech>2022-02-13 16:42:16 +0800
committeralk3pInjection <webmaster@raspii.tech>2022-02-13 16:42:16 +0800
commitfbf4abee30b5883ca8905ac75e9951075c41969f (patch)
tree2130e70979760d211038943b6fe7664fe0459b30 /libs/binder/Parcel.cpp
parentee1a3dc4afa32cff54e2ecd51458e4139b8941a5 (diff)
parent0fd75fb1a6ce4e7cbac17d6a3c0f67e972f6fe96 (diff)
Merge tag 'LA.QSSI.12.0.r1-06100-qssi.0' into sugisawasugisawa
"LA.QSSI.12.0.r1-06100-qssi.0" Change-Id: I8375c5be732ba39cd8b840a5003b82ab2e758503
Diffstat (limited to 'libs/binder/Parcel.cpp')
-rw-r--r--libs/binder/Parcel.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/libs/binder/Parcel.cpp b/libs/binder/Parcel.cpp
index ee834ea43c..617708f3d4 100644
--- a/libs/binder/Parcel.cpp
+++ b/libs/binder/Parcel.cpp
@@ -2141,12 +2141,14 @@ void Parcel::ipcSetDataReference(const uint8_t* data, size_t dataSize,
type == BINDER_TYPE_FD)) {
// We should never receive other types (eg BINDER_TYPE_FDA) as long as we don't support
// them in libbinder. If we do receive them, it probably means a kernel bug; try to
- // recover gracefully by clearing out the objects, and releasing the objects we do
- // know about.
+ // recover gracefully by clearing out the objects.
android_errorWriteLog(0x534e4554, "135930648");
+ android_errorWriteLog(0x534e4554, "203847542");
ALOGE("%s: unsupported type object (%" PRIu32 ") at offset %" PRIu64 "\n",
__func__, type, (uint64_t)offset);
- releaseObjects();
+
+ // WARNING: callers of ipcSetDataReference need to make sure they
+ // don't rely on mObjectsSize in their release_func.
mObjectsSize = 0;
break;
}