2005-03-10 Tor Lillqvist <tml@novell.com>
* gdk-pixbuf-core.h
* gdk-pixbuf-io.c
* gdk-pixbuf.symbols: Implement DLL ABI stablility for
gdk_pixbuf_save() and gdk_pixbuf_savev(). (#167973)
2005-03-07 Matthias Clasen <mclasen@redhat.com>
* io-xpm.c: Use a generated table of offsets
into a big const string to avoid relocations
in the rgb color table. (#168901, Tommi Komulainen)
* gen-color-table.pl: Script to generate the table,
copied from Owen Taylors script by the same name
in Pango.
* xpm-color-table.h: The generated table.
2005-03-03 Matthias Clasen <mclasen@redhat.com>
Make the gif loader handle oom when loading
animations. (#168857, Tommi Komulainen)
* io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
Handle oom by returning NULL.
* io-gif.c (gif_get_lzw): Return an error if composite
returns NULL.
2005-03-01 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf/gdk-pixbuf.c:
* gdk-pixbuf/gdk-pixbuf-features.h.in:
Revert the previous change, since it breaks
bin compat.
2005-02-15 Matthias Clasen <mclasen@redhat.com>
* io-pnm.c (pnm_skip_whitespace): Don't read over the end of
the buffer if '#' appears at the very end. (#167141, Doug Morgan)
2005-02-07 Matthias Clasen <mclasen@redhat.com>
* io-pnm.c (pnm_read_next_value): Pass in the max number
of bytes to read.
(pnm_read_ascii_scanline): And use it here to enable
parsing of pbm images without whitespace between the
pixels. (#165803, Samuel Hym)
2005-01-22 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type)
(gdk_pixbuf_loader_new_with_mime_type): Close the loader
before unreffing it in the error case. (#164915, Crispin
Flowerday)
2005-01-12 Owen Taylor <otaylor@redhat.com>
* configure.in: Remove GLIB_DIVERT_BEFORE_HELP() on
initialization of gdktarget, that was causing it to be
evaluated before host was set. Simplify --with-gdktarget help
message.
* gtk/Makefile.am: Use grep | head -n 1 instead of grep -m 1
which doesn't work with slightly older versions of GNU grep
in install-libtool-import-lib rule.
2005-01-02 Matthias Clasen <mclasen@redhat.com>
* pixops/pixops.c (bilinear_box_make_weights): Really fix the
math to make the vectors sum up to 1, making GDK_INTERP_HYPER
work again. (#162703, Dennis Nezic)
Wed Dec 22 01:17:44 2004 Jonathan Blandford <jrb@redhat.com>
* queryloaders.c (main): print out the version and binary name in
the header comment. Problem reported by Seth Nickell.
2004-12-05 Tor Lillqvist <tml@iki.fi>
* gdk-pixbuf-animation.c
* gdk-pixbuf-io.c
* io-xbm.c
* io-xpm.c
* make-inline-pixbuf.c
* queryloaders.c: Use gstdio wrappers. Document that file names
are in the GLib file name encoding.
* gdk-pixbuf-csource.c
* queryloaders.c: On Windows, convert command line arguments and
environment variable values from locale encoding to UTF-8.
* queryloaders.c: On Windows, use wide character API when
available.
* Makefile.am
* gdk-pixbuf-core.h
* gdk-pixbuf-io.c
* gdk-pixbuf-animation.h
* gdk-pixbuf-animation.c: Like in GLib, for DLL ABI stability on
Windows, add binary compatibility versions of functions that take
file names as arguments. They use the system codepage, not GLib
file name encoding (which is UTF-8 on Windows). Use #defines to
make newly compiled code use the "real" functions that use the
GLib file name encoding scheme.
2004-12-03 Tor Lillqvist <tml@iki.fi>
* gdk-pixbuf/Makefile.am (gdk_pixbuf.def)
* gdk/Makefile.am (gdk.def)
* gtk/Makefile.am (gtk.def): Work around gcc misfeature. At least
gcc 3.3.1 doesn't like to do -E on files that it thinks aren't
source files. Use redirection and '-' instead.
2004-11-29 Matthias Clasen <mclasen@redhat.com>
* gtk/Makefile.am (gtkalias.h):
* gdk/Makefile.am (gdkalias.h): Use the perl found by
configure. (#149826, Morten Welinder)
2004-11-23 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-core.h: Don't mark gdk_pixbuf_error_quark() as const,
to be consistent with all the other error_quark functions.
(technically they are const, but since these are called only
in error paths, giving the compiler better optimization
opportunities doesn't matter much)
* gdk-pixbuf.symbols: Add attribute annotations.
* makegdkpixbufalias.pl: Keep attribute annotations, but strip PRIVATE.
* Makefile.am (gdk_pixbuf.def): Strip attribute annotations, but keep
PRIVATE.
Mon Nov 15 18:58:22 2004 Manish Singh <yosh@gimp.org>
* gdk-pixbuf-private.h: _gdk_pixbuf_lock now returns a gboolean.
* abicheck.sh: don't hardcode lengths for cut, instead split on
the third field.
2004-11-15 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-animation.c:
* gdk-pixbuf-loader.c:
* gdk-pixbuf-io.c: Be extra careful when locking and handle
the case that the module may initialize the thread system.
* gdk-pixbuf-io.[hc] (_gdk_pixbuf_lock): Return whether the
lock was actually taken.
2004-11-12 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-io.c (gdk_pixbuf_io_init): Don't use
_gdk_pixbuf_load_module_unlocked() in the !USE_GMODULE case.
2004-11-12 Matthias Clasen <mclasen@redhat.com>
Changes to make gdk-pixbuf threadsafe (#157310, #157306,
Colin Walters):
* gdk-pixbuf-io.h (enum GdkPixbufFormatFlags): Add
GDK_PIXBUF_FORMAT_THREADSAFE to indicate that an image loader
is threadsafe.
* gdk-pixbuf-io.c (get_file_formats, _gdk_pixbuf_load_module):
Use a lock to make initialization of global data structures
threadsafe.
* gdk-pixbuf-private.h:
* gdk-pixbuf-io.c (_gdk_pixbuf_lock, _gdk_pixbuf_unlock):
Auxiliary functions which use another lock to protect
threadunsafe image loaders.
* gdk-pixbuf-io.c (gdk_pixbuf_real_save):
(save_to_callback_with_tmp_file):
(gdk_pixbuf_real_save_to_callback):
(gdk_pixbuf_new_from_xpm_data):
(_gdk_pixbuf_generic_image_load):
* gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module):
(gdk_pixbuf_loader_close):
(gdk_pixbuf_loader_finalize):
Use _gdk_pixbuf_lock() and _gdk_pixbuf_unlock().
* io-ani.c, io-bmp.c, io-gif.c, io-ico.c:
* io-jpeg.c, io-pcx.c, io-png.c, io-pnm.c:
* io-ras.c, io-tga.c, io-wbmp.c, io-xbm.c:
* io-xpm.c: Mark as threadsafe.
* io-tiff.c: Remove pointless locking, mark as
threadunsafe.
2004-11-11 J. Ali Harlow <ali@juiblex.co.uk>
* gdk/Makefile.am:
* gdk-pixbuf/Makefile.am:
* gtk/Makefile.am (gtk.def): Use embedded tab rather than '\t'
escape sequence. (#157949)
2004-11-10 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-animation.c:
* gdk-pixbuf-io.c: Use g_filename_display_name() instead of
g_filename_to_utf8() when putting filenames in error messages.
2004-11-04 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf.c (gdk_pixbuf_class_init): Document current
restrictions for property values. (#157409, Matthew H. Plough)
2004-11-01 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-features.h.in: Break the declaration of the three
version variables, so that gtk-doc can grok it.
Tue Sep 14 22:01:49 2004 Matthias Clasen <maclas@gmx.de>
* configure.in: New option --disable-visibility to disable
the use of ELF visibility attributes for PLT reduction.
* gtk/makegtkalias.pl:
* gdk/makegdkalias.pl: Respect the DISABLE_VISIBILITY
define.
2004-09-09 Matthias Clasen <mclasen@redhat.com>
* gtk/makegtkalias.pl:
* gdk/makegdkalias.pl: Use the short prefix "IA__" for
aliases instead of the long suffix "__internal_alias".
Thu Aug 26 01:23:16 2004 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf-core.h:
* gdk-pixbuf.symbols:
* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale):
Add gdk_pixbuf_new_from_file_at_scale(), which is just
like gdk_pixbuf_new_from_file_at_size(), but optionally
ignores the aspect ratio. (#136395, Dom Lachowicz)
2004-08-24 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_mime_type): Use
the correct index, and compare correctly, reported by Tommi Komulainen.
2004-08-24 Matthias Clasen <mclasen@redhat.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_mime_type): Use
the correct index, reported by Tommi Komulainen.
2004-08-24 Matthias Clasen <mclasen@redhat.com>
* gdk-pixdata.c (gdk_pixdata_from_pixbuf): Work around bugs in
the runlength encoder by forcing rowstride * height to be
divisible by bpp. (#150882)
Sun Aug 22 03:20:56 2004 Matthias Clasen <maclas@gmx.de>
* pixops/pixops.c (pixops_scale_nearest): Fix a mixup in the handling
of dest_channels. (#111922, Christophe Fergeau)
Fri Aug 20 11:59:10 2004 Owen Taylor <otaylor@redhat.com>
* io-bmp.c: Fix infinite loop that can occur for bad
image data (#150601, Chris Evans, Manish Singh)
2004-08-17 Matthias Clasen <mclasen@redhat.com>
* gtk/abicheck.sh: No need for INCLUDE_INTERNAL_SYMBOLS anymore.
* gdk/gdk.symbols: Don't use #if defined().
* gdk/Makefile.am (gdkalias.h):
* gtk/Makefile.am (gtkalias.h): Don't use cpp to filter gtk.symbols.
* gdk/makegdkalias.pl:
* gtk/makegtkalias.pl: Move the #ifdef processing into the perl script, and
keep the #ifdefs which differentiate between platforms.
* gtk/Makefile.am (gtk_private_h_sources): Remove gtkinternals.h, it is no
longer needed.
Thu Aug 12 22:19:12 2004 Matthias Clasen <maclas@gmx.de>
* io-bmp.c (DecodeHeader): Properly determine the number of
colors in an OS/2 BMP file. (#150003, Jon-Kare Hellan)
2004-08-11 Matthias Clasen <mclasen@redhat.com>
* pixops/pixops-internal.h:
* pixops/pixops.c:
* pixops/*.S: underscore prefix the mmx implementations, in order
to not export them.
* gdk-pixbuf.symbols: Remove the mmx pixops implementations.
* abicheck.sh: No need to define INCLUDE_MMX_SYMBOLS any more.
Tue Aug 10 23:53:59 2004 Matthias Clasen <maclas@gmx.de>
Add hidden aliases for exported symbols which are
used internally in order to get rid of many PLT
entries. (#145519, Arjan van de Ven)
* gdk/Makefile.am: Add rules to generate gdk_pixbuf.def and
gdk-pixbuf-alias.h from gdk-pixbuf.symbols, and make make
check check the abi with abicheck.sh.
* gdk/gdk-pixbuf.symbols: New file. Definition of the gdk-pixbuf
ABI. The file can be processed by cpp to filter out certain
subsets of symbols.
* gdk/abicheck.sh: New file. Script to check the actually
symbols exported from libgdk_pibuf.2.0.so against the symbols
found in gdk-pixbuf.symbols.
* gdk/makegdkpixbufalias.pl: New file. Perl script to generate the
header containing the alias definitions for internally used
exported symbols from a list of symbols.
* *.c: Include gdk-pixbuf-alias.h
Fri Jul 9 15:38:06 2004 Manish Singh <yosh@gimp.org>
* gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled): function doesn't
return a value, so don't use g_return_val_if_fail()
* gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple): initialize dest in
the can't happen case, to quiet gcc.
* io-tiff.c (tifflibversion): enclose in #if TIFFLIB_VERSION >=
20031226.
2004-07-06 Tor Lillqvist <tml@iki.fi>
* gdk-pixbuf-features.h.in: Mark the version variables for proper
import and export from Windows DLLs. Thanks to Laurent Sansonetti
for reporting the problem.
Sat Jul 3 00:41:44 2004 Matthias Clasen <maclas@gmx.de>
* pixops/pixops.c (bilinear_box_make_weights): Correct the
math to calculate bilinear weights. (#112412, Brian Cameron)
Mon Jun 21 00:44:51 2004 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf-transform.h:
* gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple):
* gdk-pixbuf-scale.c (gdk_pixbuf_flip): New functions to
rotate pixbufs by multiples of 90 degrees and to flip them
horizontally or vertically.
2004-06-16 Matthias Clasen <mclasen@redhat.com>
* io-tiff.c: Make the tiff loader work with both
libtiff 3.5.7 and libtiff 3.6.1. (#135541, Marco Ghirlanda)
Fri Jun 11 22:02:56 2004 Matthias Clasen <maclas@gmx.de>
* io-gif.c, io-pnm.c, io-tga.c, io-xpm.c: Don't use
contractions like "don't" or "isn't" in error messages.
It isn't nice to use them in log entries either...
(#137774, Morten Welinder, patch by Alexander Winston)
Sat Jun 5 00:59:12 2004 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf-animation.c:
* gdk-pixbuf-io.c: Convert filenames to UTF-8 when embedding
them in error messages. (#143654, Sven Neumann)
Wed May 5 23:09:48 2004 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf-io.h (GdkPixbufFormatFlags): New format flag
GDK_PIXBUF_FORMAT_SCALABLE to mark scalable formats.
* gdk-pixbuf.h:
* gdk-pixbuf-io.c (gdk_pixbuf_format_is_scalable): New function.
(#137995, Dom Lachowicz)
2004-04-13 Matthias Clasen <mclasen@redhat.com>
* io-ani.c (gdk_pixbuf__ani_image_load_animation):
* gdk-pixbuf-io.c (gdk_pixbuf_get_file_info)
(_gdk_pixbuf_generic_image_load)
(gdk_pixbuf_new_from_file_at_size): When calling fread()
in a loop, check for ferror() as well as for feof() to
avoid infinite loops on directories. (#137804, Alex Converse)