diff --git a/srcpkgs/UEFITool/patches/windowstate-crash.patch b/srcpkgs/UEFITool/patches/windowstate-crash.patch new file mode 100644 index 00000000000000..d490ba3d8e4717 --- /dev/null +++ b/srcpkgs/UEFITool/patches/windowstate-crash.patch @@ -0,0 +1,38 @@ +From cfe63482d53be7fc07e94cd6b947bd6b561f42e3 Mon Sep 17 00:00:00 2001 +From: Nikolaj Schlej +Date: Fri, 29 May 2026 21:46:23 +0700 +Subject: [PATCH] Update UI state version to 1 + +--- + UEFITool/uefitool.cpp | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/UEFITool/uefitool.cpp b/UEFITool/uefitool.cpp +index 692801f7b..016370941 100644 +--- a/UEFITool/uefitool.cpp ++++ b/UEFITool/uefitool.cpp +@@ -1351,11 +1351,11 @@ void UEFITool::readSettings() + { + QSettings settings(this); + restoreGeometry(settings.value("mainWindow/geometry").toByteArray()); +- QByteArray state = settings.value("mainWindow/windowState").toByteArray(); +- if (state.size() > 0x100) // stupid check for transition from classic UI to docks +- restoreState(state); +- else ++ if (false == restoreState(settings.value("mainWindow/windowState").toByteArray(), 1)) { // Manually update the state version to 1 ++ // We need to reset the UI for state version transition here to prevent a possible crash + resetDocks(); ++ } ++ + ui->structureTreeView->setColumnWidth(0, settings.value("tree/columnWidth0", ui->structureTreeView->columnWidth(0)).toInt()); + ui->structureTreeView->setColumnWidth(1, settings.value("tree/columnWidth1", ui->structureTreeView->columnWidth(1)).toInt()); + ui->structureTreeView->setColumnWidth(2, settings.value("tree/columnWidth2", ui->structureTreeView->columnWidth(2)).toInt()); +@@ -1395,7 +1395,7 @@ void UEFITool::writeSettings() + { + QSettings settings(this); + settings.setValue("mainWindow/geometry", saveGeometry()); +- settings.setValue("mainWindow/windowState", saveState()); ++ settings.setValue("mainWindow/windowState", saveState(1)); // Manually update the state version to 1 + settings.setValue("tree/columnWidth0", ui->structureTreeView->columnWidth(0)); + settings.setValue("tree/columnWidth1", ui->structureTreeView->columnWidth(1)); + settings.setValue("tree/columnWidth2", ui->structureTreeView->columnWidth(2)); diff --git a/srcpkgs/UEFITool/template b/srcpkgs/UEFITool/template index dd5b0a6894cdb4..4aa9e1558c3478 100644 --- a/srcpkgs/UEFITool/template +++ b/srcpkgs/UEFITool/template @@ -1,6 +1,6 @@ # Template file for 'UEFITool' pkgname=UEFITool -version=A72 +version=A74 revision=1 build_style=cmake hostmakedepends="qt6-base qt6-tools" @@ -10,7 +10,7 @@ maintainer="0x5c " license="BSD-2-Clause" homepage="https://github.com/LongSoft/UEFITool/" distfiles="https://github.com/LongSoft/UEFITool/archive/${version}.tar.gz" -checksum=3cace3f617c0023ffed4b95009752a50c55fe22cbba62d760b85f800ce74697f +checksum=b77366f5008ec0504e169a5ff28e9e287c307a0d5f43df590623f123ddab4918 post_install() { vlicense LICENSE.md diff --git a/srcpkgs/UEFITool/update b/srcpkgs/UEFITool/update index 73efcf42638d91..7c8b18e7fd205c 100644 --- a/srcpkgs/UEFITool/update +++ b/srcpkgs/UEFITool/update @@ -1 +1 @@ -pattern='/archive/refs/tags/(v?|UEFITool)?\K[A-Z\d.]+(?=\.tar\.gz")' +pattern='refs/tags/\KA[0-9]+$'