* incompatible changes
imlib2-config has been dropped since 1.7.5. Users must switch to pkg-config.
Affected packages will be updated soon.
* upstream ChangeLog
v1.9.1 - 2022-07-06
--------------------
Kim Woelders (14):
x11_color: Simplify and fix error paths
JPEG loader: Use mmap'ed file access
modules: Eliminate __imlib_TrimLoaderList()
Introduce strsplit()
modules: Cosmetics, mostly
modules: Enable setting multiple loader/filter paths
test: Add test_misc
modules: Fix signdness warning
TIFF loader: Change default save compression type
imlib2_load: Remove unused macro
imlib2_conv: Cosmetic changes
imlib2_conv: Drop obsolete .db stuff, simplify
imlib2_conv: Enable passing attached data to saver
v1.9.1
NRK (3):
check for some alloc failures
check for alloc failures some more
modules: check for filepath truncation
v1.9.0 - 2022-04-21
--------------------
Kim Woelders (53):
Remove some deprecation comments
Move API documentation to header file
WEBP saver: Fix return code on success
api.c: Cosmetics
Refactor some image loading functions
Refactor some image saving functions
Image load: Change error code on zero file size
Tweak __imlib_LoadImageData()
Error code rework: Use errnos/new imlib2 error codes internally
Add imlib_load/save_image_with_errno_return() and imlib_strerror()
Switch to imlib_load/save_image_with_errno_return()
Deprecate imlib_load/save_image_with_error_return()
imlib2_load: Tweak verbose output
Rename files with line etc. drawing functions
Use stdint types instead of DATA32 etc.
test_load: Check deferred loading too
imlib2_load: Show load time per load too
image.c: Correct loader probe loop
image.c: Cosmetics (move function)
GZ loader: Fix uncompressor exit code
GIF loader: Use mmap'ed file access
image.c: Loading tweaks
imlib2_view: Verbose and debug message tweaks
Loaders: Some trivial cosmetics
Loaders: Remove unnecessary calls to __imlib_FreeData()
debug: Enable using hex values in IMLIB2_DEBUG
SVG loader: Requires librsvg-2.46
TIFF loader: Use mmap'ed file access
Add jxl loader
test: Add basic jxl test
test_save: Updates
loaders: Ensure that found loader is ok for load/save
image: Fix undesired change of format
Drop deprecation noise from using the old DATA types
Drop deprecation noise from using imlib_load/save_image_with_error_return()
API doc corrections and tweaks for doxygen
Revert a couple of unintended changes
API doc updates
doc: Drop most old doc stuff
doc: New documentation build setup (doxygen)
doc: Assorted documentation intro updates
loaders: Fix typo, fix order
SVG loader: Faster signature check
build: Tweaks
Add J2K (JPEG 2000) loader using openjpeg2 library
test: Add some of JPEG 2000 tests
Add PS/EPS loader using libspectre
debug: Export __imlib_time_us()
JXL loader: Multiframe support
SVG loader: Avoid some warnings in rsvg.h
SVG loader: Fix size when unit is percent
SVG loader: Fix size when unit is percent some more
v1.9.0
v1.8.1 - 2022-03-15
--------------------
Kim Woelders (32):
PNM, XPM loaders: Fix trouble with non-ascii characters
XPM loader: Reduce signature window size some more
Refactor image flags stuff
Remove some unused image flags and deprecate functions referencing them
JPEG, XBM loaders: Drop pointless clearing of flag
Deal consistently with including Imlib2.h
Merge x11_draw.c/h into x11_pixmap.c/h
x11_rgba.c: Add some missing static qualifiers
x11_color.c: Make most __imlib_AllocColors*() functions static
x11_...: Introduce palette type enum
Loader includes tweaks
Move some loader related function prototypes to loaders.h
common.h: Drop round() macro
debug.c/h: Move __EXPORT__ to .c file
Remove system includes from common.h
Move x_VAL() macros to common.h
Introduce types.h
Remove some unnecessary headers
grad.c: Refactor __imlib_DrawGradient() and __imlib_DrawHsvaGradient()
Only have one CLIP macro
Mostly cosmetic tweaks around clipping checks
test: Command line options tweak
test_grab: Enable testing depths other than 24 and 32
x11_grab.c: Correct 16 and 15 bit depth grabbing
TIFF loader: Remove obsolete comment
ID3 loader: Drop inline and likely stuff
ID3 loader: Disable tags stuff
Introduce __imlib_GetKey()
Merge __imlib_FindBestLoader...() functions
test: Properly include test.h in test SOURCES
test: Exclude from tarball
v1.8.1
Matthias Grosser (1):
imlib2: saving progressive JPEG
NRK (1):
XPM Loader: limit signature check to first 4KiB
Tobias Stoeckmann (2):
imlib2: allow compilation without x headers
imlib2_load: fix typo
Youssef Rebahi-Gilbert (1):
fix: possible memleak in rgba save on big endian systems
v1.8.0 - 2022-02-06
--------------------
Kim Woelders (86):
test: Add context test
Drop context image save/restore around __imlib_Load/SaveImage() calls
Make initial context static
Drop context check/init in API functions
Use __func__ instead of open coded function names
Pass parameters to __imlib_LoadImage() by struct
Trivial cleanups
imlib2_view: Cosmetics (if -> switch)
imlib2_view: Add 'r' command to refresh
imlib2_view: Move window background image init to separate function
imlib2_view: Refactor pixmap rendering
imlib2_view: Remove some pointless function calls
imlib2_view: Tweaks around timeout
debug: Add some image caching debug
imlib2_view: Fix caching option
Add support for multiframe (animated) images
Enable caching for multiframe images
imlib2_load: Add support for multiframe images
imlib2_view: Add support for multiframe images
debug: Add DL macro for additional loader debug
WEBP loader: Multiframe support
ICO loader: Multiframe support
GIF loader: Some refactoring, add debug
GIF loader: Multiframe support
ICO loader: Debug tweaks
Indent
debug: Avoid use of uninitialized data
Loader loading: Avoid access to uninitialized load() item
updates: Reduce memory usage
Drop some intermediate type definitions
autofoo/loader cosmetics
configure.ac: Simplify loader setup
Updates for animated image handling
imlib2_view: Fix(?) animated image frame dispose handling
test: Add a couple of ico depth test images
ICO loader: Minor optimization
ICO loader: Mostly cosmetic changes (inline ico_read())
GIF loader: Always set BLEND flag
imlib2_view: Rework display of animated images
Introduce more loader return codes
BZ2, ZLIB loaders: Move duplicated code to separate file
Add lzma loader
imlib2_grab: Print error message if saving fails
imlib2_view: Verbosity twaeks
imlib2_load: Verbosity twaeks
LZMA loader: Fix potential warning
configure.ac: Correct simplification changes
configure.ac: Correct simplification changes some more
XBM loader: Correct load2() result when no header is found
Add svg loader
SVG loader: Avoid problems when loading the module more than once
imlib2_load: Add no-data option
Add dispose-to-previous frame handling
PNG loader: Disable Imlib2-Comment stuff
PNG loader: Rewrite to use callback API
PNG loader: Add multiframe support
test: Check __imlib_FileKey()
Simplify __imlib_FileKey()
Avoid redundant operations when non-existing file has no "key"
Drop change log from before first version tag
test: Move generated image files out of source dir
test: Add makefile to generate test images
PNM loader: Fix P1 when spaces are omitted
PNM loader: Fix "XV thumbnail" (P7 332) loading
test: Add some more PNM type loading tests
image.c: Avoid potential compile error
imlib2_view: Avoid clang error
Drop/adjust a few comments
Move some code as suggested in source
HEIF loader: A couple of cleanups and fixes
loaders.c: Add heif to known loaders
autofoo: Sort loaders
SVG loader: Fix memory leak on error
HEIF loader: Avoid memory leak when module is loaded more than once
Mark obsolete TTF encoding functions as deprecated
test: Add basic heif loader check
Refactoring around font glyph lookup
imlib2.spec.in: Introduce acflags for configuration of rpmbuilds
Add some missing const qualifiers
Fix gcc12 warning in __imlib_ConsumeImage()
Fix gcc12 warning in __imlib_stripwhitespace()
TGA loader: Make function order same as in other loaders
HEIF loader: Header cleanups
Add imlib_version()
test: Merge common stuff
v1.8.0
Rishvic Pushpakaran (1):
imlib2: added loader for HEIF files (uses libheif), implemented just `load2` for now
Sören Tempel (1):
ICO loader: Fix compilation on big endian architectures
v1.7.5 - 2021-12-06
--------------------
Kim Woelders (83):
Build .xz instead of .bz2 release tarball
Drop imlib2-config (use pkg-config)
Test: Add some minimal regression testing
Test: Fix dist
imlib2_load: Add option to use imlib_load_image_immediately()
JPEG loader: Cosmetics
JPEG loader: Parse EXIF data and handle orientation
autofoo: Drop support for libungif
Imlib.h: Add version macros
imlib2_load: Add verbose option
Fix build (Imlib2.h is now built)
test: Add icon-64.pbm
test: Add test_load_2
imlib2_view: If verbose show error message on failure
imlib2_load: Use clock_gettime() when available
debug: Infrastructure
debug: Add some debug related to file access and image loading
Introduce im->fsize
PNG loader: Cosmetics
PNG loader: Use mmap() during signature check
TIFF loader: Use mmap() during signature check
TGA loader: Use im->fsize, cosmetics, debug
WEBP loader: Cosmetics
WEBP loader: Use mmap() for loading
FF loader: Cosmetics
FF loader: Use mmap() for loading
ARGB loader: Cosmetics
ARGB loader: Use mmap() for loading
BMP loader: Cosmetics
BMP loader: Use mmap() for loading
ICO loader: Cosmetics
ICO loader: Use mmap() for loading
LBM loader: Cleanups
LBM loader: Use mmap() for loading
PNM loader: Use mmap() for loading
XBM loader: Fix potential buffer overrun
XBM loader: Cosmetics
XBM loader: Use mmap() for loading
XBM loader: Ignore comments and other stuff in header
XPM loader: Use mmap() for loading
test: test_load improvements
imlib2_view: Add option to cache images
Introduce UPDATE_FLAG()
Introduce ARRAY_SIZE()
Loader cosmetics
Loader loading: Tweaks
Loader loading: Move to __imlib_FindBestLoaderForFormat()
Loader loading: Move __imlib_GetLoaderList()
Loader loading: Minor loader lookup refactoring
Loader loading: Avoid always loading all loaders
Loader loading: Don't bother looking up load() if we have load2()
WEBP loader: Enable loading animated images (first frame by default)
configure.ac: Fixup after recent change
Drop unnecessary free() NULL argument checks
Remove some unneeded headers
Rename X11 related files for clarity
Move ImlibImagePixmap population to __imlib_AddImagePixmapToCache()
test: Add X11 drawable grabbing test
Move pixmap stuff to x11_pixmap.c/h
Trivial changes in __imlib_Grab...() function prototypes
Refactor imlib_create_scaled_image_from_drawable()
Revert "Refactor imlib_create_scaled_image_from_drawable()"
Refactor imlib_create_scaled_image_from_drawable() - take 2
x11_grab.c: Rename source/destination variables for clarity
Fix y-upscaling in imlib_create_scaled_image_from_drawable()
test_grab: Cleanups, cosmetics
test_grab: Add scale-down tests
Only set MAINTAINERCLEANFILES in top-level Makefile.am
imlib2_view: Enable grabbing/viewing drawables
x11_grab.c: Cosmetics
x11_grab.c: Introduce function to get shape mask
Speedup in imlib_create_scaled_image_from_drawable()
Avoid signedness warning
Avoid "exceeds maximum object size" warning
blend.c: Tweaks, cleanups
Simplify build wrt. asm files
test_save: Check images with alpha too
test: Add some scaling/rotation tests
Refactoring around mmx and rotate function calls
Refactoring around mmx and scaling function calls
Refactor condition for using assembly functions
Update doc for imlib_load_image_fd()
1.7.5
NRK (1):
WEBP loader: fix key selecting last frame
v1.7.4 - 2021-09-16
-------------------
Kim Woelders (14):
imlib2_view: Move property stuff to separate file
imlib2_view: Cleanups
imlib2_view: By default scale large images to fit on screen
imlib2_view: Add some debug
imlib2_view: Fix issue with new default scaling
WEBP loader: Remove forgotten debug printout
WEBP loader: Rename fd variable to be same as everywhere else
LBM loader: Fix potential out-of-bounds memory access
GIF, TIFF, WEBP loaders: Fix loading if filename does not have usual suffix
Revert "GIF, TIFF, WEBP loaders: Fix loading if filename does not have usual suffix"
GIF, TIFF, WEBP loaders: Fix loading if filename does not have usual suffix - take 2
Add script to generate Changelog
Update Changelog to new format
image.c: Use the LOAD_... macros to check loader return values
***
*** Version 1.7.1 ***
***
Daniel Kolesa (1):
Fix big endian build
Kim Woelders (6):
rend.c: Fix __imlib_generic_render() when jump != 0
grab.c: Support 30bpp display in __imlib_GrabXImageToRGBA()
WEBP loader: Add initial signature check
XPM loader: Get transparency right when doing header-only loading
Silence a couple of sign-compare warnings
1.7.1
***
*** Version 1.7.0 ***
***
Alexander Volkov (3):
GIF loader: Don't close file descriptor twice
Introduce imlib_load_image_from_fd()
Don't rescan loaders
Kim Woelders (49):
XPM loader: Major speedup for cpp > 2
imlib2_load: Properly check non-full loads (load data too)
imlib2_load: Use getopt()
imlib2_load: Add repeated load option
Simplify __imlib_FileExtension()
Refactor many __imlib_File...() functions to use common __imlib_FileStat()
Drop the __imlib_IsRealFile() file check in __imlib_File...() functions
image.c: Add some space for readability
image.c: Remove some unnecessary clearing of calloc'ed structs
image.c: Rework some obscure file name stuff in __imlib_SaveImage()
image.c: Don't strdup() real_name when not necessary in __imlib_LoadImage()
image.c: Use real_file to get file time
image.c: Introduce __imlib_ErrorFromErrno()
image.c: Use loader return value, not im->w to determine load success
Loader cleanups
Saver cleanups
image.c/h: Cleanups
image.c: Move image tag functions to separate file
image.c: Move loader functions to separate file
image.c: Enable non-dirty pixmap cache cleaning
image.c: Minor refactoring of pixmap cache cleaners
image.c: Move data_memory_func assignment to better place
imlib2_view: Various tweaks
Fix loader cleanup breakage (gif)
image.c: Remove redundant pixmap unref
image.c: Add infrastructure to simplify progress handling
Loaders: Simplify/fix progress handling
Savers: Simplify progress handling
Introduce __imlib_LoadEmbedded()
Introduce __imlib_LoaderSetFormats()
Make ImlibLoader struct opaque
autogen.sh: Add -n as alternative to NOCONFIGURE
Fix enum conversion warnings (gcc10)
JPG, PNG loaders: Avoid clobber warnings
Add a couple of consts
TIFF loader: Minor speedup
ID3 loader: Some mostly cosmetic rearrangements
GZ, BZ2 loaders: Accept more file names
__imlib_FileExtension: Use basename if there are no dots
Revert "JPG, PNG loaders: Avoid clobber warnings"
JPG, PNG loaders: Avoid clobber warnings - Take N+1
Add infrastructure for new loader entry - load2()
Move loaders to load2()
Reduce number of stat() calls during load
configure.ac: Drop initial config.cache removal
imlib2_load: Optionally use imlib_load_image_fd()
Fix build without X11
Remove a couple of unused includes
1.7.0
Tobias Stoeckmann (2):
ICO loader: Do not crash on invalid files
ICO loader: Handle malloc failures
pkgsrc changes:
- Remove lround patches: lround is no longer used
- Remove #ifndef blocks to rip out XShm support. Unfortunately
the logic is much more convoluted now and #ifndef parts of the code
no longer scale.
Please note that this can break support on Interix!
Changes:
1.5.1
*****
Kim Woelders (13):
- Fix build without HAVE_X11_SHM_FD (T6752)
- XPM loader: Fix potential use of uninitialized value (T6746)
- BMP loader: Fix infinite loop with invalid bmp images (T6749)
- PNM loader: Simplify (fixing ASCII format parsing issues T6751)
- BMP loader: Fix warnings found with -O3
- Maximum image dimension should be 32767, not 32766
- PNG loader: Correct various error handling cases
- Add missing const to imlib_apply_filter() script argument
- Warning fixes in imlib2_... programs
- imlib2_view: Limit window dimensions to 32767
- grab.c: Fix gcc8 warning
- imlib2_conv.c: Fix gcc8 warning
- 1.5.1.
1.5.0
*****
Alexander Volkov (3):
- put a check for shared memory inside __imlib_ShmGetXImage()
- introduce __imlib_ShmDestroyXImage() instead of __imlib_ShmDetach()
- Add support for MIT-SHM FD-passing
Kim Woelders (19):
- XPM loader: Fix incorrect image invalidation.
- Make some more functions static.
- Introduce __imlib_LoadImageData()
- Remove redundant CAST_IMAGE()
- imlib2_grab: Always use imlib_create_scaled_image_from_drawable() to grab image
- imlib_create_scaled_image_from_drawable(): speed up 1:1 case
- imlib_create_scaled_image_from_drawable(): Drop shape handling if unshaped
- Indent
- Autofoo cosmetics
- Strip trailing whitespace, cosmetics
- Fix potential OOB memory access if border elements are negative
- Fix potential OOB memory access if border sizes exceed image dimensions
- Introduce IMLIB2_SHM_OPT to enable overriding/testing SHM modes
- Add IMLIB2_XIMAGE_CACHE_COUNT to enable testing the ximage cache
- Refactor the XImage cache
- Add imlib_get_cache_used()
- Expose XImage cache control functions
- Drop -Waggregate-return
- 1.5.0.
Performing substitutions during post-patch breaks tools such as mkpatches,
making it very difficult to regenerate correct patches after making changes,
and often leading to substituted string replacements being committed.
Changes:
1.4.10
------
Kim Woelders (2):
- PNM loader: Fix reading PNM bitmaps.
- Fix missing break.
Tobias Stoeckmann (3):
- Avoid out of boundary operations while parsing xpm
- Properly release resources on error path
- Prevent OOB read with large file support on 32 bit
From Vicente Chaves via PR pkg/52950.
Changes:
***
*** Version 1.4.9 ***
***
Alexander Smirnov (1):
Fix cross-endianness for masks (1-bit depth images)
Bernhard Übelacker (1):
gif: fix oob reads w/bad colormaps
Kim Woelders (16):
Fix "assuming signed overflow does not occur" warning.
Fix some "variable set but not used" warnings.
Fix some "variable might be clobbered" warnings.
Fix off-by-one OOB read in __imlib_MergeUpdate().
Revert "gif: fix oob reads w/bad colormaps"
GIF loader: Fix out-of-bound reads from colormap.
GIF loader: Remove check made redundant by previous commit.
GIF loader: Reduce progress checks from per-pixel to per-row.
GIF loader: Indent.
Fix potential divide-by-zero in imlib_image_draw_ellipse().
Make a number of functions static.
Eliminate pImlibExternalFilter type.
Trivial file function cleanups.
Move __imlib_ItemInList() to file.c.
Fix various potential OOM crashes.
1.4.9.
Yuriy M. Kaminskiy (3):
Fix integer overflow resulting in insufficient heap allocation
loader_xpm: remove nonsense/impossible/broken condition
Harden API and internals against overly large images
***
*** Version 1.4.8 ***
***
Chloe Kudryavtsev (1):
add time.h include to common.h for time_t
FRIGN (1):
Add a Farbfeld loader
Kim Woelders (4):
Remove redundant config.h.
Add compile to MAINTAINERCLEANFILES.
Indent.
1.4.8.
Quentin Rameau (2):
Fix bz2 loader filename check
Fix zlib loader filename check
pkgsrc changes:
o Add LICENSE
o Remove no more needed patches and while here add a comment to all patches
Changes:
Fabian Keil (14):
Prevent division-by-zero crashes
imlib_conv: Use proper buffer size to prevent invalid write of size one
loader_gif: Don't read uninitilized memory in case of invalid input
loader_gif(): Abort gif parsing if DGifGetLine() fails
Fix segfault when opening input/queue/id:000007,src:000000,op:flip1,pos:51 with feh
Make IMAGE_DIMENSIONS_OK() more restrictive
load_pnm: Deal with fread() errors consistently
__imlib_LoadImage(): Additionally check loader_ret to detect loader failures
loader_tga: Abort file loading if the file obviously isn't large enough
imlib_save_image(): Check loader return code for errors
loader_tga.c: Properly signal if decoding uncompressed BGRA data failed
loader_tga.c: Properly signal if decoding RLE compressed data failed
imlib_save_image_with_error_return(): Check loader return code to prevent use of unitialized memor
load_gif: Make sure rows isn't used partly unitialized
Heiko Becker (1):
GIF loader: Fix for libgif version 5.1
Kim Woelders (20):
GIF loader: Fix for libgif version 5.
Remove OS/2 support.
Remove empty format.c/h.
Header file cleanups.
GIF loader: Simplify error handling.
GIF loader: Fix segv on images without colormap.
Revert "__imlib_LoadImage(): Additionally check loader_ret to detect loader failures"
Revert "loader_gif(): Abort gif parsing if DGifGetLine() fails"
JPEG loader: Fix load() return code when only reading header.
BMP loader: Simplify pixel fetch.
Autofoo update (AC_PROG_LIBTOOL -> LT_INIT).
Autofoo macro cleanups (ac_->ec_).
Change a number of internal function names.
Indent.
Don't include Imlib2.h indirectly via image.h.
Remove __hidden.
Enable visibility hiding by default.
Indent the remaining unindented files.
Generate a ChangeLog using git shortlog between existing tags.
Michał Górny (1):
fix -I flags to support building out-of-source
Mike Frysinger (5):
simplify --enable-visibility-hiding handling
imlib2-config: delete old reference to @my_libs@
check return value of fread/write funcs
fix X_DISPLAY_MISSING redefined warnings when X is disabled
do not link with X libs when X is disabled
Problems found with existing digests:
Package fotoxx distfile fotoxx-14.03.1.tar.gz
ac2033f87de2c23941261f7c50160cddf872c110 [recorded]
118e98a8cc0414676b3c4d37b8df407c28a1407c [calculated]
Package ploticus-examples distfile ploticus-2.00/plnode200.tar.gz
34274a03d0c41fae5690633663e3d4114b9d7a6d [recorded]
da39a3ee5e6b4b0d3255bfef95601890afd80709 [calculated]
Problems found locating distfiles:
Package AfterShotPro: missing distfile AfterShotPro-1.1.0.30/AfterShotPro_i386.deb
Package pgraf: missing distfile pgraf-20010131.tar.gz
Package qvplay: missing distfile qvplay-0.95.tar.gz
Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden). All existing
SHA1 digests retained for now as an audit trail.
- TGA loader: Fix for corrupt RLE format.
- Fix drawing of closed polygons in certain situations (ticket 2309).
- Set warning options when using gcc.
- Silence compiler warnings.
- Don't set -std=gnu99.
- XPM loader: Simplify and fix certain case of cpp > 2.
to address issues with NetBSD-6(and earlier)'s fontconfig not being
new enough for pango.
While doing that, also bump freetype2 dependency to current pkgsrc
version.
Suggested by tron in PR 47882
libXext/buildlink3.mk, now that it is included there.
Leave the places where its API version is set or variables from it
are used directly (about 3 packages).
alternative from mk/jpeg.buildlink3.mk
This allows selection of an alternative jpeg library (namely the x86 MMX,
SSE, SSE2 accelerated libjpeg-turbo) via JPEG_DEFAULT=libjpeg-turbo, and
follows the current standard model for alternatives (fam, motif, fuse etc).
The mechanical edits were applied via the following script:
#!/bin/sh
for d in */*; do
[ -d "$d" ] || continue
for i in "$d/"Makefile* "$d/"*.mk; do
case "$i" in *.orig|*"*"*) continue;; esac
out="$d/x"
sed -e 's;graphics/jpeg/buildlink3\.mk;mk/jpeg.buildlink3.mk;g' \
-e 's;BUILDLINK_PREFIX\.jpeg;JPEGBASE;g' \
< "$i" > "$out"
if cmp -s "$i" "$out"; then
rm -f "$out"
else
echo "Edited $i"
mv -f "$i" "$i.orig" && mv "$out" "$i"
fi
done
done