Cancel unpacking not possible with external unpacker

Bug reports will be moved here when the described bug has been fixed

Moderators: Hacker, petermad, Stefan2, white

Post Reply
StatusQuo
Power Member
Power Member
Posts: 1524
Joined: 2007-01-17, 21:36 UTC
Location: Germany

Cancel unpacking not possible with external unpacker

Post by *StatusQuo »

TC 7.5b6 and older (also 7.04a):
After marking multiple archives and starting to unpack with an external tool (e.g. *.rar with WinRAR) using Alt+F9, the unpack job cannot be stopped.
Even if ESC key is pressed/held or Cancel button is clicked repeatedly, TC just aborts unpacking the currently processed archive and continues unpacking all other marked archives.

When unpacking with internal unzip, "Cancel"/ESC aborts the complete operation, just like the copy/move/delete dialogs do.

Expected:
Cancel button/ESC key should stop the whole unpack process, no matter if internal or external unpacker is used.
Who the hell is General Failure, and why is he reading my disk?
-- TC starter menu: Fast yet descriptive command access!
User avatar
Boofo
Power Member
Power Member
Posts: 1431
Joined: 2003-02-11, 00:29 UTC
Location: Des Moines, IA (USA)
Contact:

Post by *Boofo »

I don't see how TC can control an external packer after it has turned control over to it. You can cancel unpacking with WinRAR during the process. Or am I missing something here?
chmod a+x /bin/laden -- Allows anyone the permission to execute /bin/laden

How do I un-overwrite all my data?

User of Total Commander
#60471 Single user license
User avatar
Hacker
Moderator
Moderator
Posts: 13142
Joined: 2003-02-06, 14:56 UTC
Location: Bratislava, Slovakia

Post by *Hacker »

Boofo,
I don't see how TC can control an external packer after it has turned control over to it
You are quite right, but perhaps TC could check some return code from WinRAR, if the unpacking was successful or cancelled.

Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.
User avatar
Boofo
Power Member
Power Member
Posts: 1431
Joined: 2003-02-11, 00:29 UTC
Location: Des Moines, IA (USA)
Contact:

Post by *Boofo »

Hacker,

That could work as long as the WinRAR author doesn't change things along the way in new versions. Sometimes keeping up with things like that can be more of a hassle than it is worth.
chmod a+x /bin/laden -- Allows anyone the permission to execute /bin/laden

How do I un-overwrite all my data?

User of Total Commander
#60471 Single user license
StatusQuo
Power Member
Power Member
Posts: 1524
Joined: 2007-01-17, 21:36 UTC
Location: Germany

Post by *StatusQuo »

Boofo wrote:I don't see how TC can control an external packer
I don't mean TC should be able to stop the external packer, this indeed should be done in the external packer's interface.
But after TC's Cancel button was pressed, it should not proceed unpacking the next marked archive(s).

This can be quite annoying: when hundreds of archives were marked, you have to press Cancel some hundred times (once for every single file) to stop TC unpacking them.
Hacker wrote:perhaps TC could check some return code from WinRAR
Yes, might be useful, too. But like Boofo wrote, I don't know if there is a reliable way to check this.
Who the hell is General Failure, and why is he reading my disk?
-- TC starter menu: Fast yet descriptive command access!
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50390
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

2StatusQuo
Thanks for your report.

It seems like you found a real problem: It works fine in TC 7.04a, but TC 7.5 beta seems to start the next unpack operation without waiting for the previous unpacker to finish. That's also the reason why the operation cannot be aborted. I will try to find the reason.
Author of Total Commander
https://www.ghisler.com
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50390
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Strangely I can no longer reproduce this error, cancelling unpacking works fine also with external unpackers like winrar.exe. What unpacker are you using exactly?
Author of Total Commander
https://www.ghisler.com
StatusQuo
Power Member
Power Member
Posts: 1524
Joined: 2007-01-17, 21:36 UTC
Location: Germany

Post by *StatusQuo »

I use WinRAR.exe 3.71 (XP SP3 Home), but I think that doesn't matter:
instead of aborting TC starts additional unpack processes:
  • - pack a large file into a RAR and make e.g. 9 copies (I used a 200 MB PDF catalogue to get enough time during unpacking)
    - mark all 10 files
    - Alt+F9, check "unpack each archive to a separate subdir"
Enter starts unpacking in a single instance of winrar.exe, the other files would be processed 1 by 1.

:arrow: Now pressing "Cancel" in TC (while winrar.exe is still running) does not cancel, but immediately starts 9 additional instances of winrar.exe, simultaneously unpacking all other marked files.

Reproducible in TC 7.04a and 7.5b7.


Added:
ghisler(Author) wrote:TC 7.5 beta seems to start the next unpack operation without waiting for the previous unpacker to finish.
This only occurs here after pressing TC's "Cancel" button while unpacking, also in 7.04a.
Hacker wrote:perhaps TC could check some return code from WinRAR
Rechecked now, TC already seems to do this: aborting in the WinRar interface is recognized by TC, stopping the operation.
Who the hell is General Failure, and why is he reading my disk?
-- TC starter menu: Fast yet descriptive command access!
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50390
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

I think that the following option seems to cause the problems:
unpack each archive to a separate subdir
I don't get this problem when I don't check it and unpack multiple archives. Can you confirm that too?
Author of Total Commander
https://www.ghisler.com
StatusQuo
Power Member
Power Member
Posts: 1524
Joined: 2007-01-17, 21:36 UTC
Location: Germany

Post by *StatusQuo »

Not here, sorry. No matter if "to separate subdir" is checked or not: clicking TC's cancel button (7.04a and 7.5b7, XP SP3) immediately starts unpacking all other marked archives.
I get the same result with a fresh ini (just changed the unrar path to %COMMANDER_PATH%\Tools\WinRAR\winrar.exe, and unticked use of internal unrar).

Clicking cancel in the WinRar interface works in both cases, though.
Who the hell is General Failure, and why is he reading my disk?
-- TC starter menu: Fast yet descriptive command access!
StatusQuo
Power Member
Power Member
Posts: 1524
Joined: 2007-01-17, 21:36 UTC
Location: Germany

Post by *StatusQuo »

Fixed in TC 7.50pb8. :)
Who the hell is General Failure, and why is he reading my disk?
-- TC starter menu: Fast yet descriptive command access!
User avatar
ghisler(Author)
Site Admin
Site Admin
Posts: 50390
Joined: 2003-02-04, 09:46 UTC
Location: Switzerland
Contact:

Post by *ghisler(Author) »

Thanks!
Author of Total Commander
https://www.ghisler.com
Post Reply