Failure while executing KTar::open while using KCompressionDevice as the device

Aleix Pol aleixpol at kde.org
Tue Nov 3 02:03:57 UTC 2015


On Tue, Nov 3, 2015 at 3:00 AM, Luiz Romário Santana Rios
<luizromario at gmail.com> wrote:
> 2015-11-02 22:41 GMT-03:00 Aleix Pol <aleixpol at kde.org>:
>> On Mon, Nov 2, 2015 at 6:53 PM, Luiz Romário Santana Rios
>> <luizromario at gmail.com> wrote:
>>> Hello,
>>>
>>> I'm trying to decompress a XZ archive downloaded using
>>> QNetworkAccessManager, so, according to the documents, I have to pass
>>> the QNetworkReply pointer to a KCompressionDevice and, then, use it as
>>> Ktar's device like this:
>>>
>>> https://gist.github.com/anonymous/b8fb686367f518a7dbb5
>>>
>>> The problem is that KTar::open() fails and returns false. The file I'm
>>> trying to extract has the following structure more or less:
>>> /root
>>> /root/dir
>>> /root/dir/file1
>>> /root/dir/file2
>>> ...
>>>
>>> So, as far as I've seen, the code runs normally when entering /root
>>> and /root/dir, but, pretty high in the stack, at
>>> KXzFilter::uncompress(), the call to lzma_code returns
>>> LZMA_FORMAT_ERROR while trying to uncompress file1 (or file2, I'm not
>>> sure). Here's the call stack:
>>>
>>> https://gist.github.com/anonymous/9ea380cfe48daadb5971
>>>
>>> Is this a bug? If it's a bug, how can I proceed to fix it?
>>>
>>> Thanks for the attention.
>>
>> Hi,
>> A good first step would be coming up with a unit test like the ones
>> you can find in karchive/autotests. If we have a reproducible test
>> case it will be much faster to fix (for you and for us).
>>
>> Regards,
>> Aleix
>
> I'll do that, but how do I host a local file so that it can be
> "downloaded" from QNAM?
>
> --
> Luiz Romário Santana Rios

Using file:/// url scheme you can asynchronously read local files.

Aleix


More information about the Kde-frameworks-devel mailing list