Several fixes

This commit is contained in:
Ignacio Serantes
2026-04-06 20:44:49 +02:00
parent ca260d4219
commit a717acef87
8 changed files with 151 additions and 98 deletions

View File

@@ -286,7 +286,7 @@ class CacheWriter(QThread):
self._condition_new_data = QWaitCondition()
self._condition_space_available = QWaitCondition()
# Soft limit for blocking producers (background threads)
self.setObjectName("CacheWriterThread") # Add this line
self.setObjectName("CacheWriterThread") # Add this line
self._max_size = 50
self._running = True
@@ -758,7 +758,8 @@ class ThumbnailCache(QObject):
self._broken_cache[key] = (mtime, error_msg)
def get_broken_info(self, path, size, mtime, inode, dev_id):
"""Returns the error message if a thumbnail is known to have failed, else None."""
"""Returns the error message if a thumbnail is known to have failed, else
None."""
key = (dev_id, struct.pack('Q', inode) if inode is not None else None, size)
with self._read_lock():
info = self._broken_cache.get(key)
@@ -889,7 +890,8 @@ class ThumbnailCache(QObject):
# Check if known to be broken
broken_msg = self.get_broken_info(path, target_tier, mtime, inode, device_id)
if broken_msg:
return ThumbnailResult(self._broken_images.get(target_tier), mtime, target_tier)
return ThumbnailResult(
self._broken_images.get(target_tier), mtime, target_tier)
best_img, best_mtime, best_tier = None, 0, 0
@@ -1488,7 +1490,6 @@ class ImageScanner(QThread):
def __init__(self, cache, paths, is_file_list=False, viewers=None,
thread_pool_manager=None, target_sizes=None):
# is_file_list is not used
if not paths or not isinstance(paths, (list, tuple)):
logger.warning("ImageScanner initialized with empty or invalid paths")
paths = []
@@ -1851,7 +1852,8 @@ class ImageScanner(QThread):
return
for f_path, _ in tasks:
r = ScannerWorker(self.cache, f_path, semaphore=sem, target_sizes=self.target_sizes)
r = ScannerWorker(
self.cache, f_path, semaphore=sem, target_sizes=self.target_sizes)
r.setAutoDelete(False)
runnables.append(r)
self._current_workers.append(r)