summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'logd/LogTimes.cpp')
-rw-r--r--logd/LogTimes.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/logd/LogTimes.cpp b/logd/LogTimes.cpp
index 68a068008..229be3cd5 100644
--- a/logd/LogTimes.cpp
+++ b/logd/LogTimes.cpp
@@ -128,9 +128,9 @@ void *LogTimeEntry::threadStart(void *obj) {
128 128
129 lock(); 129 lock();
130 130
131 while (me->threadRunning && !me->isError_Locked()) { 131 uint64_t start = me->mStart;
132 uint64_t start = me->mStart;
133 132
133 while (me->threadRunning && !me->isError_Locked()) {
134 unlock(); 134 unlock();
135 135
136 if (me->mTail) { 136 if (me->mTail) {
@@ -143,8 +143,11 @@ void *LogTimeEntry::threadStart(void *obj) {
143 143
144 if (start == LogBufferElement::FLUSH_ERROR) { 144 if (start == LogBufferElement::FLUSH_ERROR) {
145 me->error_Locked(); 145 me->error_Locked();
146 break;
146 } 147 }
147 148
149 me->mStart = start + 1;
150
148 if (me->mNonBlock || !me->threadRunning || me->isError_Locked()) { 151 if (me->mNonBlock || !me->threadRunning || me->isError_Locked()) {
149 break; 152 break;
150 } 153 }