From 71117848ffb6edb5420f8f712fbceebdc19b31b4 Mon Sep 17 00:00:00 2001 From: chrysos349 Date: Thu, 15 Feb 2024 17:26:28 +0300 Subject: [PATCH] file-roller: update to 43.1, fix 7zip --- .../patches/fix-7zip-asking-password.patch | 65 +++++++++++++++++++ srcpkgs/file-roller/template | 6 +- 2 files changed, 68 insertions(+), 3 deletions(-) create mode 100644 srcpkgs/file-roller/patches/fix-7zip-asking-password.patch diff --git a/srcpkgs/file-roller/patches/fix-7zip-asking-password.patch b/srcpkgs/file-roller/patches/fix-7zip-asking-password.patch new file mode 100644 index 00000000000..b5ffb81892e --- /dev/null +++ b/srcpkgs/file-roller/patches/fix-7zip-asking-password.patch @@ -0,0 +1,65 @@ +7zip: ask password if the command returns with status 255 +see https://github.com/GNOME/file-roller/commit/844f6fbbef2a616f4bf1eb877710f55bced71d62 + +diff --git a/src/fr-command-7z.c b/src/fr-command-7z.c +index 87e247b3..a3b6b2f2 100644 +--- a/src/fr-command-7z.c ++++ b/src/fr-command-7z.c +@@ -556,6 +556,9 @@ fr_command_7z_handle_error (FrCommand *command, + /* ignore warnings */ + fr_error_clear_gerror (error); + } ++ if (error->status == 255) { ++ fr_error_take_gerror (error, g_error_new_literal (FR_ERROR, FR_ERROR_ASK_PASSWORD, "")); ++ } + else { + GList *scan; + +diff --git a/src/fr-process.c b/src/fr-process.c +index d81768cc..6523247a 100644 +--- a/src/fr-process.c ++++ b/src/fr-process.c +@@ -838,7 +838,7 @@ check_child (gpointer data) + { + GList *scan; + +- g_print ("** ERROR **\n"); ++ g_print ("** ERROR [1] **\n"); + g_print ("%s\n", exec_data->error->gerror->message); + for (scan = process->err.raw; scan; scan = scan->next) + g_print ("%s\n", (char *)scan->data); +@@ -849,10 +849,11 @@ check_child (gpointer data) + } + else if (exec_data->error == NULL) { + if (WIFEXITED (status)) { +- if (WEXITSTATUS (status) == 255) { ++ /*if (WEXITSTATUS (status) == 255) { + exec_data->error = fr_error_new (FR_ERROR_COMMAND_NOT_FOUND, 0, NULL); + } +- else if (WEXITSTATUS (status) != 0) { ++ else*/ ++ if (WEXITSTATUS (status) != 0) { + exec_data->error = fr_error_new (FR_ERROR_COMMAND_ERROR, WEXITSTATUS (status), NULL); + } + } +@@ -903,7 +904,7 @@ check_child (gpointer data) + { + GList *scan; + +- g_print ("** ERROR **\n"); ++ g_print ("** ERROR [2] : (status: %d) (type: %d) **\n", exec_data->error->status, exec_data->error->type); + for (scan = process->err.raw; scan; scan = scan->next) + g_print ("%s\n", (char *)scan->data); + } +diff --git a/src/fr-window.c b/src/fr-window.c +index 65d7bbe2..3dd7ae90 100644 +--- a/src/fr-window.c ++++ b/src/fr-window.c +@@ -2882,6 +2882,7 @@ _handle_archive_operation_error (FrWindow *window, + details = _("Command not found."); + break; + case FR_ERROR_EXITED_ABNORMALLY: ++ case FR_ERROR_COMMAND_ERROR: + details = _("Command exited abnormally."); + break; + case FR_ERROR_SPAWN: diff --git a/srcpkgs/file-roller/template b/srcpkgs/file-roller/template index 75430bcb407..acdccb95d99 100644 --- a/srcpkgs/file-roller/template +++ b/srcpkgs/file-roller/template @@ -1,7 +1,7 @@ # Template file for 'file-roller' pkgname=file-roller -version=43.0 -revision=2 +version=43.1 +revision=1 build_style=meson hostmakedepends="gettext glib-devel itstool pkg-config desktop-file-utils gtk-update-icon-cache" @@ -14,4 +14,4 @@ license="GPL-2.0-or-later" homepage="https://wiki.gnome.org/Apps/FileRoller" changelog="https://gitlab.gnome.org/GNOME/file-roller/-/raw/master/NEWS" distfiles="${GNOME_SITE}/file-roller/${version%.*}/file-roller-${version}.tar.xz" -checksum=298729fdbdb9da8132c0bbc60907517d65685b05618ae05167335e6484f573a1 +checksum=84994023997293beb345d9793db8f5f0bbb41faa155c6ffb48328f203957ad08