Skip to content

Commit 85da5da

Browse files
committed
Fix ANR on crashes
1 parent f685036 commit 85da5da

File tree

1 file changed

+17
-17
lines changed

1 file changed

+17
-17
lines changed

app/src/main/java/org/thoughtcrime/securesms/logging/PersistentLogger.kt

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -59,25 +59,23 @@ class PersistentLogger @Inject constructor(
5959
while (true) {
6060
channel.receiveBulkLogs(bulk)
6161

62-
if (bulk.isEmpty()) {
63-
continue
64-
}
65-
66-
if (logWriter == null) {
67-
logWriter = LogFile.Writer(secret, File(logFolder, CURRENT_LOG_FILE_NAME))
68-
}
62+
if (bulk.isNotEmpty()) {
63+
if (logWriter == null) {
64+
logWriter = LogFile.Writer(secret, File(logFolder, CURRENT_LOG_FILE_NAME))
65+
}
6966

70-
bulkWrite(entryBuilder, logWriter, bulk)
67+
bulkWrite(entryBuilder, logWriter, bulk)
7168

72-
// Release entries back to the pool
73-
freeLogEntryPool.release(bulk)
74-
bulk.clear()
69+
// Release entries back to the pool
70+
freeLogEntryPool.release(bulk)
71+
bulk.clear()
7572

76-
// Rotate the log file if necessary
77-
if (logWriter.logSize > MAX_SINGLE_LOG_FILE_SIZE) {
78-
rotateAndTrimLogFiles(logWriter.file)
79-
logWriter.close()
80-
logWriter = null
73+
// Rotate the log file if necessary
74+
if (logWriter.logSize > MAX_SINGLE_LOG_FILE_SIZE) {
75+
rotateAndTrimLogFiles(logWriter.file)
76+
logWriter.close()
77+
logWriter = null
78+
}
8179
}
8280

8381
// Notify that the log channel is idle
@@ -179,7 +177,9 @@ class PersistentLogger @Inject constructor(
179177

180178
override fun blockUntilAllWritesFinished() {
181179
runBlocking {
182-
logChannelIdleSignal.first()
180+
withTimeoutOrNull(1000) {
181+
logChannelIdleSignal.first()
182+
}
183183
}
184184
}
185185

0 commit comments

Comments
 (0)