forked from CastroFidel/winehelper
the description of the prepared prefix has been corrected
This commit is contained in:
@@ -1503,23 +1503,39 @@ class CreatePrefixDialog(QDialog):
|
||||
continue
|
||||
|
||||
if re.match(r'^[a-f0-9]{64}', line):
|
||||
current_prefix_name = line.split(maxsplit=1)[1].replace('.tar.xz', '')
|
||||
# Если у нас есть имя и описание для предыдущего префикса, добавляем его
|
||||
if current_prefix_name and current_description:
|
||||
arch_for_prev_prefix = None
|
||||
if "_x86_" in current_prefix_name or "_i586_" in current_prefix_name:
|
||||
arch_for_prev_prefix = 'win32'
|
||||
elif "_x64_" in current_prefix_name or "_amd64_" in current_prefix_name:
|
||||
arch_for_prev_prefix = 'win64'
|
||||
|
||||
arch = None
|
||||
if "_x86_" in current_prefix_name or "_i586_" in current_prefix_name:
|
||||
arch = 'win32'
|
||||
elif "_x64_" in current_prefix_name or "_amd64_" in current_prefix_name:
|
||||
arch = 'win64'
|
||||
|
||||
if arch:
|
||||
description = current_description.strip().replace('\\n', '\n') if current_description else "Рекомендуемый набор библиотек"
|
||||
self.prepared_prefixes[arch].append((current_prefix_name, description))
|
||||
if arch_for_prev_prefix:
|
||||
description_to_add = current_description.strip().replace('\\n', '\n')
|
||||
self.prepared_prefixes[arch_for_prev_prefix].append((current_prefix_name, description_to_add))
|
||||
|
||||
# Сбрасываем описание для нового префикса
|
||||
current_description = ""
|
||||
current_prefix_name = None
|
||||
|
||||
# Получаем имя нового префикса
|
||||
current_prefix_name = line.split(maxsplit=1)[1].replace('.tar.xz', '') if len(line.split(maxsplit=1)) > 1 else None
|
||||
|
||||
elif line.startswith('# '):
|
||||
current_description += line[2:] + "\\n"
|
||||
# Накапливаем описание
|
||||
comment_line = line[2:].strip()
|
||||
if current_description:
|
||||
current_description += "\n" + comment_line
|
||||
else:
|
||||
current_description = comment_line
|
||||
|
||||
# После цикла добавляем описание для самого последнего префикса, если оно есть
|
||||
if current_prefix_name and current_description:
|
||||
arch = None
|
||||
if "_x86_" in current_prefix_name or "_i586_" in current_prefix_name: arch = 'win32'
|
||||
elif "_x64_" in current_prefix_name or "_amd64_" in current_prefix_name: arch = 'win64'
|
||||
if arch:
|
||||
self.prepared_prefixes[arch].append((current_prefix_name, current_description.strip().replace('\\n', '\n')))
|
||||
|
||||
except IOError as e:
|
||||
QMessageBox.warning(self, "Ошибка", f"Не удалось прочитать файл с описаниями префиксов: {e}")
|
||||
|
||||
Reference in New Issue
Block a user