Ivailo Monev
7697b90bb2
kutils: implement KArchive::data() argument to limit the data size
...
to be used (for example) in MIME type determination, i.e. read only a small
chunk of the data
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-18 05:13:02 +03:00
Ivailo Monev
6f968d6f03
kutils: skip the data when the path does not match in KArchive::data()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-18 05:12:00 +03:00
Ivailo Monev
817b7a4aab
kdecore: rework KMimeType
...
more accurate probing then before, notably by probing the file content
from the file slave (only the name was checked before because the
filepath was not a full path in some cases and the file could not be
open)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-04 20:14:53 +03:00
Ivailo Monev
103bc5a7d9
kutils: check the read result in KArchivePrivate::writeFile()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-03 20:35:27 +03:00
Ivailo Monev
053420e816
kutils: read data from files and write it to archive in chunks
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-05-03 08:13:57 +03:00
Ivailo Monev
cf842d6705
kutils: ensure the initial KDecompressor buffer size is never zero
...
fixes decoding of long xz data
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-23 08:51:49 +02:00
Ivailo Monev
75b9cfddd3
generic: const-ify private data pointers where copying is disabled
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-23 06:49:59 +02:00
Ivailo Monev
70d01331b7
kutils: KCompressor and KDecompressor optimizations
...
notably for the case of processing data multiple times with the same
KCompressor/KDecompressor object
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-22 12:25:43 +02:00
Ivailo Monev
6063b39cb2
kutils: easier to change KDecompressor limit
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-22 12:18:41 +02:00
Ivailo Monev
ecd08e8f97
kutils: remove reference to dead links
...
have to keep an eye on those, servers tend to die
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-22 01:46:50 +02:00
Ivailo Monev
6b5605a0a0
kutils: KDecompressor optimization
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2024-03-21 19:10:31 +02:00
Ivailo Monev
327aff2469
kutils: KArchive documentation correction
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-07-04 20:39:37 +03:00
Ivailo Monev
ed79c859b2
generic: merge KDELibs4ToolsTargets and KDELibs4LibraryTargets
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 23:57:38 +03:00
Ivailo Monev
5613e5483c
generic: remove redundant build varibles
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 20:25:52 +03:00
Ivailo Monev
36c910c653
generic: move stuff from KDE4Internal module to KDELibs4Config
...
large-scale changes to the build system, nothing a user sees tho - it is
all under the hood
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-17 19:01:40 +03:00
Ivailo Monev
78933232a2
generic: remove build variable used to specify library type
...
only shared builds are supported now
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-06-10 23:19:17 +03:00
Ivailo Monev
21f81958f2
kutils: remove karchive TODO
...
archive_match_include_pattern() does not work on archive open for reading
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-23 18:33:20 +03:00
Ivailo Monev
e4c8f00e14
kutils: plug KArchive memory leaks
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-21 07:00:06 +03:00
Ivailo Monev
f852199986
kutils: KArchive remove and extraction operations optimizations
...
a bit hach-ish but reduced the time it takes to extract archives with a lot
of small files for example
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-20 07:48:16 +03:00
Ivailo Monev
631ae6a32a
kutils: remove unused constants
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2023-05-19 06:20:35 +03:00
Ivailo Monev
55432743c0
kutils: assume that KArchive::list() filtered the entries when recursing
...
the conditionals were there to maybe match with and without trailing slash
but KArchive::list() works correctly for the fomats that do not add
trailing slash to directories aswell
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 23:33:12 +02:00
Ivailo Monev
1f60123bd7
kutils: check if the entry is directory as fallback when recursing in KArchive::remove() and KArchive::extract()
...
for some formats (such as ISO 9660 images) the directories do not end with
trailing slash
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-25 06:44:59 +02:00
Ivailo Monev
0c2fa57bdd
kutils: group structs and typedefs documentation
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-24 13:24:47 +02:00
Ivailo Monev
efa445c361
kutils: mark some KArchivePrivate methods as const
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-24 13:15:45 +02:00
Ivailo Monev
0bc98740e0
kutils: error string correction
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-24 13:13:14 +02:00
Ivailo Monev
5e4e0c83e2
kutils: minor KArchive documentation correction
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-24 13:03:20 +02:00
Ivailo Monev
c29fc4dca1
kutils: test KCompressor and KDecompressor with empty data
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-24 12:59:19 +02:00
Ivailo Monev
4c16e7c0d5
kutils: recursively remove/extract when paths contain directory
...
this also makes it match the behaviour of KArchive::add() which recurses
into directories and adds the files that the specified directory holds
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-24 01:56:21 +02:00
Ivailo Monev
81ac307c68
kutils: move some KArchive MIME types from the writable to the readable list
...
side note: `bsdtar` creates archives with the MIME type extension as
application/x-tar even if the extension is not recognized by libarchive
(i.e. autodetection fails but it proccedes anyway)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-22 01:57:19 +02:00
Ivailo Monev
ece9331d4b
kutils: KArchive documentation correction
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-21 00:49:54 +02:00
Ivailo Monev
45110ac273
kutils: remove the temporary archive if error occurs in KArchive::add() and KArchive::remove()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-20 10:56:10 +02:00
Ivailo Monev
3298200d40
kutils: new getter and setter for the temporary KArchive prefix
...
to be used by ark
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-19 18:01:51 +02:00
Ivailo Monev
6adc4fcaea
kutils: increase the KDecompressor buffer size increment to 1MB
...
speeds up loading of large gzip-compressed files for example
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-12-14 09:54:10 +02:00
Ivailo Monev
90928e8320
generic: store package found definitions in config header
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-30 05:41:21 +02:00
Ivailo Monev
4cffecc6af
kutils: verify the KArchive progress signal values in its test case
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-27 09:49:28 +03:00
Ivailo Monev
3f692a32f9
kutils: implement progress signal for KArchive
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-27 03:47:53 +03:00
Ivailo Monev
c392733865
kutils: compiler warnings fix
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-24 16:54:31 +03:00
Ivailo Monev
5a1ae4c3c2
kutils: reference KMimeType::findByPath and KMimeType::findByContent in KCompressor and KDecompressor documentation
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 00:04:55 +03:00
Ivailo Monev
97bb978c42
kutils: brief KCompressor and KDecompressor documentation
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 19:03:11 +03:00
Ivailo Monev
51e3763a1f
kutils: de-duplicate code in KCompressor and KDecompressor
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 18:45:34 +03:00
Ivailo Monev
08ff3426ce
kutils: set error string if the type is invalid in KCompressor::process() and KDecompressor::process()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 18:44:22 +03:00
Ivailo Monev
ec505df46a
kutils: allocate less space for headers in KCompressor::process()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 23:06:52 +03:00
Ivailo Monev
e626e41d5f
kutils: check output buffer size limit before redoing XZ/LZMA decoding
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 21:00:42 +03:00
Ivailo Monev
60e94313ef
kdecore: move KCompressor and KDecompressor to karchive library
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 04:40:28 +03:00
Ivailo Monev
efd9978abf
kutils: libarchive does not support plain bzip, gzip and xz formats
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-17 13:46:41 +03:00
Ivailo Monev
78f4dd9aee
kutils: do not include the libarchive function name in error strings
...
for consistency since some errors strings are not based on libarchive
error codes
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-15 20:06:36 +03:00
Ivailo Monev
591e73ca63
kutils: update readable and writable KArchive MIME types
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-15 19:47:08 +03:00
Ivailo Monev
04fa9c4bf9
Merge branch 'master' of https://scm.osdn.net/gitroot/kde/kdelibs
2022-10-15 19:38:39 +03:00
Ivailo Monev
37c782601f
kutils: mark KArchive and KSpeech as stable
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-15 19:45:37 +03:00
Ivailo Monev
3f28263411
kutils: when opening archive fails in helper methods return null
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-15 19:36:59 +03:00