* test-images.h: Add valid_ras_test and invalid_bmp_1.
* test-loaders.c (main): Add random tests for ras and pnm and an
invalid bmp which was a crasher until my 2002-03-12 commit.
* io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
pixbuf on errors.
* io-ras.c: Handle some errors.
2002-03-12 Sven Neumann <sven@gimp.org>
* gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
calling memcpy(). Simpler and potentially faster. (#70332)
Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
* gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
can't load the module using the g_module_build_path()
filename, try loading it as a .la file.
* test-loaders.c: Look for modules in current directory
rather than .libs, so we find the right .la files.
* test-loaders.c: Back out some accidental commits.
2002-03-03 Tor Lillqvist <tml@iki.fi>
* gtk-pixbuf.rc.in: Remove.
* gdk_pixbuf.rc.in: Name like this instead (wrong name used by
mistake by Hans).
* makefile.msc: Corresponding changes.
* Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
Sat Mar 2 14:32:50 2002 Owen Taylor <otaylor@redhat.com>
* configure.in: Default to --disable-gtk-doc (avoid Jade
breakage) and --disable-static (static linking causes
problems with Xft changes.)
* autogen.sh: Add --enable-gtk-doc by default.
* Makefile.am: Add a 'mydistcheck' rule that passes
--enable-gtk-doc to the configure since that is needed
for 'make dist'.
* docs/tutorial/Makefile.am (dist-hook): Don't distribute
the PDF file. (Rule doesn't work on my system, plus it's
big.)
* gtk/Makefile.am: 'make dist' fixes.
Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
* gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
() to group around string assigned to char[]. (#72767,
Tomas gren)
2002-02-21 Havoc Pennington <hp@pobox.com>
* gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
C++-commented debug spew, reported by David L. Cooper
* docs/tutorial/gtk-tut.sgml, examples/paned/paned.c,
examples/paned/Makefile: Make the paned example deprecation-clean.
* various ChangeLog files: correct my email.
* pixops/pixops.c (correct_total): New function to make sure
that the weights sum up to the correct total without introducing
negative weights.
(tile_make_weights, bilinear_make_fast_weights,
bilinear_make_weights): Use correct_total.
* test-images.h (tiff1_test_3), test-loaders.c (main): Add a
(#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
* io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
* test-images.h (ico_test_2), test-loaders.c (main): Test the
previous change.
* io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
beyond the end of buffer if width % 8 != 0.
* io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
the supported types, otherwise parse_data_for_row () will not make
any progress, leading to an infinite loop.
Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
* pixops/pixops.c: Force all weight arrays to sum exactly
to 65535. (Fixes#70971, reported by Federico Mena Quintero)
* Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
libpixops.la.
* io-ico.c: Merge 16- and 32-bit ico support from the stable
branch. (#61179)
* io-gif.c: Recomposite all images if the animation size changes
while loading. (#70055)
* gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
(#70055)
Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
* io-jpeg.c, io-png.c: Made sure all the error cases involving
jpeg or png load/saves clean themselves up properly. Marked some
variables needed for cleanup volatile so they aren't clobbered by
setjmp.
Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
* pixops/pixops.c: Fix integer overflow for the values
passed to the pixel functions. (#55148)
Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
* pixops/pixops.c (pixops_scale_nearest): Remove meaningless
FIXME.
* pixops/pixops.c (pixops_process): Comment the computation
of run_end_index and fix some edge cases.
* pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
composite_line_color_22_4a4_mmx.S}: Handle the case where
dest <= dest_end properly. (#52001)
Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
* Makefile.am (s-enum-types-h): Include glib-object.h,
Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
Mikael Hermansson)
* *.h: G_BEGIN_DECLS cleanups.
Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
* gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
- Massive cleanup, make actually legible.
- Fix some clamp-to-range bugs found by Jim Cape (#68231).
- Add a g_return_if_fail() if src and dest alpha don't match.
- Allow for src_rowstride != dest_rowstride.
Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
* pixops/pixops.c (scale_line_22_33): Fix and uncomment
non-MMX version.
* pixops/pixops.c (pixops_composite_nearest): Remove a
division.
* pixops/pixops.c (pixops_composite): Add some docs
about the parameters.
* pixops/README: Add notes about the correct algorithms
for alpha compositing and how to implement them quickly.
2001-12-16 Havoc Pennington <hp@pobox.com>
* gdk-pixbuf/tmpl/scaling.sgml: small doc tweaks, specifically
some "just do XYZ" advice next to the InterpMode technojargon.
2001-12-16 Havoc Pennington <hp@pobox.com>
* gdk-pixbuf-scale.c: docs enhancements
2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
assorted G_OBJECT casts where unnecessary.
* gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
resp.
* gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
gdk_pixbuf_unref.
* Makefile.am, pixops/Makefile.am: Compile everything with
-DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
* gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
* io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
* demos/testpixbuf-drawable.c, demos/testpixbuf-save.c,
demos/testpixbuf-scale.c, demos/testpixbuf.c: Call g_object_ref
and g_object_unref instead of gdk_pixbuf_ref and gdk_pixbuf_unref
resp.
Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
* io-xpm.c (pixbuf_create_from_xpm): Fill in color
fields to black for transparent colors since we'll
later initialize pixels from them. (Fixes purify
errors, #66093, HideToshi Tajima)
Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
* gdk-pixdata.c (gdk_pixdata_deserialize): Fix
alignment problem in deserialization, (#65785,
reported by Hidetoshi Tajima)
2001-11-28 Manish Singh <yosh@gimp.org>
* gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
in missing error parameters to DecodeHeader and DecodeColormap.
2001-11-21 Federico Mena Quintero <federico@ximian.com>
Fix Ximian bug #12125; merged from gdk-pixbuf stable.
* gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
a simple state machine instead of a scary if/else chain.
(DecodeHeader): Set the reading state.
(DecodeColormap): Set the reading state.
(decode_bitmasks): New function, decodes the bitmasks for
BI_BITFIELDS coding.
(OneLine32): Handle BI_BITFIELDS coding.
(OneLine16): Likewise.
2001-11-18 Hans Breuer <hans@breuer.org>
* io-xpm.c : use g_strcasecmp(), some poor platforms
don't have strcasecmp()
* makefile.msc : do INCLUDE_png etc. definition here to avoid
my temporary 'gdk-pixbuf-io-include.h' hack
2001-10-28 Hans Breuer <hans@breuer.org>
* gtk/gtkfontsel.c : use g_strcasecmp(), some poor platforms
don't have strcasecmp()
* gtk/gtktextview.c : to fix crashing on e.g. TextView::find need
to remove the idle funcs in gtk_text_view_destroy (). To reduce
code duplication wrap it in its own function and use it in
gtk_text_view_unrealize () and gtk_text_view_destroy_layout ()
* gdk/win32/gdkdrawable-win32.c : implement the finalize
method like the X11 version does, allow to set_colormap NULL
* gdk/win32/gdkwindow-win32.c : adapt GdkWindowImplWin32::
set_colormap, also some adaption to X11 version :
(gdk_window_hide) call _gdk_window_clear_update_area
(gdk_window_reparent) call _gdk_window_init_position
* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints) :
call gdk_window_resize() after all hints are set, because the
window resizing process (WM_GETMINMAXINFO) takes all of them into
account
* gdk/win32/gdkfont-win32.c : make gdk_font_equal return a gboolean
* gdk/win32/gdkvisual-win32.c : register GdkVisual with
sizeof (GdkVisualPrivate)
* gdk/gdk.def gtk/gtk.def : upated externals
* gdk/makefile.msc gdk/win32/makefile.msc gdk-pixbuf/makefile.msc
gdk-pixbuf/pixops/makefile.msc gtk/makefile.msc.in tests/makefile.msc :
from now on use make.msc from $(TOP)/glib/build/win32
* gtk/stock-icons/makefile.msc : add stock_missing_image
2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdk-pixbuf/tmpl/refcounting.sgml,
gdk-pixbuf/porting-from-imlib.sgml, tmpl/creating.sgml:
gdk_rgb_init() doesn't need to be called anymore. Use
g_object_(un)_ref instead of gdk_pixbuf_(un)ref.
* tmpl/module_interface.sgml: Typo fix.
* gdk-pixbuf/gdk-pixbuf.sgml: Fixed jade complaining about '_' by
replacing it with '-'. Now builds again.
* gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
2001-10-29 Tor Lillqvist <tml@iki.fi>
* Makefile.am: Use -no-undefined on Win32. Make
libgdk_pixbuf_1_3_la_OBJECTS depend on
gdk-pixbuf-marshal.c. Install import libraries.
* gdk_pixbuf.def: Update.
* gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
the actual DLL name of libgdk_pixbuf.
(get_libdir): Use it instead of guessing.
* io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
g_file_open_tmp() insread of mkstemp().
2001-10-26 Hans Breuer <hans@breuer.org>
* gdk-pixbuf/gdk_pixbuf.def :
* gdk/gdk.def :
* gtk/gtk.def : updated externals
* gdk/win32/gdkpixmap-win32.c : removed duplicate of
gdk_window_lookup implementation. It already was in
gdk/win32/gdkwindow-win32.c
* gdk/win32/gdkproperty-win32.c : made it compile again
after GdkAtom API change
* gtk/gtk/makefile.msc.in : updated
Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
* gdk-pixdata.c gdk-pixbuf.h: Get rid of
GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
existing UKNOWN_TYPE error. (#58308)
* gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
back to gdk_pixbuf_new_from_inline(). Rework docs to try
and be helpful for the common case. (#58308)
2001-10-05 Sven Neumann <sven@gimp.org>
* gdk-pixbuf/gdk-pixbuf-io.c
* gdk-pixbuf/gdk-pixbuf-private.h
* gdk-pixbuf/gdk-pixbuf.c
* gdk-pixbuf/gdk-pixbuf.h
* gdk-pixbuf/io-jpeg.c
* gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
new public API gdk_pixbuf_get_option() to retrieve key/value pairs
set by an image loader. Added support for saving and reading PNG tEXt
chunks in PNG images.
* demos/testpixbuf-save.c
* demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk
feature.
* gdk-pixbuf/tmpl/gdk-pixbuf.sgml: adapt to changes in GDK_PIXBUF_ERROR
enum.
Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
* gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
use a macro to make code a bit more readable.
Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
* io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
works in some on-demand way, so the fseek gdk_pixbuf_new_from_file() doesn't
work here since we are using the raw file descriptor. So, we call lseek()
on the fileno(f) before using it. (#60840).
2001-09-20 James Henstridge <james@daa.com.au>
* Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
so that flags types are registered as flags rather than enums (not
that there are any flags here at the moment).
Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
* Makefile.am (gdk_pixbuf_headers): Don't include
gkd-pixbuf-features.h here since is in builddir
and confuses autogen rules.
* Makefile.am: Don't += variables before they have values,
automake-1.5 doesn't like it.
* Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
* Makefile.am: The whitespace strikes back.
Wed Sep 19 02:50:40 2001 Tim Janik <timj@gtk.org>
* demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
as its broken in automake 1.4, add explicit object rule to
generate this.
* gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
get rid of uneccessary stamps, group stuff more logically, and build
sources due to object rules. fix srcdir!=builddir.
2001-09-18 Matt Wilson <msw@redhat.com>
* docs/Makefile.am (EXTRA_DIST): don't use += before =
* docs/faq/Makefile.am (EXTRA_DIST): likewise
* docs/tutorial/Makefile.am (EXTRA_DIST): likewise
* gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
(EXTRA_HEADERS): likewise
* gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
(EXTRA_HEADERS): likewise
(EXTRA_DIST): likewise
(CLEANFILES): likewise
* gtk/stock-icons/Makefile.am (CLEANFILES): likewise
* tests/Makefile.am (EXTRA_DIST): likewise
* Makefile.am (install-data-local): changed to use
install-data-hook, which runs after install-pkgconfigDATA, so that
the pkgconfigdir will have been created and populated first.
gdk-pixbuf/ChangeLog
2001-09-17 Matt Wilson <msw@redhat.com>
* Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
LDFLAGS definition, use the -avoid-version one.
(libpixbufloader_tga_la_LDFLAGS): likewise
Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
* Makefile.am: don't used BUILT_SOURCES to build marshal
files, as in conjunction with stamp files, this can
lead to endless rebuilding loops.
Tue Sep 4 09:37:19 2001 Owen Taylor <otaylor@redhat.com>
* Version 1.3.7
* configure.in docs/Makefile.am docs/gtk-config.1.in: Remove
docs for gtk-config
* modules/input/Makefile.am (install-data-local): Don't
run gtk-query-immodules if DESTDIR is set.
* NEWS: Various additions.
gdk-pixbuf/test-loaders.c (main): Remove C++ comments.
demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
only in response to an area_prepared signal.
Wed Aug 22 19:15:39 2001 Owen Taylor <otaylor@redhat.com>
[ Patch from Sebastian Wilhelmi, 52790 ]
* gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
* gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h:
Move compatibility macros from g[dt]kcompat.h to within
#ifndef G[DT]K_DISABLE_DEPRECATED in each file.
* gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
* demos/Makefile.am demos/gtk-demo/Makefile.am
docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
* demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
testpixbuf.c}: Fix usages of deprecated functions.
* test-images.h, test-loaders.c: Add ico and wbmp tests.
* io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
error if buffer allocation fails.
* io-ico.c: Make .ICO loader more robust.
All of these are due to sandmann@daimi.au.dk (#50187)
2001-08-19 Sven Neumann <sven@gimp.org>
* pixops/pixops.c: applied some simple but effective optimizations
to pixops_composite_nearest() and pixops_composite_color_nearest().
2001-07-20 Hans Breuer <hans@breuer.org>
* gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
pointer increment out of the macro, because at least one
compiler (msvc 5.0) gets confused otherwise (applies the
wrong increment).
* gdk_pixbuf.def : updated exports
* makefile.msc : reflect gdk-pixbuf-csource changes
* gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
* io-png.c: (setup_png_transformations): Add ifdef so we compile
without warnings with G_DISABLE_CHECKS on.
* io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
const.
* io-wbmp.c: (getin), (get_mbi): Add a missing const.
* io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
unused locals and add an initial value to quiet the compiler's
unintialized variable warning.
* pixops/pixops.c: Put an ifdef around some dead code.
Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
* pixops/Makefile.am (noinst_LTLIBRARIES): Switch
over to the new include flags AC_SUBST(). (Problem
pointed out by Mikael Hermansson.)