Bug 433294 - Gibberish error when extracting large file from zip archive
Summary: Gibberish error when extracting large file from zip archive
Status: RESOLVED FIXED
Alias: None
Product: krusader
Classification: Applications
Component: krarc (other bugs)
Version First Reported In: unspecified
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Krusader Bugs Distribution List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2021-02-20 07:52 UTC by Dan Dascalescu
Modified: 2021-05-01 18:17 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
Weird error (22.20 KB, image/png)
2021-02-20 07:52 UTC, Dan Dascalescu
Details
16EiB error (47.53 KB, image/png)
2021-02-20 07:55 UTC, Dan Dascalescu
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dan Dascalescu 2021-02-20 07:52:50 UTC
Created attachment 135939 [details]
Weird error

SUMMARY
When attempting to extract a ~6GB file from a ZIP archive, Krusader shows an error containing gibberish characters, then apparently attempts to pack the file back into the archive (?).

STEPS TO REPRODUCE
1. Download https://az792536.vo.msecnd.net/vms/VMBuild_20190311/VMware/MSEdge/MSEdge.Win10.VMware.zip (the MS Edge on Win10 for VMWare virtual machine image from https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/)
2. Enter the archive in Krusader
3. Copy the entire directory from the archive to the opposite panel.

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: KDE neon 5.21
KDE Frameworks Version: 5.79.0
Qt Version: 5.15.2
Comment 1 Dan Dascalescu 2021-02-20 07:55:00 UTC
Created attachment 135940 [details]
16EiB error

After clicking Cancel in that error dialog, I see a dialog to overwrite the extracted file (.vmdk), with the text "The destination is smaller by 16.0 EiB). The source file is only ~6GiB.
Comment 2 Dan Dascalescu 2021-02-20 08:02:28 UTC
Running `unzip` on the .zip file unpacked it without any errors (and the .vmdk was imported correctly by VMWare).
Comment 3 Toni Asensi Esteve 2021-02-22 22:49:47 UTC
Confirmed. The process fails, that doesn't happen e.g. dragging the aforementioned folder from Ark to Dolphin.
Comment 4 Davide Gianforte 2021-03-01 07:38:19 UTC
There seems to be a communication error between krarc and unzip (I've found "QProcess: Destroyed while process ("/usr/bin/unzip") is still running." in user log).

I need to investigate furthermore.
Comment 5 Bug Janitor Service 2021-04-17 17:49:24 UTC
A possibly relevant merge request was started @ https://invent.kde.org/utilities/krusader/-/merge_requests/44
Comment 6 Toni Asensi Esteve 2021-05-01 18:17:45 UTC
Git commit 48b385d255e00a75f406fb10d650cd03aeccae95 by Toni Asensi Esteve.
Committed on 01/05/2021 at 18:17.
Pushed by asensi into branch 'master'.

Give time to external unpackers to uncompress very big files. Show more error messages

Notes:
1) A method in order to {check if the process is running} was used like the
one in <https://doc.qt.io/qt-5/qprocess.html>:
    if (!builder.waitForFinished())
        qDebug() << "Make failed:" << builder.errorString();
    else
        qDebug() << "Make output:" << builder.readAll();
2) An
    error(KIO::ERR_SLAVE_DEFINED, i18n("After [...]
line was utilized, which is analogous to the
    error(KIO::ERR_SLAVE_DEFINED, i18n("Copying to mtp slaves is still under development!"));
line in
    https://github.com/KDE/kio-stash/blob/master/src/ioslave/ioslave.cpp
3) A `proc.waitForFinished(-1);` line was used, like two similar ones
in kmountman.cpp.

GUI: A new error message can be seen by the user.

FIXED: [ 433294 ] Gibberish error when extracting large file from zip archive

Revision: https://invent.kde.org/utilities/krusader/-/merge_requests/44

M  +6    -1    krArc/krarc.cpp

https://invent.kde.org/utilities/krusader/commit/48b385d255e00a75f406fb10d650cd03aeccae95