summaryrefslogtreecommitdiffstats
path: root/media/libmedia
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2014-01-27 19:55:28 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-01-27 19:55:28 +0000
commit8e26486d2d811f94118381a163178078a3eee6c0 (patch)
tree39895891373dc0a7dcdce65fbd06ed79e104fa28 /media/libmedia
parent4bbf8ea1f17e85123abd2b037d357e2a89664511 (diff)
parent9f875b2717b683cc61e3fa4ba24b3693fab5b46a (diff)
downloadframeworks_av-8e26486d2d811f94118381a163178078a3eee6c0.zip
frameworks_av-8e26486d2d811f94118381a163178078a3eee6c0.tar.gz
frameworks_av-8e26486d2d811f94118381a163178078a3eee6c0.tar.bz2
am 9f875b27: am 8ba3192f: am d0e7e801: Merge "Do partial reads in MemoryLeakTrackUtil"
* commit '9f875b2717b683cc61e3fa4ba24b3693fab5b46a': Do partial reads in MemoryLeakTrackUtil
Diffstat (limited to 'media/libmedia')
-rw-r--r--media/libmedia/MemoryLeakTrackUtil.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/media/libmedia/MemoryLeakTrackUtil.cpp b/media/libmedia/MemoryLeakTrackUtil.cpp
index 6a108ae..f004ca4 100644
--- a/media/libmedia/MemoryLeakTrackUtil.cpp
+++ b/media/libmedia/MemoryLeakTrackUtil.cpp
@@ -49,7 +49,7 @@ struct MyString8 {
}
void append(const char *s) {
- strcat(mPtr, s);
+ strncat(mPtr, s, MAX_SIZE - size() - 1);
}
const char *string() const {
@@ -60,6 +60,10 @@ struct MyString8 {
return strlen(mPtr);
}
+ void clear() {
+ *mPtr = '\0';
+ }
+
private:
char *mPtr;
@@ -139,6 +143,9 @@ void dumpMemoryAddresses(int fd)
}
} while (moved);
+ write(fd, result.string(), result.size());
+ result.clear();
+
for (size_t i = 0; i < count; i++) {
AllocEntry *e = &entries[i];
@@ -152,13 +159,14 @@ void dumpMemoryAddresses(int fd)
result.append(buffer);
}
result.append("\n");
+
+ write(fd, result.string(), result.size());
+ result.clear();
}
delete[] entries;
free_malloc_leak_info(info);
}
-
- write(fd, result.string(), result.size());
}
#else