summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNaveen Leekha <leekha@google.com>2015-09-22 17:58:21 -0700
committerNaveen Leekha <leekha@google.com>2015-09-22 17:58:21 -0700
commitc1e6fbb52c3f85cc7610d1d07d12be38f70b4ed4 (patch)
tree09865e1312050e775c4fa94a8211aa7b280f3df2
parentbb686c25b214edadd1830abd056db2d570d716ff (diff)
downloadframeworks_native-c1e6fbb52c3f85cc7610d1d07d12be38f70b4ed4.zip
frameworks_native-c1e6fbb52c3f85cc7610d1d07d12be38f70b4ed4.tar.gz
frameworks_native-c1e6fbb52c3f85cc7610d1d07d12be38f70b4ed4.tar.bz2
Initialize local variables to avoid data leak
The uninitialized local variables pick up whatever the memory content was there on stack. This data gets sent to the remote process in case of a failed transaction, which is a security issue. Fixed. (Manual merge of master change 12ba0f57d028a9c8f4eb3afddc326b70677d1e0c ) For b/23696300 Change-Id: I665212d10da56f0803b5bb772d14c77e632ba2ab
-rw-r--r--libs/gui/IGraphicBufferProducer.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/gui/IGraphicBufferProducer.cpp b/libs/gui/IGraphicBufferProducer.cpp
index fc86e60..b73e69e 100644
--- a/libs/gui/IGraphicBufferProducer.cpp
+++ b/libs/gui/IGraphicBufferProducer.cpp
@@ -201,7 +201,7 @@ status_t BnGraphicBufferProducer::onTransact(
uint32_t h = data.readInt32();
uint32_t format = data.readInt32();
uint32_t usage = data.readInt32();
- int buf;
+ int buf = 0;
sp<Fence> fence;
int result = dequeueBuffer(&buf, &fence, async, w, h, format, usage);
reply->writeInt32(buf);
@@ -233,7 +233,7 @@ status_t BnGraphicBufferProducer::onTransact(
} break;
case QUERY: {
CHECK_INTERFACE(IGraphicBufferProducer, data, reply);
- int value;
+ int value = 0;
int what = data.readInt32();
int res = query(what, &value);
reply->writeInt32(value);