From de549ce5c4797a40c1e11cab232fb299f5c8cf64 Mon Sep 17 00:00:00 2001 From: Ivan Date: Mon, 6 May 2024 13:56:03 +0400 Subject: [PATCH] multiarc: check if we have read access to the archive --- multiarc/src/arccmd.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/multiarc/src/arccmd.cpp b/multiarc/src/arccmd.cpp index 9e696420..f9f8c285 100644 --- a/multiarc/src/arccmd.cpp +++ b/multiarc/src/arccmd.cpp @@ -45,8 +45,9 @@ ArcCommand::ArcCommand(struct PluginPanelItem *PanelItem, int ItemsNumber, const } } } else { - if ((CommandType == CMD_EXTRACT || CommandType == CMD_EXTRACTWITHOUTPATH) // extraction from the archive, - && (sudo_client_is_required_for(".", true) == 1)) { // check if we have write access to dest dir + if((sudo_client_is_required_for(ArcName, false) == 1) // do we have read access to the archive? + || ((CommandType == CMD_EXTRACT || CommandType == CMD_EXTRACTWITHOUTPATH) // extraction from the archive, + && (sudo_client_is_required_for(".", true) == 1))) { // check if we have write access to dest dir NeedSudo = true; } } -- 2.11.4.GIT