Review Request 123967: Implement a cancelled() signal in ReadOnlyArchiveInterface to fix cancellation of password dialogs

Ragnar Thomsen rthomsen6 at gmail.com
Thu Jun 4 08:53:12 UTC 2015



> On May 31, 2015, 10:34 p.m., Raphael Kubo da Costa wrote:
> > I am assuming you have tested these new code paths. If so, please commit.
> 
> Ragnar Thomsen wrote:
>     Yes, tested as described under "Testing Done".
> 
> Raphael Kubo da Costa wrote:
>     OK. I also suggest trying Ark's BatchExtract interface (`ark -bea`, or the Dolphin context menu): try extracting some password-protected files, canceling, getting an error message.

Can you OK this, Raphael? I think the inconsistency I mentioned under Revision 5 should be solved separately. It is caused by the difference between password-protection in RAR (header-protected) and ZIP. For ZIP, the initial ListJob doesn't require a password and the password hint gets set. The subsequent ExtractJob then displays the password dialog and when cancelled, emits the cancelled() signal. For RAR, the initial ListJob asks for the password and when cancelled the passwordhint is not set, and the subsequent ExtractJob then causes an errorbox to be displayed.


- Ragnar


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/123967/#review81017
-----------------------------------------------------------


On June 1, 2015, 12:50 a.m., Ragnar Thomsen wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/123967/
> -----------------------------------------------------------
> 
> (Updated June 1, 2015, 12:50 a.m.)
> 
> 
> Review request for KDE Utils, Elvis Angelaccio and Raphael Kubo da Costa.
> 
> 
> Bugs: 267670
>     http://bugs.kde.org/show_bug.cgi?id=267670
> 
> 
> Repository: ark
> 
> 
> Description
> -------
> 
> Implement a cancelled() signal in ReadOnlyArchiveInterface. This signal is emitted in CliInterface when the user cancels a password dialog. The signal is connected to a slot in Job which sets KJob::error to KJob::KilledJobError.
> 
> The callers (Part and BatchExtract) are modified to do nothing if the error code is KJob::KilledJobError when running ListJobs/ExtractJobs/AddJobs/DeleteJobs. This fixes an issue where the user cancels the "Enter password" dialog and the UI keeps being blocked and/or error messageboxes appear.
> 
> The commit ee006cb6a83e6cbd01a2dc459b8b0c8be664c05e in the frameworks branch should be reverted before applying this diff, since this is meant to be an improved replacement of that commit.
> 
> 
> Diffs
> -----
> 
>   app/batchextract.cpp 4adc519 
>   kerfuffle/archiveinterface.h 3126a4c 
>   kerfuffle/cliinterface.cpp 089f36c 
>   kerfuffle/jobs.h 0b85534 
>   kerfuffle/jobs.cpp f573498 
>   part/part.cpp 6fc9f55 
> 
> Diff: https://git.reviewboard.kde.org/r/123967/diff/
> 
> 
> Testing
> -------
> 
> Opened a password-protected zip archive, clicked on a file and cancelled the dialog. Opened a password-protected zip archive, selected a file for extraction and cancelled the password dialog. Opened a password-protected rar archive, and cancelled the password dialog. In all cases, the UI is not blocked after cancelling the dialog and no message boxes appear.
> 
> 
> Thanks,
> 
> Ragnar Thomsen
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-utils-devel/attachments/20150604/2a42e9cf/attachment-0001.html>


More information about the Kde-utils-devel mailing list