From ae6a83a1cd729376fda3a849714b529f9666f4cb Mon Sep 17 00:00:00 2001 From: Yao Chen Date: Sat, 18 Nov 2017 18:56:52 -0800 Subject: [PATCH] Fix a memory leak in LogEvent My previous understanding of the liblog api was wrong. Luckily it is caught in time. Also added a memory profiling tool in another CL. Test: statsd_test adb shell dumpsys meminfo adb shell cmd stats meminfo Change-Id: I742af2a38e52e35edf0d4c77ccc35ede7019a73b --- cmds/statsd/src/logd/LogEvent.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/cmds/statsd/src/logd/LogEvent.cpp b/cmds/statsd/src/logd/LogEvent.cpp index 80236703c89e..103213830914 100644 --- a/cmds/statsd/src/logd/LogEvent.cpp +++ b/cmds/statsd/src/logd/LogEvent.cpp @@ -30,11 +30,10 @@ using std::string; using android::util::ProtoOutputStream; LogEvent::LogEvent(log_msg& msg) { - android_log_context context = + mContext = create_android_log_parser(msg.msg() + sizeof(uint32_t), msg.len() - sizeof(uint32_t)); mTimestampNs = msg.entry_v1.sec * NS_PER_SEC + msg.entry_v1.nsec; - mContext = NULL; - init(context); + init(mContext); } LogEvent::LogEvent(int32_t tagId, uint64_t timestampNs) { -- 2.11.0