Ensure that delete logs timeout does not run after resolution
This commit is contained in:
parent
4e43459d34
commit
4e6c415ad8
5 changed files with 13 additions and 16 deletions
24
ts/util/deleteAllLogs.ts
Normal file
24
ts/util/deleteAllLogs.ts
Normal file
|
@ -0,0 +1,24 @@
|
|||
// Copyright 2018-2020 Signal Messenger, LLC
|
||||
// SPDX-License-Identifier: AGPL-3.0-only
|
||||
|
||||
import { ipcRenderer } from 'electron';
|
||||
|
||||
import { beforeRestart } from '../logging/set_up_renderer_logging';
|
||||
|
||||
export function deleteAllLogs(): Promise<void> {
|
||||
return new Promise((resolve, reject) => {
|
||||
// Restart logging again when the file stream close
|
||||
beforeRestart();
|
||||
|
||||
const timeout = setTimeout(() => {
|
||||
reject(new Error('Request to delete all logs timed out'));
|
||||
}, 5000);
|
||||
|
||||
ipcRenderer.once('delete-all-logs-complete', () => {
|
||||
clearTimeout(timeout);
|
||||
resolve();
|
||||
});
|
||||
|
||||
ipcRenderer.send('delete-all-logs');
|
||||
});
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue