aboutsummaryrefslogtreecommitdiff
path: root/catapult/systrace/atrace_helper/jni/file_utils.cc
diff options
context:
space:
mode:
Diffstat (limited to 'catapult/systrace/atrace_helper/jni/file_utils.cc')
-rw-r--r--catapult/systrace/atrace_helper/jni/file_utils.cc21
1 files changed, 21 insertions, 0 deletions
diff --git a/catapult/systrace/atrace_helper/jni/file_utils.cc b/catapult/systrace/atrace_helper/jni/file_utils.cc
index 9ebec2da..7d122d6b 100644
--- a/catapult/systrace/atrace_helper/jni/file_utils.cc
+++ b/catapult/systrace/atrace_helper/jni/file_utils.cc
@@ -93,4 +93,25 @@ bool ReadProcFileTrimmed(int pid,
return ReadFileTrimmed(proc_path, buf, length);
}
+LineReader::LineReader(char* buf, size_t size)
+ : ptr_(buf), end_(buf + size) {
+}
+
+LineReader::~LineReader() {
+}
+
+const char* LineReader::NextLine() {
+ if (ptr_ >= end_)
+ return nullptr;
+ const char* cur = ptr_;
+ char* next = strchr(ptr_, '\n');
+ if (next) {
+ *next = '\0';
+ ptr_ = next + 1;
+ } else {
+ ptr_ = end_;
+ }
+ return cur;
+}
+
} // namespace file_utils