diff options
author | Jörg Frings-Fürst <debian@jff.email> | 2024-11-13 13:36:16 +0100 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff.email> | 2024-11-13 13:36:16 +0100 |
commit | 34852b296a372a81d0b97ab4c12f32be6d294cd3 (patch) | |
tree | 4f751a1551d21c24e7fe66d2a7ddf4444d10a569 /src/photos/WebPSupport.vala | |
parent | 80aa3fe15f6346102c29b9c4236fe1e89c283d3b (diff) | |
parent | 4098950bba8e6d8609395eb9b223c276cb5954b6 (diff) |
Merge branch 'release/debian/0.32.10-1'HEADdebian/0.32.10-1master
Diffstat (limited to 'src/photos/WebPSupport.vala')
-rw-r--r-- | src/photos/WebPSupport.vala | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/photos/WebPSupport.vala b/src/photos/WebPSupport.vala index b467b24..543c889 100644 --- a/src/photos/WebPSupport.vala +++ b/src/photos/WebPSupport.vala @@ -209,8 +209,18 @@ private class WebpReader : PhotoFileReader { uint8[] buffer; FileUtils.get_data(this.get_filepath(), out buffer); + var features = WebP.BitstreamFeatures(); + WebP.GetFeatures(buffer, out features); + + if (features.has_animation) { + throw new IOError.INVALID_DATA("Animated WebP files are not yet supported"); + } + int width, height; var pixdata = WebP.DecodeRGBA(buffer, out width, out height); + if (pixdata == null) { + throw new IOError.INVALID_DATA("Failed to decode WebP file"); + } pixdata.length = width * height * 4; return new Gdk.Pixbuf.from_data(pixdata, Gdk.Colorspace.RGB, true, 8, width, height, width * 4); |