| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
| |
The configure_file() function will automatically install the generated
file if the `install_dir` argument is set; there's no need for an
`install: true` argument. In fact, Meson versions prior to 0.50 will
ignore the argument, and Meson versions after 0.50 will warn, if the
required version of Meson is < 0.50.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Common GdkPixbufAnimation implementations need to avoid warnings caused
by the recent deprecation of GTimeVal in GLib 2.62.
|
|
|
|
|
|
| |
We're measuring time deltas; the monotonic clock provides a better
resolution, and we don't have to care about things like microsecond
wrap-around or the clock going backwards mid-measurement.
|
|
|
|
|
|
|
|
|
|
|
| |
GLib 2.62 deprecated GTimeVal and GTime because they are not Y2038-safe.
Since we expose these types in our public API, we need to disable
warnings to avoid projects breaking horribly just by importing
gdk-pixbuf.h.
Sadly, GdkPixbufAnimation public types not only require GTimeVal in
virtual function signatures for loaders, but they also do not have any
room left in the class vtable for adding int64 variants.
|
| |
|
|
|
|
|
| |
Fail hard when the XPM file's advertised width or height does not match
the data contained within the file.
|
| |
|
|
|
|
| |
In the same way that libXpm sanity checks it.
|
|
|
|
| |
A laaaarge XPM file.
|
|\
| |
| |
| |
| |
| |
| |
| | |
The gnome-2-38 branch was a mistake, but I did the 2.38.1 release out of
it, so we need to keep it around.
Because translators already started using the gdk-pixbuf-2-38 branch, we
should merge everything we have here.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
We're still using the deprecated form of passing gdk-pixbuf as a library
named argument, instead of the idiomatic positional argument, which lets
Meson figure out all the needed dependencies.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
jas_matrix_create can return NULL when memory allocation
fails.
Closes: #107
|
| |\
| | |
| | |
| | |
| | | |
tests: Add test for a PNG crasher
See merge request GNOME/gdk-pixbuf!36
|
| |/
| |
| |
| | |
https://bugzilla.gnome.org/show_bug.cgi?id=793470
|
| | |
|
| |
| |
| |
| | |
(cherry picked from commit c40fd7bba6210aed0753f11e79dc8f03467dfb3f)
|
| |\
| | |
| | |
| | |
| | | |
Fix GIF decoding bugs
See merge request GNOME/gdk-pixbuf!28
|
| | |
| | |
| | |
| | |
| | |
| | | |
The existing code had a special state for handling codes after a clear code was
received. This is more simply handled by using the 'lzw_oldcode' variable. This
makes code that is less likely to introduce errors.
|
| | |
| | |
| | |
| | | |
An example image that generates the "Circular table entry in GIF file" error.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The following was occurring:
1. A clear code is detected in the LZW stream.
2. The decoder enters a clear code handling state.
3. The decoder looks for the next code after the clear.
4. The decoder has run out of blocks, so enters a state to get new blocks
The issue is in step 4 the decoder has assumed the clear state is complete,
when it is not. The solution is to only complete the clear state once a
non clear code is read.
This caused the "Circular table entry in GIF file" error for some GIFs.
Fixes https://gitlab.gnome.org/GNOME/gdk-pixbuf/issues/27
Fixes https://gitlab.gnome.org/GNOME/gdk-pixbuf/issues/69
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The following was occurring:
1. A clear code is detected in the LZW stream
2. The first code is detected as a clear.
3. The following code is returned as a color index, this breaks if it is a
clear.
There were two codepaths in use, one for handling the first clear in the LZW
sequence and another for handling clears within the sequence. The former
handled sequential clears correctly, the latter did not.
The solution is to the correct codepath and remove the other one. This
simplification should not affect other decoding (as confirmed by the test
suite).
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The following was occurring:
1. Code words would be read from the LZW data blocks.
2. If there was exactly enough space for one more codeword in the block, more
blocks were read. This is the off by one error. It should have read the
last code before doing this.
3. If the next block was the terminating block the code would be marked as
complete.
4. Another block would be attempted to be read, because the decoder was still
in the same state as step 2.
5. An error was generated because the decoder was trying to read blocks after it
had determined the stream had ended.
This fixes the GIF decoder failing to decode images without an
end-of-information code.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Add tests that exert many different types of GIF files. Some of the tests are
disabled as the current gdk-pixbuf GIF implementation doesn't handle them
correctly. Future commits will fix these issues and enable the tests.
The test suite is generated in the PyGIF project
(https://github.com/robert-ancell/pygif)
|
| | | |
|
| | |
| | |
| | |
| | | |
This should pull in all the xslt/docbook deps we might need
|
|/ / |
|
|/ |
|
| |
|
|\
| |
| |
| |
| | |
thumbnailer: Unbreak thumbnailing of GIFs
See merge request GNOME/gdk-pixbuf!32
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
The GIF codec throws GDK_PIXBUF_ERROR_INCOMPLETE_ANIMATION if it's
closed without decoding all the frames. The thumbnailer has always,
both now with gdk_pixbuf_new_from_file_at_scale and earlier, decoded
only the first animation frame, which is why this specific error needs
to be ignored [1].
Fixes: dd1f222f78eed2b7d70a5e8507199c78e3f9e12b
[1] https://gitlab.gnome.org/GNOME/gnome-desktop/commit/f9b2c480e38d
https://gitlab.gnome.org/GNOME/gdk-pixbuf/issues/99
|
|\
| |
| |
| |
| | |
ci: add a msys2 mingw64 job
See merge request GNOME/gdk-pixbuf!29
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
When building without GDK_PIXBUF_USE_GIO_MIME detect the format based on the
fill extension and not the mime type.
This makes these tests pass on Windows.
|
| |
| |
| |
| |
| |
| |
| |
| | |
When cloning the repo with git on Windows the symlinks end up being
normal files which contain the target path as text.
Make this kinda work by detecting if the files contain ascii only
and then treating the content as a filename in the parent directory.
|
|/
|
|
|
|
|
| |
So we use the right path encoding on Windows and don't interpret the content
as text.
This makes the pixbuf-threads run on Windows.
|
|\
| |
| |
| |
| | |
gif: Remove unused variable
See merge request GNOME/gdk-pixbuf!30
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Add pkgconfig variables for binary utilities
Closes #89
See merge request GNOME/gdk-pixbuf!12
|
| |
| |
| |
| |
| |
| |
| | |
It is useful for finding the correct path for the utilities, as it does
not rely on PATH being set appropriately.
Closes #89
|