Ivailo Monev
614568e372
kdecore: fix runtime assert about accessing global static after its destruction
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-10-23 12:37:06 +03:00
Ivailo Monev
ca2afde49f
kdecore: use qHash() to make lock name
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-20 12:13:01 +03:00
Ivailo Monev
88394f1a7f
kdecore: use QCryptographicHash::hash() to make lock name
...
converting the file to hex can result in way too long file name and
infinite loop in KLockFile::lock()
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-20 12:04:51 +03:00
Ivailo Monev
c4ae9e0460
kdecore: save lock files in the global temporary directory
...
O_CLOEXEC won't do it but saving the locks in /tmp or other directory that
is purged across reboot will remove stale locks
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 21:16:04 +03:00
Ivailo Monev
85d6590693
kdecore: remove unused system signal header inclusion in klockfile_unix source file
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 01:06:54 +03:00
Ivailo Monev
95a8be4470
kdecore: rewrite KLockFile
...
the PID check was racy, bonus points for not writing data at all to the
lock and not reading it meaning less disk I/O
oh, yes - by using O_CLOEXEC the lock is stale-safe
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-09-09 00:46:42 +03:00
Ivailo Monev
afa983f02f
kdecore: remove unused buffer in KLockFilePrivate::tryLock()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-15 07:25:41 +03:00
Ivailo Monev
6ba957038d
kdecore: KLockFile optimization
...
also not storing the host name because it serves no real purpose other than
being a possible source of problem (hostname change?), copyrighting it to
me because there is nothing relevant left of the original implementation
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-14 03:34:48 +03:00
Ivailo Monev
ca379a7d67
kdecore: tweak the KLockFile sleep time
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-14 02:43:21 +03:00
Ivailo Monev
90dcd31b77
kdecore: tune busy loops for more throughput
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-16 20:39:36 +03:00
Ivailo Monev
82a503ebb3
kdecore: minor KLockFile optimization
...
it is cheaper to realloc() the QByteArray data
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 17:34:42 +03:00
Ivailo Monev
0812a98d19
kdecore: block only when another process is holding the lock in KLockFile::lock()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 14:12:41 +03:00
Ivailo Monev
5d42434579
kdecore: KLockFile branches optimizations
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 03:41:29 +03:00
Ivailo Monev
cada9f78a4
kdecore: KLockFile rewrite
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 03:28:20 +03:00
Ivailo Monev
5a32a5865c
kdecore: drop support for locking NFS files on servers v3 or older
...
note that KLockFile is used only by KConfig (its INI backend), anything
not using KConfig to access files is not affected by the lock method
KLockFile uses
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-08 01:20:50 +03:00
Ivailo Monev
7dc5187778
kdecore: replace most of KRandomSequence with new KRandom::randomMax() function
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-26 12:58:37 +03:00
Ivailo Monev
29a8459798
generic: remove checks for system headers that should be present
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-09-23 15:42:09 +03:00
Ivailo Monev
c2520f5903
generic: compiler warning fixes
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-07-05 17:36:45 +03:00
Ivailo Monev
08ce90c113
kdecore: use usleep() instead of select() in KLockFile::lock()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-23 15:11:21 +03:00
Ivailo Monev
04b95f0de7
kdecore: indent and format
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-06-22 19:09:23 +03:00
Ivailo Monev
6c67e5adf8
generic: make use of QHostInfo::localHostName()
...
Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2019-06-21 19:56:58 +00:00
Ivailo Monev
0a78c4ef65
generic: misc cleanups
2015-08-27 20:35:05 +03:00
Ivailo Monev
21ad0df488
generic: make changes required for building against katie
2015-08-11 05:56:07 +03:00
Ivailo Monev
814163a8dc
initial import
2014-11-13 01:04:59 +02:00