Review Request: Fix KArchiveFile::copyTo() for large files

Christoph Feck christoph at maxiom.de
Wed Aug 11 00:29:41 BST 2010


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/4938/
-----------------------------------------------------------

(Updated 2010-08-10 23:29:41.037113)


Review request for kdelibs.


Changes
-------

* Changed chunk size to 1 MiB (but allocate less, when sufficient)
* Do not reallocate chunk in each loop iteration


Summary
-------

This fixes KArchiveFile::copyTo() to read in chunks (same as KArchive::addLocalFile(), i.e. 8192 byte chunks) instead of loading the whole file into a single QByteArray (and overflow large files due to that).


This addresses bug 237124.
    https://bugs.kde.org/show_bug.cgi?id=237124


Diffs (updated)
-----

  /trunk/KDE/kdelibs/kdecore/io/karchive.cpp 1161850 

Diff: http://reviewboard.kde.org/r/4938/diff


Testing
-------

I successfully downloaded and installed the UNSO NOMAD catalog mentioned in the bug report using the KStars GHNS dialog. During download and copying/extracting the RES memory size of process kstars did not exceed 60 MB. The download file size was 1450631611 (1.35 GiB), the extracted destination file size was 2173117930 (2.02 GiB).


Thanks,

Christoph

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20100810/85851723/attachment.htm>


More information about the kde-core-devel mailing list