Bump Wuffs, add TGA support through it
This commit is contained in:
parent
8877e17108
commit
f2eb7621b4
|
@ -8,8 +8,9 @@ image::fiv.webp["Screenshot of both the browser and the viewer"]
|
|||
Features
|
||||
--------
|
||||
- Uses a compact thumbnail view, helping you browse collections comfortably.
|
||||
- Supports BMP, (A)PNG, GIF, JPEG, WebP directly, plus optionally raw photos,
|
||||
HEIC, AVIF, SVG, X11 cursors and TIFF, or whatever gdk-pixbuf loads.
|
||||
- Supports BMP, (A)PNG, GIF, TGA, JPEG, WebP directly, plus optionally raw
|
||||
photos, HEIC, AVIF, SVG, X11 cursors and TIFF, or whatever your gdk-pixbuf
|
||||
modules manage to load.
|
||||
- Employs high-performance file format libraries: Wuffs and libjpeg-turbo.
|
||||
- Makes use of 30-bit X.org visuals, whenever it's possible and appropriate.
|
||||
- Has a notion of pages, and tries to load all included content within files.
|
||||
|
|
10
fiv-io.c
10
fiv-io.c
|
@ -74,6 +74,7 @@
|
|||
#define WUFFS_CONFIG__MODULE__GIF
|
||||
#define WUFFS_CONFIG__MODULE__LZW
|
||||
#define WUFFS_CONFIG__MODULE__PNG
|
||||
#define WUFFS_CONFIG__MODULE__TGA
|
||||
#define WUFFS_CONFIG__MODULE__ZLIB
|
||||
#include "wuffs-mirror-release-c/release/c/wuffs-v0.3.c"
|
||||
|
||||
|
@ -2403,7 +2404,7 @@ fiv_io_open(
|
|||
{
|
||||
// TODO(p): Don't always load everything into memory, test type first,
|
||||
// so that we can reject non-pictures early. Wuffs only needs the first
|
||||
// 16 bytes (soon 12) to make a guess right now.
|
||||
// 17 bytes to make a guess right now.
|
||||
//
|
||||
// LibRaw poses an issue--there is no good registry for identification
|
||||
// of supported files. Many of them are compliant TIFF files.
|
||||
|
@ -2436,7 +2437,7 @@ fiv_io_open_from_data(const char *data, size_t len, const gchar *uri,
|
|||
wuffs_base__make_slice_u8((uint8_t *) data, len);
|
||||
|
||||
cairo_surface_t *surface = NULL;
|
||||
switch (wuffs_base__magic_number_guess_fourcc(prefix)) {
|
||||
switch (wuffs_base__magic_number_guess_fourcc(prefix, true /* closed */)) {
|
||||
case WUFFS_BASE__FOURCC__BMP:
|
||||
// Note that BMP can redirect into another format,
|
||||
// which is so far unsupported here.
|
||||
|
@ -2454,6 +2455,11 @@ fiv_io_open_from_data(const char *data, size_t len, const gchar *uri,
|
|||
wuffs_png__decoder__alloc_as__wuffs_base__image_decoder, data, len,
|
||||
profile, error);
|
||||
break;
|
||||
case WUFFS_BASE__FOURCC__TGA:
|
||||
surface = open_wuffs_using(
|
||||
wuffs_tga__decoder__alloc_as__wuffs_base__image_decoder, data, len,
|
||||
profile, error);
|
||||
break;
|
||||
case WUFFS_BASE__FOURCC__JPEG:
|
||||
surface = enhance
|
||||
? open_libjpeg_enhanced(data, len, profile, error)
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit ebbecaa2fb439eff0aeedafadb4c2a984446dee8
|
||||
Subproject commit cc74cb4d30f48c3f5e312e48a8ed87e009f62d9b
|
Loading…
Reference in New Issue