kdecore: interrupt lock attempts from KLockFile destructor

every while loop should have interrupt point, this one did not

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2024-05-17 14:38:40 +03:00
parent 922d02660b
commit 198997f5e1

View file

@ -62,6 +62,7 @@ KLockFile::KLockFile(const QString &file)
KLockFile::~KLockFile() KLockFile::~KLockFile()
{ {
unlock(); unlock();
d->m_lockfile.clear();
delete d; delete d;
} }
@ -77,7 +78,7 @@ bool KLockFile::tryLock()
void KLockFile::lock() void KLockFile::lock()
{ {
while (!tryLock()) { while (!tryLock() && !d->m_lockfile.isEmpty()) {
QCoreApplication::processEvents(QEventLoop::AllEvents, KLOCKFILE_TIMEOUT); QCoreApplication::processEvents(QEventLoop::AllEvents, KLOCKFILE_TIMEOUT);
QThread::msleep(KLOCKFILE_SLEEPTIME); QThread::msleep(KLOCKFILE_SLEEPTIME);
} }