Ivailo Monev
4bd5d6b609
kimgio: cast the character to uchar and return EOF on error from RAWDataStream::get_char()
...
note that LibRaw_buffer_datastream returns -1 if the position is
out-of-bounds but https://www.gnu.org/software/libc/manual/html_node/EOF-and-Errors.html
claims that EOF may not be -1
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-26 08:33:14 +03:00
Ivailo Monev
37217b7fe7
kimgio: warn if seeking fails in RAWDataStream::seek()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-25 18:53:56 +03:00
Ivailo Monev
59f42738c2
kimgio: const-ify RAWDataStream member
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-25 02:30:43 +03:00
Ivailo Monev
5c9b183447
kimgio: use custom datastream class in raw plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-25 03:12:45 +03:00
Ivailo Monev
bb183aa63d
kimgio: use TJPF_ARGB as pixel format in jpg plugin when the host is big-endian
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 23:02:04 +03:00
Ivailo Monev
bb976aeff7
kimgio: theoretical big-endian support for ICO format
...
there is a lot of code that is not big-endian tested (not just in the
ico plugin)
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 22:45:45 +03:00
Ivailo Monev
117e0dc301
kimgio: set the output image to default constructed if decoding fails in WebPHandler::read()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 05:52:51 +03:00
Ivailo Monev
a740c59e2e
kimgio: always use QImage::Format_ARGB32 as format when reading WebP image
...
QImage::Format_RGB32 has a (unused) alpha channel
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 01:43:33 +03:00
Ivailo Monev
3f362d7467
kimgio: remove AUTHORS file
...
nothing left from the other guys
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 00:22:01 +03:00
Ivailo Monev
fe342fa103
kimgio: simplify WebP image writing
...
the last piece of code not written by me in the file
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 00:17:31 +03:00
Ivailo Monev
1b0dcc4f10
kimgio: simplify data copying in ico plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 23:54:28 +03:00
Ivailo Monev
2ded74ccc3
kimgio: decompress image directly into the QImage allocated memory from jpg plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 23:39:54 +03:00
Ivailo Monev
148a4833fe
kimgio: better variable name in ico source file
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-20 00:35:26 +03:00
Ivailo Monev
b6871679b2
kimgio: remove redundant data size check in ICOHandler::canRead()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 19:47:28 +03:00
Ivailo Monev
9526e164cb
kimgio: hardcode RAW image MIME types
...
the plugin is heavy on I/O already because LibRaw requires the whole file
data to determine if it can open it or not so this will reduce that a bit
at the cost of (possibly) requiring update in the future
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 19:33:26 +03:00
Ivailo Monev
9599463984
kimgio: print warning message via kWarning() from WebPHandler::canRead()
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 17:51:09 +03:00
Ivailo Monev
bd60038328
kimgio: ICO writing correction
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 15:01:13 +03:00
Ivailo Monev
081ab70b04
kimgio: ICO image format write support
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 14:58:37 +03:00
Ivailo Monev
d2bb45bb33
kimgio: update plugins read/write support info
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-19 01:40:28 +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
637849870f
kimgio: remove TODO for ico plugin
...
the plugin is there mostly for websites favicon support which are either
PNG or 32 bits per-pixel by now
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 22:37:38 +03:00
Ivailo Monev
2c331e098e
kimgio: add comment about the debug message in ico source file
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 20:59:37 +03:00
Ivailo Monev
87213caeb1
kimgio: implement 24-bit BMP image loading for ico plugin and ensure the image data size is valid
...
fixes crash in case the BMP image data includes padding
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 19:53:09 +03:00
Ivailo Monev
a9b2122f90
kimgio: mark some branches as unlikely in webp plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 17:38:18 +03:00
Ivailo Monev
af2e07337c
kimgio: read-only WebP animations support
...
NOTE: gwenview does not support saving (writing) animated images
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 17:30:54 +03:00
Ivailo Monev
f86b5229e7
kimgio: warn when something goes wrong in webp plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-18 15:30:04 +03:00
Ivailo Monev
92ec388650
kimio: rename ICOType enums for consistency
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-14 16:15:21 +03:00
Ivailo Monev
92b495b19a
kimgio: implement quality option for jpg plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 15:09:58 +03:00
Ivailo Monev
95331f0c56
kimgio: implement JPEG writing
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 15:01:45 +03:00
Ivailo Monev
aadf9d5164
kimgio: rename jpeg plugin to jpg to match the more common extension
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 14:28:59 +03:00
Ivailo Monev
cd7d01a484
kimgio: take the format as hint only and probe the device if format does not match
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 14:18:29 +03:00
Ivailo Monev
2ce7ac3843
kimgio: check if the KMimeType pointer is still valid in RAWPlugin::mimeTypes()
...
can be invalidated during sycoca database update, fixes possible crash
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 13:41:40 +03:00
Ivailo Monev
59e28bfa08
Revert "kimgio: ICO image reading optimization"
...
This reverts commit 5f1bde04b6
.
2022-10-13 12:32:54 +03:00
Ivailo Monev
5f1bde04b6
kimgio: ICO image reading optimization
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 05:08:23 +03:00
Ivailo Monev
2546fb4596
kimgio: bail if invalid ICO is not in the norms
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 05:07:32 +03:00
Ivailo Monev
840491cda0
kimgio: claim support for image/x-jp2-codestream MIME type in jp2 plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 07:38:38 +03:00
Ivailo Monev
e6b0f87542
kimgio: minor corrections
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 07:36:30 +03:00
Ivailo Monev
13b5deb7fa
kimgio: peek to figure out the codec to use in jp2 plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 04:16:48 +03:00
Ivailo Monev
50e343d45b
kimgio: check for non-RFC 3745 header from jp2 plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 03:58:53 +03:00
Ivailo Monev
7f09363d21
kimgio: abort reading if opj_setup_decoder(), opj_decode() or opj_end_decompress() returns false
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 03:55:40 +03:00
Ivailo Monev
565ad4785b
kimgio: branches optimizations
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 03:14:57 +03:00
Ivailo Monev
eec59d05e2
kimgio: seek to the correct position after PNG check in ico plugin
...
fixes loading of ICO with multiple images
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 02:06:16 +03:00
Ivailo Monev
0f8c25590b
kimgio: ensure the allocations in ico plugin are not too big
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 01:44:28 +03:00
Ivailo Monev
cdebdf579f
kimgio: check for more ICO header
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 01:29:13 +03:00
Ivailo Monev
dd5d380a3f
kimgio: check if the BMP image compression is supported in ico plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 01:21:54 +03:00
Ivailo Monev
3fd4682cf8
Merge branch 'master' of https://scm.osdn.net/gitroot/kde/kdelibs
2022-10-12 23:25:16 +03:00
Ivailo Monev
2aa9fad079
kimgio: claim support for all MIME types that are sub-class of image/x-dcraw in raw plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-13 01:20:56 +03:00
Ivailo Monev
964e2c0ed3
kimgio: use memcmp() instead of qstrncmp() for headers comparison
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-12 23:25:00 +03:00
Ivailo Monev
8cb5d4a739
kimgio: check for one more ICO header from ico plugin
...
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-12 21:24:03 +03:00
Ivailo Monev
56dfaf677b
kimgio: remove magick plugin
...
none of the formats it supports are used by the Katana and the GIF
coder is very broken
Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2022-10-12 20:05:46 +03:00