1 2006-05-04 Matthias Clasen <mclasen@redhat.com>
3 * === Released 2.9.0 ===
5 2006-04-04 Matthias Clasen <mclasen@redhat.com>
8 * gdk-pixbuf.c: Use G_DEFINE_TYPE.
10 * gdk-pixbuf.c: No point in making the error path fast by
13 2006-03-24 Matthias Clasen <mclasen@redhat.com>
15 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Remove a
16 pointless check, pointed out by Kjartan Maraas.
18 2006-03-22 Matthias Clasen <mclasen@redhat.com>
20 * gdk-pixbuf-loader.c: Add some documentation about
21 supported image formats, and how to find out about them.
22 (#335536, Murray Cumming)
24 2006-03-20 Matthias Clasen <mclasen@redhat.com>
26 * gdk-pixbuf-animation.c:
30 * io-gif.c: Always save errno to a temporary before making
31 other calls. (#335179, Morten Welinder)
33 2006-03-14 Matthias Clasen <mclasen@redhat.com>
35 * io-gif.c (gdk_pixbuf__gif_image_load): Add a shortcut
36 to stop the gif mainloop after the first frame, if that
37 is all we are interested in. (#334538)
39 2006-03-03 Matthias Clasen <mclasen@redhat.com>
41 * io-pnm.c: Support pnm files with maxval > 255.
42 (#327560, Matthijs Douze)
44 2006-03-03 Matthias Clasen <mclasen@redhat.com>
46 * io-pcx.c (pcx_load_palette_8): Fix incremental loading
47 of 8-bit pcx files. (#148518, Magnus Bergmann)
49 2006-02-28 Anders Carlsson <andersca@imendio.com>
52 Update documentation now that tiff supports saving.
61 (tiff_load_unmap_file):
62 (gdk_pixbuf__tiff_image_stop_load):
63 Rename callback functions that are used during loading.
70 (create_save_context):
72 New callback functions which operate on a memory buffer.
74 (gdk_pixbuf__tiff_image_save_to_callback):
75 Implement saving of pixbufs to tiffs.
78 (gdk_pixbuf__tiff_image_save):
79 New function that saves a pixbuf to a FILE handle. Uses
86 Change flags since this module supports writing now.
88 2006-02-10 Matthias Clasen <mclasen@redhat.com>
95 * io-xpm.c: Always check for NULL when using callbacks.
96 (#330563, Benjamin Otte)
98 2006-01-18 Matthias Clasen <mclasen@redhat.com>
100 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't cast
101 the results of g_new(). (#327423, Morten Welinder)
103 2006-01-12 Federico Mena Quintero <federico@ximian.com>
105 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Clarify
106 the docs ("darkened/brightened" is not "saturation").
108 Fri Dec 30 00:59:21 2005 Jonathan Blandford <jrb@redhat.com>
110 * gdk-pixbuf-io.c (gdk_pixbuf_format_get_license): minor doc edit.
112 2005-12-16 Matthias Clasen <mclasen@redhat.com>
114 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module_unlocked): Use
115 G_MODULE_BIND_LOCAL when opening modules.
117 2005-12-14 Michael Natterer <mitch@imendio.com>
119 * io-jpeg.c (gdk_pixbuf__jpeg_image_load_lines): new utility
120 function which factors out massive code duplication from the
123 2005-12-14 Michael Natterer <mitch@imendio.com>
125 * io-jpeg.c: applied patch from maemo-gtk which avoids the
126 allocation of an intermediate buffer for non-progressive
127 jpegs. Fixed bug #305894.
129 2005-11-15 Matthias Clasen <mclasen@redhat.com>
131 * io-xpm.c: Fix several integer overflows which have been
132 reported as CVE-2005-3186 and CVE-2005-2975.
134 2005-10-12 Matthias Clasen <mclasen@redhat.com>
136 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Only call
137 gdk_pixbuf_loader_eat_header_write() when count > 0. (#318589,
140 2005-10-03 Matthias Clasen <mclasen@redhat.com>
142 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
143 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
144 * gdk-pixbuf-loader.c: Use a 1k buffer for sniffing image formats,
145 instead of 128 or 256 bytes. (#317225, Sebastien Bacher,
148 2005-09-05 Matthias Clasen <mclasen@redhat.com>
150 * io-tga.c (parse_rle_data): Remove unused variable
151 pbuf_count. (#315282, Kjartan Maraas)
153 2005-08-31 Matthias Clasen <mclasen@redhat.com>
155 * Makefile.am (gdk-pixbuf-enum-types.c): Intern type
156 names in code generated by glib-mkenums, too.
158 * io-ani-animation.c (gdk_pixbuf_ani_anim_iter_get_type)
159 (gdk_pixbuf_ani_anim_get_type):
160 * io-gif-animation.c (gdk_pixbuf_gif_anim_get_type)
161 (gdk_pixbuf_gif_anim_iter_get_type):
162 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type):
163 * gdk-pixbuf.c (gdk_pixbuf_get_type):
164 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
165 Intern type names before registering the type to avoid
168 2005-08-30 Matthias Clasen <mclasen@redhat.com>
170 * gdk-pixbuf-io.c (format_check): Make this work again.
172 * io-png.c (png_save_to_callback_write_func): Add a cast
173 to avoid compiler warnings.
175 * pixops/timescale.c (main): Declare src_buf, dest_buf as
176 unsigned to avoid compiler warnings.
178 * gdk-pixbuf-io.h: Declare the prefix and mask members of
179 GdkPixbufModulePattern as char*, to avoid compiler warnings.
181 * io-ani.c (ani_load_chunk): Use g_try_new() in some places.
183 2005-08-24 Matthias Clasen <mclasen@redhat.com>
185 * === Released 2.8.2 ===
187 * === Released 2.8.1 ===
189 2005-08-18 Matthias Clasen <mclasen@redhat.com>
191 * io-ico.c (DecodeHeader): Check for overflow in one more
192 place. (#313818, Tommi Komulainen)
194 2005-08-15 Matthias Clasen <mclasen@redhat.com>
196 * io-jpeg.c (fatal_error_handler): Pay attention to the
197 libjpeg error code and report OOM errors as such. (#312674,
200 2005-08-13 Matthias Clasen <mclasen@redhat.com>
202 * === Released 2.8.0 ===
204 2005-08-07 Matthias Clasen <mclasen@redhat.com>
206 * abicheck.sh: Also check exported variables.
208 2005-08-02 Matthias Clasen <mclasen@redhat.com>
210 * === Released 2.7.5 ===
212 2005-07-22 Matthias Clasen <mclasen@redhat.com>
214 * === Released 2.7.4 ===
216 2005-07-22 Matthias Clasen <mclasen@redhat.com>
218 * queryloaders.c: Accept '*' in masks. (pointed out
219 by William Jon McCann)
221 * gdk-pixbuf-io.c (format_check): Make anchored patterns work
222 as they did before. (#311011, William Jon McCann)
224 2005-07-22 Matthias Clasen <mclasen@redhat.com>
226 * gdk-pixbuf-io.c (format_check): Interpret patterns where
227 the first byte of the mask is '*' as unanchored. (#311011)
228 (gdk_pixbuf_new_from_file): Use the first 256 bytes for
229 sniffing the file format.
231 2005-07-15 Matthias Clasen <mclasen@redhat.com>
233 * === Released 2.7.3 ===
235 2005-07-12 Matthias Clasen <mclasen@redhat.com>
238 * pixops/*: Add copyright and license information.
240 2005-07-09 Tor Lillqvist <tml@novell.com>
242 * Makefile.am: Don't use the scripts in build/win32 to compile the
243 rc file into a resource object file. (This means we lose the
244 build number increment magic, but I doubt it was that useful
245 anyway.) Instead use windres directly. To pass the normal .o file
246 produced by windres through libtool, which would want a .lo file,
247 pass it directly to the linker using a -Wl option.
249 * gdk_pixbuf.rc.in: Replace BUILDNUMBER with 0.
251 2005-07-08 Matthias Clasen <mclasen@redhat.com>
253 * === Released 2.7.2 ===
255 2005-07-01 Matthias Clasen <mclasen@redhat.com>
257 * === Released 2.7.1 ===
259 2005-07-01 Matthias Clasen <mclasen@redhat.com>
261 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale): Allow
262 -1 for width/height and interpret them as "not constrained".
263 (#309258, Mark McLoughlin)
265 2005-06-26 Tor Lillqvist <tml@novell.com>
267 * Makefile.am: Current GNU tools do understand the PRIVATE
268 keyword, so no need to remove those entries from the import
269 library. libtool installs the .dll.a import library itself, so no
270 need to do it here. Do install the .def file.
272 2005-06-22 Matthias Clasen <mclasen@redhat.com>
274 * gdk-pixbuf-i18n.h: Use glib-i18n.h
276 2005-06-20 Matthias Clasen <mclasen@redhat.com>
278 * === Released 2.7.0 ===
280 2005-06-15 Matthias Clasen <mclasen@redhat.com>
282 * gdk-pixbuf.symbols:
283 * gdk-pixbuf-simple-anim.h: Add
284 gdk_pixbuf_simple_anim_iter_get_type()
286 2005-06-08 Matthias Clasen <mclasen@redhat.com>
288 * io-pnm.c (pnm_read_next_value): Check for overflow.
289 (#306394, Morten Welinder)
291 2005-05-27 Matthias Clasen <mclasen@redhat.com>
293 * io-bmp.c: Accept the 108 byte header of BMP v4. (#168799)
295 2005-05-25 Matthias Clasen <mclasen@redhat.com>
297 * gdk-pixbuf.symbols:
298 * gdk-pixbuf-simple-anim.[hc]: No need to expose the iter
299 subclass at all in the headers.
301 * Makefile.am: Add new files.
303 * gdk-pixbuf.symbols: Add new api.
305 * gdk-pixbuf.h: Include gdk-pixbuf-simple-anim.h here.
307 * gdk-pixbuf-simple-anim.[hc]: Add a way to construct
308 simple animations out of pixbufs. (#135161, Dom Lachowicz)
310 2005-05-24 Sven Neumann <sven@gimp.org>
312 * io-png.c: allow to specify the PNG compression level by passing
313 a "compression" parameter to the PNG save function (bug #305337).
315 * gdk-pixbuf-io.c (gdk_pixbuf_save): document the new parameter.
317 2005-04-09 Matthias Clasen <mclasen@redhat.com>
319 * Makefile.am: Use $(NM), not nm directly. (#301299,
320 Nguyen Thai Ngoc Duy)
322 * io-bmp.c (gdk_pixbuf__bmp_image_save_to_callback):
323 Don't overflow the stack. (Jakub Jelinek, Arjan van de Ven)
325 2005-04-08 Matthias Clasen <mclasen@redhat.com>
327 * io-pcx.c: No debugging output, please. (#173107,
330 2005-04-07 Matthias Clasen <mclasen@redhat.com>
332 * io-bmp.c (DecodeColormap): Initialize the colormap to
333 zero. (#171762, David Costanzo)
335 2005-03-30 Matthias Clasen <mclasen@redhat.com>
337 * io-bmp.c: Avoid bus errors due to unaligned access. (#168173,
338 Morten Welinder, Ivan Wong)
340 2005-03-29 Matthias Clasen <mclasen@redhat.com>
342 * io-tga.c (parse_rle_data): Fix the update areas for incremental
343 loading of compressed tgas. (#171883, David Costanzo)
345 2005-03-27 Matthias Clasen <mclasen@redhat.com>
347 * io-bmp.c (DoCompressed): Use the correct update regions for
348 compressed bmps. (#150664, Owen Taylor, test images provided
351 Sun Mar 27 19:59:52 2005 Manish Singh <yosh@gimp.org>
353 * io-bmp.c (grow_buffer): reject 0-sized buffers as corrupt header
354 data. Fixes bug #171707.
356 2005-03-25 Matthias Clasen <mclasen@redhat.com>
358 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use canonical
361 2005-03-21 Matthias Clasen <mclasen@redhat.com>
363 * gdk-pixbuf.c (gdk_pixbuf_class_init): Mark param spec strings
366 2005-03-14 Matthias Clasen <mclasen@redhat.com>
368 Make PLT-reduction work with gcc4, and don't include
369 everything in gdk-pixbuf-alias.h:
371 * gdk-pixbuf.symbols: Group symbols by header and source file.
372 * /makegdkpixbufalias.pl: Protect definitions by the same
373 preprocessor symbols used to guard the headers. Move
374 the alias declarations to a separate file which is
375 produced when calling makegdkpixbufalias.pl -def
376 * Makefile.am (gdk-pixbuf-aliasdef.c): Add a rule to generate
378 * *.c: Include gdk-pixbuf-alias.h after the other headers,
379 include gdk-pixbuf-aliasdef.c at the bottom.
381 2005-03-10 Tor Lillqvist <tml@novell.com>
385 * gdk-pixbuf.symbols: Implement DLL ABI stablility for
386 gdk_pixbuf_save() and gdk_pixbuf_savev(). (#167973)
388 2005-03-09 Matthias Clasen <mclasen@redhat.com>
390 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Fix
391 a C99ism. (#169741, Morten Welinder)
393 2005-03-08 Matthias Clasen <mclasen@redhat.com>
395 * gdk-pixbuf.c (gdk_pixbuf_class_init): Use canonical
396 form of the name when registering properties.
398 * gdk-pixbuf.symbols: Add the new attributes here, too.
400 * gdk-pixbuf-core.h: Use G_GNUC_NULL_TERMINATED where
401 appropriate. (#165682, Marc Meissner)
403 2005-03-07 Matthias Clasen <mclasen@redhat.com>
405 * io-xpm.c: Use a generated table of offsets
406 into a big const string to avoid relocations
407 in the rgb color table. (#168901, Tommi Komulainen)
409 * gen-color-table.pl: Script to generate the table,
410 copied from Owen Taylors script by the same name
413 * xpm-color-table.h: The generated table.
415 2005-03-03 Matthias Clasen <mclasen@redhat.com>
417 * io-xpm.c (pixbuf_create_from_xpm): Check the number
418 of scanned items. (#168906, Morten Welinder)
420 Make the gif loader handle oom when loading
421 animations. (#168857, Tommi Komulainen)
423 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
424 Handle oom by returning NULL.
426 * io-gif.c (gif_get_lzw): Return an error if composite
429 2005-02-28 Matthias Clasen <mclasen@redhat.com>
431 * pixops/*.S: Add .note.GNU-stack sections to Mark these as not
432 requiring an executable stack.
434 2005-02-23 Matthias Clasen <mclasen@redhat.com>
436 * gdk-pixbuf-io.c: Document BMP saving support.
438 * io-bmp.c: Support saving as BMP. (168173, Ivan Wong)
440 * io-ico.c: Fix a typo. (#168173, Ivan Wong)
442 2005-02-15 Matthias Clasen <mclasen@redhat.com>
444 * io-pnm.c (pnm_skip_whitespace): Don't read over the end of
445 the buffer if '#' appears at the very end. (#167141, Doug Morgan)
447 2005-02-05 Hans Breuer <hans@breuer.org>
449 * makefile.msc : rule for gdk_pixbuf.def
451 2005-02-07 Matthias Clasen <mclasen@redhat.com>
453 * io-pnm.c (pnm_read_next_value): Pass in the max number
455 (pnm_read_ascii_scanline): And use it here to enable
456 parsing of pbm images without whitespace between the
457 pixels. (#165803, Samuel Hym)
459 2005-01-22 Matthias Clasen <mclasen@redhat.com>
461 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type)
462 (gdk_pixbuf_loader_new_with_mime_type): Close the loader
463 before unreffing it in the error case. (#164915, Crispin
466 2005-01-12 Owen Taylor <otaylor@redhat.com>
468 * Makefile.am: Use grep | head -n 1 instead of grep -m 1
470 with slightly older versions of GNU grep in
471 install-libtool-import-lib rule.
473 2005-01-08 Matthias Clasen <mclasen@redhat.com>
475 * === Released 2.6.1 ===
477 2005-01-04 Matthias Clasen <mclasen@redhat.com>
479 * io-bmp.c (DecodeHeader): Error on compressed images with
480 negative height. Also make uncompressed images with data_offset
481 != header_size work. (#150664, Owen Taylor)
483 2005-01-02 Matthias Clasen <mclasen@redhat.com>
485 * pixops/pixops.c (bilinear_box_make_weights): Really fix the
486 math to make the vectors sum up to 1, making GDK_INTERP_HYPER
487 work again. (#162703, Dennis Nezic)
489 2004-12-27 Matthias Clasen <mclasen@redhat.com>
491 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
492 Avoid deadlock. Pointed out by Callum McKenzie.
494 Wed Dec 22 01:17:44 2004 Jonathan Blandford <jrb@redhat.com>
496 * queryloaders.c (main): print out the version and binary name in
497 the header comment. Problem reported by Seth Nickell.
499 2004-12-16 Matthias Clasen <mclasen@redhat.com>
501 * === Released 2.6.0 ===
503 Fri Dec 10 13:57:44 2004 Manish Singh <yosh@gimp.org>
505 * abicheck.sh: filter out PRIVATE.
507 2004-12-05 Tor Lillqvist <tml@iki.fi>
509 * gdk-pixbuf-animation.c
513 * make-inline-pixbuf.c
514 * queryloaders.c: Use gstdio wrappers. Document that file names
515 are in the GLib file name encoding.
517 * gdk-pixbuf-csource.c
518 * queryloaders.c: On Windows, convert command line arguments and
519 environment variable values from locale encoding to UTF-8.
521 * queryloaders.c: On Windows, use wide character API when
527 * gdk-pixbuf-animation.h
528 * gdk-pixbuf-animation.c: Like in GLib, for DLL ABI stability on
529 Windows, add binary compatibility versions of functions that take
530 file names as arguments. They use the system codepage, not GLib
531 file name encoding (which is UTF-8 on Windows). Use #defines to
532 make newly compiled code use the "real" functions that use the
533 GLib file name encoding scheme.
535 2004-12-02 Matthias Clasen <mclasen@redhat.com>
537 * === Released 2.5.6 ===
539 2004-11-30 Matthias Clasen <mclasen@redhat.com>
541 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_iter_get_pixbuf):
542 Fix a typo in the docs. (#159955, Masao Mutoh)
544 2004-11-29 Matthias Clasen <mclasen@redhat.com>
546 * Makefile.am (gdk-pixbuf-alias.h): Use the perl found by
547 configure. (#149826, Morten Welinder)
549 Sun Nov 28 12:11:21 2004 Manish Singh <yosh@gimp.org>
551 * makegdkpixbufalias.pl: Typo fix, so attributes are really
554 2004-11-28 Matthias Clasen <mclasen@redhat.com>
556 * gdk-pixbuf.symbols:
557 * Makefile.am: Mark get_type() functions generated by glib-mkenums
560 Thu Nov 25 14:21:37 2004 Manish Singh <yosh@gi,p.org>
562 * abicheck.sh: filter out G_GNUC stuff when doing the compare.
564 2004-11-23 Matthias Clasen <mclasen@redhat.com>
566 * gdk-pixbuf-core.h: Don't mark gdk_pixbuf_error_quark() as const,
567 to be consistent with all the other error_quark functions.
568 (technically they are const, but since these are called only
569 in error paths, giving the compiler better optimization
570 opportunities doesn't matter much)
572 * gdk-pixbuf.symbols: Add attribute annotations.
573 * makegdkpixbufalias.pl: Keep attribute annotations, but strip PRIVATE.
574 * Makefile.am (gdk_pixbuf.def): Strip attribute annotations, but keep
577 Mon Nov 15 18:58:22 2004 Manish Singh <yosh@gimp.org>
579 * gdk-pixbuf-private.h: _gdk_pixbuf_lock now returns a gboolean.
581 * abicheck.sh: don't hardcode lengths for cut, instead split on
584 2004-11-15 Matthias Clasen <mclasen@redhat.com>
586 * gdk-pixbuf-animation.c:
587 * gdk-pixbuf-loader.c:
588 * gdk-pixbuf-io.c: Be extra careful when locking and handle
589 the case that the module may initialize the thread system.
591 * gdk-pixbuf-io.[hc] (_gdk_pixbuf_lock): Return whether the
592 lock was actually taken.
594 * queryloaders.c (query_module): Set vtable->module before
595 calling fill_vtable(), since gdk-pixbuf-io.c does does the
596 same and modules may rely on it. (#158177, Dan Winship)
598 2004-11-12 Matthias Clasen <mclasen@redhat.com>
600 * gdk-pixbuf-io.c (gdk_pixbuf_io_init): Don't use
601 _gdk_pixbuf_load_module_unlocked() in the !USE_GMODULE case.
603 * === Released 2.5.5 ===
605 2004-11-12 Matthias Clasen <mclasen@redhat.com>
607 Changes to make gdk-pixbuf threadsafe (#157310, #157306,
610 * gdk-pixbuf-io.h (enum GdkPixbufFormatFlags): Add
611 GDK_PIXBUF_FORMAT_THREADSAFE to indicate that an image loader
614 * gdk-pixbuf-io.c (get_file_formats, _gdk_pixbuf_load_module):
615 Use a lock to make initialization of global data structures
617 * gdk-pixbuf-private.h:
618 * gdk-pixbuf-io.c (_gdk_pixbuf_lock, _gdk_pixbuf_unlock):
619 Auxiliary functions which use another lock to protect
620 threadunsafe image loaders.
622 * gdk-pixbuf-io.c (gdk_pixbuf_real_save):
623 (save_to_callback_with_tmp_file):
624 (gdk_pixbuf_real_save_to_callback):
625 (gdk_pixbuf_new_from_xpm_data):
626 (_gdk_pixbuf_generic_image_load):
627 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
628 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module):
629 (gdk_pixbuf_loader_close):
630 (gdk_pixbuf_loader_finalize):
631 Use _gdk_pixbuf_lock() and _gdk_pixbuf_unlock().
633 * io-ani.c, io-bmp.c, io-gif.c, io-ico.c:
634 * io-jpeg.c, io-pcx.c, io-png.c, io-pnm.c:
635 * io-ras.c, io-tga.c, io-wbmp.c, io-xbm.c:
636 * io-xpm.c: Mark as threadsafe.
638 * io-tiff.c: Remove pointless locking, mark as
641 2004-11-10 Matthias Clasen <mclasen@redhat.com>
643 * gdk-pixbuf-animation.c:
644 * gdk-pixbuf-io.c: Use g_filename_display_name() instead of
645 g_filename_to_utf8() when putting filenames in error messages.
647 2004-11-04 Matthias Clasen <mclasen@redhat.com>
649 * gdk-pixbuf.c (gdk_pixbuf_class_init): Document current
650 restrictions for property values. (#157409, Matthew H. Plough)
652 2004-11-01 Matthias Clasen <mclasen@redhat.com>
654 * gdk-pixbuf-features.h.in: Break the declaration of the three
655 version variables, so that gtk-doc can grok it.
657 2004-10-29 Hans Breuer <hans@breuer.org>
659 * makefile.msc : updated
661 2004-10-27 Matthias Clasen <mclasen@redhat.com>
663 * === Released 2.5.4 ===
665 2004-10-27 Matthias Clasen <mclasen@redhat.com>
667 * Makefile.am (gdk-pixbuf-alias.h): Fix srcdir != builddir
670 2004-09-19 Matthias Clasen <mclasen@redhat.com>
672 * === Released 2.5.3 ===
674 2004-09-15 Matthias Clasen <mclasen@redhat.com>
677 * io-xpm.c: Fix some security issues discovered by Chris Evans.
679 Mon Sep 13 19:31:34 2004 Matthias Clasen <maclas@gmx.de>
681 * io-jpeg.c (real_save_jpeg): Drop the alpha channel
682 when saving 4-channel pixbufs. (#152450, Emmanuel Pacaud)
684 2004-09-09 Matthias Clasen <mclasen@redhat.com>
686 * makegdkpixbufalias.pl: Use the short prefix "IA__" for
687 aliases instead of the long suffix "__internal_alias".
689 2004-09-01 Matthias Clasen <mclasen@redhat.com>
691 * gdk-pixbuf-core.h: Align argument names with source.
693 Thu Aug 26 01:23:16 2004 Matthias Clasen <maclas@gmx.de>
696 * gdk-pixbuf.symbols:
697 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale):
698 Add gdk_pixbuf_new_from_file_at_scale(), which is just
699 like gdk_pixbuf_new_from_file_at_size(), but optionally
700 ignores the aspect ratio. (#136395, Dom Lachowicz)
702 Wed Aug 25 17:23:23 2004 Manish Singh <yosh@gimp.org>
704 * io-gif.c: remove unused set_need_recomposite() function.
706 2004-08-25 Matthias Clasen <mclasen@redhat.com>
708 * === Released 2.5.2 ===
710 * abicheck.sh: Make work in make distcheck.
712 2004-08-25 Matthias Clasen <mclasen@redhat.com>
714 * Makefile.am: Use the same prefix when creating
715 gdk-pixbuf-marshal.c and gdk-pixbuf-marshal.h
717 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): _-prefix
720 2004-08-24 Matthias Clasen <mclasen@redhat.com>
722 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_mime_type): Use
723 the correct index and compare correctly, reported by Tommi Komulainen.
724 (gdk_pixbuf_loader_new_with_mime_type):
726 * gdk-pixdata.c (gdk_pixdata_from_pixbuf): Work around bugs in
727 the runlength encoder by forcing rowstride * height to be
728 divisible by bpp. (#150882)
730 Sun Aug 22 03:20:56 2004 Matthias Clasen <maclas@gmx.de>
732 * pixops/pixops.c (pixops_scale_nearest): Fix a mixup in the handling
733 of dest_channels. (#111922, Christophe Fergeau)
735 Fri Aug 20 11:59:10 2004 Owen Taylor <otaylor@redhat.com>
737 * io-bmp.c: Fix infinite loop that can occur for bad
738 image data (#150601, Chris Evans, Manish Singh)
740 2004-08-17 Matthias Clasen <mclasen@redhat.com>
742 * abicheck.sh: No need for INCLUDE_INTERNAL_SYMBOLS any more.
744 * Makefile.am (gdk-pixbuf-alias.h): Don't use cpp to filter the symbols.
746 * makegdkpixbufalias.pl: Move the #ifdef processing into the perl script,
747 and keep the #ifdefs which differentiate between platforms.
749 * gdk-pixbuf.symbols: Remove the marshalers.
751 * Makefile.am (stamp-gdk-pixbuf-marshal.h): _-prefix the marshalers.
753 Thu Aug 12 22:19:12 2004 Matthias Clasen <maclas@gmx.de>
755 * io-bmp.c (DecodeHeader): Properly determine the number of
756 colors in an OS/2 BMP file. (#150003, Jon-Kare Hellan)
758 2004-08-12 Matthias Clasen <mclasen@redhat.com>
760 * pixops/pixops.c: Remove C99-isms. (#149967, Vincent Noel)
762 Wed Aug 11 22:56:55 2004 Matthias Clasen <maclas@gmx.de>
764 * abicheck.sh: Check all symbols.
766 2004-08-11 Matthias Clasen <mclasen@redhat.com>
768 * pixops/pixops.c: Make scaling and compositing functions handle
769 edge pixels consistently. (#111922, Brian Cameron)
771 * pixops/pixops-internal.h:
773 * pixops/*.S: underscore prefix the mmx implementations, in order
776 * gdk-pixbuf.symbols: Remove the mmx pixops implementations.
778 * abicheck.sh: No need to define INCLUDE_MMX_SYMBOLS any more.
780 Tue Aug 10 23:53:59 2004 Matthias Clasen <maclas@gmx.de>
782 Add hidden aliases for exported symbols which are
783 used internally in order to get rid of many PLT
784 entries. (#145519, Arjan van de Ven)
786 * gdk/Makefile.am: Add rules to generate gdk_pixbuf.def and
787 gdk-pixbuf-alias.h from gdk-pixbuf.symbols, and make make
788 check check the abi with abicheck.sh.
790 * gdk/gdk-pixbuf.symbols: New file. Definition of the gdk-pixbuf
791 ABI. The file can be processed by cpp to filter out certain
794 * gdk/abicheck.sh: New file. Script to check the actually
795 symbols exported from libgdk_pibuf.2.0.so against the symbols
796 found in gdk-pixbuf.symbols.
798 * gdk/makegdkpixbufalias.pl: New file. Perl script to generate the
799 header containing the alias definitions for internally used
800 exported symbols from a list of symbols.
802 * *.c: Include gdk-pixbuf-alias.h
804 2004-08-06 Hans Breuer <hans@breuer.org>
806 * gdk_pixbuf.def makefile.msc : updated
808 Sun Aug 1 23:57:06 2004 Matthias Clasen <maclas@gmx.de>
810 * io-pcx.c (pcx_increment_load_data_1): Fix progressive
811 loading of 8bit pcx files. (#148518, Magnus Bergman)
813 2004-08-01 Matthias Clasen <mclasen@redhat.com>
815 * === Released 2.5.1 ===
817 Tue Jul 20 22:23:26 2004 Matthias Clasen <maclas@gmx.de>
819 * gdk-pixbuf-io.h: Remove trailing commas from
820 enumerations. (#148035)
822 Sun Jul 18 20:17:41 2004 Soeren Sandmann <sandmann@daimi.au.dk>
824 * === released 2.5.0 ==
826 Thu Jul 15 19:19:21 2004 Matthias Clasen <maclas@gmx.de>
828 * io-png.c (real_save_png):
829 * gdk-pixbuf-io.c (gdk_pixbuf_io_init): Use 'cannot' instead
830 of 'can not' in messages. (#144226, Morten Welinder)
832 Fri Jul 9 15:38:06 2004 Manish Singh <yosh@gimp.org>
834 * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled): function doesn't
835 return a value, so don't use g_return_val_if_fail()
837 * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple): initialize dest in
838 the can't happen case, to quiet gcc.
840 * io-tiff.c (tifflibversion): enclose in #if TIFFLIB_VERSION >=
843 Wed Jul 7 23:53:58 2004 Matthias Clasen <maclas@gmx.de>
846 * gdk-pixbuf-io.c (gdk_pixbuf_format_is_disabled):
847 * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled):
848 * gdk-pixbuf-io.c (gdk_pixbuf_format_get_license):
849 New functions to disable/enable individual loaders and to
850 obtain license information about loaders.
852 * gdk-pixbuf-io.h (GdkPixbufFormat): Add disabled and
855 * gdk-pixbuf-io.c (_gdk_pixbuf_get_module):
856 * gdk-pixbuf-io.c (_gdk_pixbuf_get_named_module): Skip
859 * io-*.c: Add license information in the fill_info
862 2004-07-07 Matthias Clasen <mclasen@redhat.com>
864 * gdk-pixbuf-features.h.in: Fix the build.
866 2004-07-06 Tor Lillqvist <tml@iki.fi>
868 * gdk-pixbuf-features.h.in
869 * gdk-pixbuf.c: Mark the version variables for proper import and
870 export from Windows DLLs. Thanks to Laurent Sansonetti for
871 reporting the problem.
873 Sat Jul 3 00:41:44 2004 Matthias Clasen <maclas@gmx.de>
875 * pixops/pixops.c (bilinear_box_make_weights): Correct the
876 math to calculate bilinear weights. (#112412, Brian Cameron)
878 Mon Jun 21 00:44:51 2004 Matthias Clasen <maclas@gmx.de>
880 * gdk-pixbuf-transform.h:
881 * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple):
882 * gdk-pixbuf-scale.c (gdk_pixbuf_flip): New functions to
883 rotate pixbufs by multiples of 90 degrees and to flip them
884 horizontally or vertically.
886 Sun Jun 20 01:06:48 2004 Matthias Clasen <maclas@gmx.de>
888 Header reorganization. (#51999, Jeff Franks, reorganization
889 proposed by Havoc Pennington)
891 * gdk-pixbuf.h: This is now an include-only header, and the only
892 one which applications should directly use.
894 * gdk-pixbuf-animation.h: Add animation api from gdk-pixbuf.h.
895 * gdk-pixbuf-io.h: Add io api from gdk-pixbuf.h.
896 * gdk-pixbuf-loader.h: Add loader api from gdk-pixbuf.h.
897 * gdk-pixbuf-transform.h: New header.
898 * gdk-pixbuf-core.h: New header.
900 Sat Jun 19 01:44:12 2004 Matthias Clasen <maclas@gmx.de>
902 * gdk-pixbuf-scale.c (gdk_pixbuf_composite): Add a figure which
903 explains pixbuf compositing.
905 2004-06-16 Matthias Clasen <mclasen@redhat.com>
907 * io-tiff.c: Make the tiff loader work with both
908 libtiff 3.5.7 and libtiff 3.6.1. (#135541, Marco Ghirlanda)
910 Fri Jun 11 22:02:56 2004 Matthias Clasen <maclas@gmx.de>
912 * io-gif.c, io-pnm.c, io-tga.c, io-xpm.c: Don't use
913 contractions like "don't" or "isn't" in error messages.
914 It isn't nice to use them in log entries either...
915 (#137774, Morten Welinder, patch by Alexander Winston)
917 Sat Jun 5 00:59:12 2004 Matthias Clasen <maclas@gmx.de>
921 * gdk-pixbuf-animation.c:
922 * gdk-pixbuf-io.c: Convert filenames to UTF-8 when embedding
923 them in error messages. (#143654, Sven Neumann)
925 Sun May 16 22:53:47 2004 Matthias Clasen <maclas@gmx.de>
929 * io-pnm.c (pnm_read_next_value): Don't read integers
930 partially. (#142584, Kouichirou Hiratsuka)
932 2004-05-10 Matthias Clasen <mclasen@redhat.com>
936 * pixops/timescale.c:
939 * gdk-pixbuf-scale.c: _-prefix the nonstatic pixops_...
940 functions. (#142233, Morten Welinder)
942 Wed May 5 23:09:48 2004 Matthias Clasen <maclas@gmx.de>
944 * gdk-pixbuf-io.h (GdkPixbufFormatFlags): New format flag
945 GDK_PIXBUF_FORMAT_SCALABLE to mark scalable formats.
948 * gdk-pixbuf-io.c (gdk_pixbuf_format_is_scalable): New function.
949 (#137995, Dom Lachowicz)
951 2004-04-30 Matthias Clasen <mclasen@redhat.com>
953 * === Released 2.4.1 ===
955 2004-04-13 Matthias Clasen <mclasen@redhat.com>
957 * io-ani.c (gdk_pixbuf__ani_image_load_animation):
958 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info)
959 (_gdk_pixbuf_generic_image_load)
960 (gdk_pixbuf_new_from_file_at_size): When calling fread()
961 in a loop, check for ferror() as well as for feof() to
962 avoid infinite loops on directories. (#137804, Alex Converse)
964 Mon Mar 15 15:01:59 2004 Owen Taylor <otaylor@redhat.com>
966 * === Released 2.4.0 ===
968 2004-03-15 Tor Lillqvist <tml@iki.fi>
970 * queryloaders.c (main): [Win32] Look up installation prefix at
971 run-time, replace prefix in PIXBUF_LIBDIR with that. (#106141)
973 Merges from stable branch that had been left out. (#136282, J. Ali
976 Changes for run-time lookup of installation location on Win32:
978 * Makefile.am (INCLUDES): Define GTK_PREFIX as $(prefix).
980 * gdk-pixbuf-io.c (get_sysconfdir): New function, look up
981 installation location at runtime and deduce GTK_SYSCONFDIR
983 (get_toplevel): Similar, for the top-level installation directory.
984 (correct_prefix): Replace compile-time prefix with run-time
986 (get_libdir): Remove, not used any longer.
987 (gdk_pixbuf_io_init): Call correct_prefix() on Win32.
989 * queryloaders.c (query_module): [Win32] Change backslahses into
992 Tue Mar 9 09:33:28 2004 Owen Taylor <otaylor@redhat.com>
994 * === Released 2.3.6 ===
996 2004-03-05 Tor Lillqvist <tml@iki.fi>
998 * gdk_pixbuf.def: Add missing entries. Thanks to J. Ali Harlow.
1000 Fri Mar 5 22:22:25 2004 Matthias Clasen <maclas@gmx.de>
1002 * io-bmp.c (OneLine32): Don't try to load an alpha channel
1003 from the BMP, since there is no evidence that even 32bit
1004 BMPs have an alpha channel. (#135502)
1006 Mon Mar 1 19:47:48 2004 Owen Taylor <otaylor@redhat.com>
1008 * === Released 2.3.5 ====
1010 2004-02-28 Hans Breuer <hans@breuer.org>
1012 * io-tiff.c : include <io.h> for lseek()
1013 * io-xbm.c : use HAVE_UNISTD_H
1015 Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
1017 * === Released 2.3.3 ===
1019 Sun Feb 22 01:09:55 2004 Matthias Clasen <maclas@gmx.de>
1021 * io-bmp.c (gdk_pixbuf__bmp_image_begin_load): Remove debugging
1024 Fri Feb 20 22:25:32 2004 Matthias Clasen <maclas@gmx.de>
1026 * io-bmp.c (DecodeHeader): Store and sanity-check the clrUsed field
1027 from the header for use in DecodeColormap.
1028 * io-bmp.c (DecodeColormap): Don't read more colormap entries than
1029 the header says are there. (#134235, Kazuho Okui)
1031 Sun Feb 8 01:07:20 2004 Manish Singh <yosh@gimp.org>
1033 * gdk-pixbuf-io.c: removed unnecessary G_OBJECT() cast checks.
1035 * io-jpeg.c: make the return type for to_callback_empty_output_buffer
1036 "boolean", which should be defined by the jpeg headers. The right
1037 return type for this function depends on how the jpeg library
1038 was built (one wonders what happens if different compilers are used).
1040 2004-01-28 Hans Breuer <hans@breuer.org>
1042 * gdk_pixbuf.def : updated externals
1044 Sat Jan 17 23:02:55 2004 Matthias Clasen <maclas@gmx.de>
1046 The second part of the fix for #114351 (see also
1049 * gdk-pixbuf-i18n.h (P_): Use translation domain gtk20-properties.
1051 Sat Jan 17 00:01:51 2004 Matthias Clasen <maclas@gmx.de>
1053 The first part of the fix for #114351 (see also
1056 * gdk-pixbuf-i18n.h: Define P_() for property blurbs and nicks.
1058 * gdk-pixbuf.c: Mark property blurbs and nicks with P_().
1060 Thu Jan 8 22:01:14 2004 Matthias Clasen <maclas@gmx.de>
1062 * queryloaders.c (loader_sanity_check): Don't use bitwise operators
1063 on booleans. (#130923, reported by Telsa Gwynne, fix by Dave Jones)
1065 2004-01-06 Federico Mena Quintero <federico@ximian.com>
1067 * gdk-pixbuf-io.c (gdk_pixbuf_save): Escape an ampersand in the
1068 documentation comment, and hack around an empty line in the code
1069 example so that gtk-doc won't put a <para> due to it.
1071 * gdk-pixbuf.c (gdk_pixbuf_get_pixels): Link to the documentation
1072 section on image data.
1074 2004-01-06 Federico Mena Quintero <federico@ximian.com>
1076 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Fix example in
1077 documentation comment. Fixes #130701.
1079 Wed Jan 7 02:41:14 2004 Matthias Clasen <maclas@gmx.de>
1081 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_bufferv):
1082 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_buffer):
1083 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callbackv):
1084 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callback): New public API
1085 to save pixbufs to non-file locations. (#82203, Tim Evans)
1088 * gdk-pixbuf.def: Declare the new public API.
1090 * gdk-pixbuf-io.h: Add save_to_callback to the module interface.
1093 * io-png.c: Implement save_to_callback.
1095 * gdk-pixbuf-io.c (gdk_pixbuf_savev):
1096 * gdk-pixbuf-io.c (gdk_pixbuf_save): Update documentation.
1098 * gdk-pixbuf-io.c (gdk_pixbuf_real_save): Support saving via
1099 image_module->save_to_callback.
1101 * gdk-pixbuf-io.c (gdk_pixbuf_real_save_to_callback): New generic
1102 save_to_callback function which falls back to image_module->save
1105 Wed Jan 7 01:17:36 2004 Matthias Clasen <maclas@gmx.de>
1107 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_size_func):
1108 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_set_size):
1109 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_init): Make it possible
1110 to call gdk_pixbuf_loader_set_size (loader, 0, 0) by changing
1111 the initial values of priv->width/height to -1.
1113 * io-tiff.c (tiff_image_parse):
1114 * io-ras.c (RAS2State):
1115 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment):
1116 * io-pcx.c (gdk_pixbuf__pcx_load_increment):
1117 * io-jpeg.c (gdk_pixbuf__jpeg_image_load_increment):
1118 * io-png.c (png_info_callback):
1119 * io-ico.c (DecodeHeader):
1120 * io-bmp.c (DecodeHeader): Call size_func once the size is known,
1121 even if the module can't make use of the scaling information. If
1122 size_func returns 0, don't allocate a pixbuf and return, if
1123 necessary with an error.
1126 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info): A new function
1127 to determine the type and size of an image file without loading
1128 it completely. (#53725)
1130 Sun Jan 4 00:44:57 2004 Matthias Clasen <maclas@gmx.de>
1132 * gdk-pixbuf.c (gdk_pixbuf_class_init): Turn the pixbuf
1133 attributes into (construct-only, but always readable)
1134 properties. (#130196)
1136 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Set properties
1139 Mon Dec 22 01:35:36 2003 Matthias Clasen <maclas@gmx.de>
1141 * Makefile.am (gdk-pixbuf.loaders): Fix building with
1142 --disable-modules --with-included-loaders, create an
1143 empty gdk-pixbuf.loaders file. (#124496, Arno Charlet, fix
1144 proposed by Owen Taylor)
1146 Thu Dec 11 01:57:05 2003 Matthias Clasen <maclas@gmx.de>
1148 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
1149 the documentation for signals inline, to get proper parameter
1150 documentation. (#128977)
1152 Sat Nov 15 00:26:19 2003 Matthias Clasen <maclas@gmx.de>
1154 * queryloaders.c (loader_sanity_check): Check that the mask
1155 is NULL or a string of the same length consisting entirely of
1156 ' ', '!', 'x', 'z', 'n'.
1158 Mon Nov 10 00:17:52 2003 Matthias Clasen <maclas@gmx.de>
1160 * Makefile.am (install-data-local): Typo fix in warning.
1162 Sun Nov 9 23:07:05 2003 Matthias Clasen <maclas@gmx.de>
1164 * gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): If neither
1165 load nor begin_load are available fall back to load_animation
1166 and use gdk_pixbuf_animation_get_static_image() to obtain a
1167 pixbuf. Inefficient, but at least doesn't crash.
1169 Sun Nov 9 21:56:20 2003 Matthias Clasen <maclas@gmx.de>
1171 * queryloaders.c (write_loader_info): New function to write
1172 out the information for a single loader, factored out of
1174 (loader_sanity_check): New function to perform
1175 sanity checks on a loader.
1176 (query_module): Use the new functions.
1178 Thu Nov 6 00:27:27 2003 Matthias Clasen <maclas@gmx.de>
1180 * io-pcx.c (gdk_pixbuf__pcx_load_increment): Fold two similar
1181 strings into on. (#126204, Danilo Segan)
1183 2003-09-19 Matthias Clasen <maclas@gmx.de>
1185 * io-tga.c (try_preload): Remove a pointless check.
1186 (#122710, Kjartan Maraas)
1188 Mon Aug 18 10:25:29 2003 Owen Taylor <otaylor@redhat.com>
1190 * gdk-pixdata.c (gdk_pixdata_to_csource): Add the correct
1191 alignment magic for Sun compiler and for GCC to get
1192 the strings aligned. (Patch from Brian Cameron, #117217)
1194 2003-08-14 Matthias Clasen <maclas@gmx.de>
1196 * gdk-pixdata.c (gdk_pixdata_to_csource): Improve doc comment
1197 wording. (#119754, Doug Quale)
1199 2003-08-03 Matthias Clasen <maclas@gmx.de>
1201 * gdk-pixbuf.c (gdk_pixbuf_get_rowstride):
1202 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading
1203 explanation of rowstride. (#119000)
1205 2003-07-24 Matthias Clasen <maclas@gmx.de>
1207 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the
1208 aspect ratio. (#118145, Owen Taylor)
1210 2003-07-23 Matthias Clasen <maclas@gmx.de>
1212 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader
1213 before unref'ing it. (#118146, Owen Taylor)
1215 2003-03-01 Hans Breuer <hans@breuer.org>
1217 * makefile.msc : updated
1219 * gdk_pixbuf.def : export a bunch of new functions
1221 2003-07-18 Matthias Clasen <maclas@gmx.de>
1223 * pixops/pixops.c (correct_total): Split correction into multiple
1224 pieces if no single weight is large enough to apply the unsplit
1225 correction. (#117431, problem reported by Tomas Ögren)
1227 2003-07-13 Matthias Clasen <maclas@gmx.de>
1230 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function
1231 to load an image from a file at a specified size. (#105326, Dom
1234 2003-07-11 Matthias Clasen <maclas@gmx.de>
1236 * queryloaders.c (query_module): Handle absolute filenames
1237 properly. (#117170, Jens Elkner)
1239 * gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by
1240 gdk_pixbuf_format_get_mime_types() and
1241 gdk_pixbuf_format_get_extensions() must be freed with g_strfreev().
1243 2003-07-04 Matthias Clasen <maclas@gmx.de>
1245 * gdk-pixbuf-io.c: Document ICO save parameters.
1247 * io-ico.c: Support saving of ICOs and CURs. Currently, only
1248 single-image ICOs are produced, but the code for multi-image ICOs
1249 is already in place. The saver understands the options "depth"
1250 (can be "32", "24" or "16") and "x_hot"/"y_hot" for hotspot
1251 coordinates of CURs.
1253 2003-06-28 Matthias Clasen <maclas@gmx.de>
1255 * io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs
1256 a): Use the byte size of the image as a heuristic when selecting
1257 the bitmap to load - this lets us select 32bpp bitmaps which come
1258 after a 8bpp bitmap.
1259 (OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't
1260 overwrite the alpha channel of 32bpp ICOs.
1261 (gdk_pixbuf__ico_image_load_increment): Stop decoding the header
1264 Fri Jun 27 03:56:59 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1266 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
1267 it compile with C89 compilers.
1269 2003-06-23 Matthias Clasen <maclas@gmx.de>
1271 * io-gif.c (gif_get_frame_info): Remove the pointless refusal to
1272 load images with dubious disposal mode on the first frame. Just
1273 ignore it, as everybody else does.
1275 2003-06-22 Matthias Clasen <maclas@gmx.de>
1277 * gdk-pixbuf-loader.[hc] (gdk_pixbuf_loader_new_with_mime_type):
1278 New function to obtain a loader for a specific mime type.
1279 (#105324, Dom Lachowicz)
1281 * io-gif.c (gif_get_extension): Reset block_count to 0 for all
1282 application extensions, otherwise the data blocks of unknown
1283 extensions are not propertly skipped.
1285 Second half of the fix for #106962, handle frames extending beyond
1288 * io-gif.c (clip_frame): New helper function to clip a rectangle
1289 to the logical screen size of the gif.
1290 (maybe_update): New helper function to call update_func only if
1291 the rectangle is not completely off-bounds.
1292 (gif_get_lzw): Read frames extending outside the logical screen
1293 size, but be careful clip to the logical screen size
1294 when operating on the composite pixbuf and when calling update_func.
1295 (gif_init): Set the animation size to the logical screen size.
1296 (gif_get_frame_info): Don't refuse to load images with frames
1297 extending beyond the logical screen size.
1299 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be
1300 careful to clip all rectangles to the logical screen size, also
1301 handle the fact that frames may be completely off-bounds.
1303 2003-06-21 Matthias Clasen <maclas@gmx.de>
1305 * io-gif.c: Merge from 2.2: Fix update_func() arguments and accept
1306 empty frames. (#106962)
1308 2003-06-17 Matthias Clasen <maclas@gmx.de>
1310 * Makefile.am (man_MANS): Removed, man pages are now installed
1311 from docs/reference/gdk-pixbuf.
1313 2003-06-03 Matthias Clasen <maclas@gmx.de>
1315 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
1316 data_length == -1, add an example. (#97290)
1318 2003-06-01 Matthias Clasen <maclas@gmx.de>
1320 * gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
1321 of rowstride. (#113924, Noah Levitt)
1323 2003-05-27 Matthias Clasen <maclas@gmx.de>
1325 * io-wbmp.c: Remove dubious bitfields of
1326 unspecified signedness. (#112919, Morten Welinder)gdk-p
1328 * gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
1329 of g_string_new ("") by g_string_new (NULL). (#106975, Morten
1332 2003-05-21 Matthias Clasen <maclas@gmx.de>
1334 * pixbufloader_pcx.def:
1335 * io-pcx.c: A loader for PCX files. (#113035, Josh Beam)
1338 * Makefile.am: Add PCX loader.
1340 2003-05-19 Matthias Clasen <maclas@gmx.de>
1342 Improve progressive loading from slow sources: (#107368)
1344 * io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
1345 first_loop_slowness.
1346 (gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
1347 the datasource falls behind the speed of the display.
1349 * io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and
1350 first_loop_slowness to GdkPixbufGifAnimIter.
1352 Wed May 14 18:24:50 2003 Owen Taylor <otaylor@redhat.com>
1354 * gdk-pixdata.c (gdk_pixdata_deserialize): Add a
1355 (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
1357 2003-04-24 Matthias Clasen <maclas@gmx.de>
1359 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write):
1360 (gdk_pixbuf_loader_new_with_type):
1361 (gdk_pixbuf_loader_close):
1362 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1365 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
1366 Add sanity checks for GError handling. (#108345)
1368 Tue Apr 1 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
1370 * pixops/pixops.c (make_weights): Exploit the fact that all
1371 our filters are separable to simplify the calculation of
1372 the weight tables. (Based on a patch from Brian Cameron.)
1374 * pixops/Makefile.am pixbuf-transform-math.ltx:
1375 Add a short article describing how the math in pixops.c
1378 2003-03-21 Matthias Clasen <maclas@gmx.de>
1380 * gdk-pixbuf-animation.c (gdk_pixbuf_non_anim_get_type): Add
1381 missing static. (#108614)
1383 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
1384 * io-ico.c (gdk_pixbuf__ico_image_stop_load): Add missing static
1385 qualifiers apparently causing problems on some platforms. (#108617)
1387 2003-03-11 Matthias Clasen <maclas@gmx.de>
1389 * io-ico.c (DecodeHeader): Calculate LineWidth for 16bpp from
1390 width, like for the other depths. (noticed by Marijn Ros)
1392 2003-03-08 Matthias Clasen <maclas@gmx.de>
1394 Bug #107664 continued:
1396 * io-xpm.c (find_color): Fix 0/FALSE confusion
1397 * gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Fix -1/gboolean
1400 2003-03-06 Matthias Clasen <maclas@gmx.de>
1402 * io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten
1405 2003-02-20 Matthias Clasen <maclas@gmx.de>
1407 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
1408 Always clear the initial frame and "disposed" areas with
1409 transparent pixels, no matter whether the frame has transparency
1412 2003-02-18 Matthias Clasen <maclas@gmx.de>
1414 * io-tga.c (pixbuf_flip_row):
1415 (pixbuf_flip_vertically): Auxiliary functions used to implement
1416 support for arbitrary origins.
1417 (parse_data_for_row_pseudocolor):
1418 (parse_data_for_row_truecolor):
1419 (parse_data_for_row_grayscale):
1420 (parse_data_for_row):
1421 (fill_in_context): Remove the check for upper-left origin.
1422 (parse_rle_data): Support arbitrary origins. (#105912)
1424 * io-tga.c (fread_check):
1426 (get_header_from_file):
1427 (get_colormap_from_file):
1428 (get_image_pseudocolor):
1429 (swap_channels_pixbuf):
1430 (get_image_truecolor):
1431 (get_image_grayscale):
1432 (gdk_pixbuf__tga_load): Remove the non-incremental load
1433 implementation, since we have generic_image_load () now.
1435 (gdk_pixbuf__tga_stop_load): Fix a potential crash discovered by
1438 2003-02-14 Matthias Clasen <maclas@gmx.de>
1440 * io-tga.c (try_preload):
1441 (gdk_pixbuf__tga_load): Actually reject images with origin
1442 not in the upper-left corner. (#105912)
1444 2003-02-06 Matthias Clasen <maclas@gmx.de>
1446 * queryloaders.c (query_module): Better error message if
1447 module_open() fails. (#105349, Tim Mooney)
1449 Mon Jan 27 17:10:30 2003 Owen Taylor <otaylor@redhat.com>
1451 * Makefile.am (gdk-pixbuf.loaders): Rewrite to run
1452 on the .la files rather than looking for .so files.
1453 (#102142, Martin Gansser)
1455 * Makefile.am: Don't build gdk-pixbuf.loaders when
1458 2003-01-05 Tor Lillqvist <tml@iki.fi>
1460 * Makefile.am (gdk-pixbuf.loaders): Use @SOEXT@ in the find command.
1462 * gdk_pixbuf.def: Add gdk_pixbuf_loader_set_size.
1464 2003-01-03 Matthias Clasen <maclas@gmx.de>
1466 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Don't crash if
1467 gdk-pixbuf.loaders file is missing. (#102222)
1469 2002-12-08 Matthias Clasen <maclas@gmx.de>
1471 * gdk-pixbuf-animation.h:
1472 * gdk-pixbuf-io.h: Add /*< public|private >*/ markers.
1474 Sat Dec 7 10:14:05 2002 Owen Taylor <otaylor@redhat.com>
1476 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
1477 also depend gdk-pixbuf-query-loaders. (#97096, Daniel Elstner)
1479 2002-12-05 Matthias Clasen <maclas@gmx.de>
1481 * io-ico.c: Remove leftover debug output. (#100357, Owen Taylor)
1483 2002-12-04 Bastien Nocera <hadess@hadess.net>
1485 * io-tiff.c: (tiff_image_parse): use G_BIG_ENDIAN instead of
1486 WORDS_BIGENDIAN which isn't set by configure.in
1488 2002-11-29 Matthias Clasen <maclas@gmx.de>
1490 * gdk-pixbuf-animation.c:
1491 * gdk-pixbuf.c: Add deprecation docs.
1493 2002-11-28 Matthias Clasen <maclas@gmx.de>
1495 * gdk-pixbuf/gdk-pixbuf-io.c:
1496 * gdk-pixbuf/gdk-pixbuf-loader.c:
1497 * gdk-pixbuf/gdk-pixbuf.c: Document 2.2 API additions. I'm not
1498 going to list all individual functions here; if you want to see
1499 the list, grep for "Since: 2.2".
1501 Fri Nov 8 19:06:07 2002 Owen Taylor <otaylor@redhat.com>
1503 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
1504 file depend on the loaders (#97096, Jeff Waugh)
1506 Wed Nov 6 15:19:53 2002 Owen Taylor <otaylor@redhat.com>
1508 * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
1511 2002-11-05 Matthias Clasen <maclas@gmx.de>
1513 * gdk-pixbuf-loader.c: Reindent to follow the gdk-pixbuf indentation.
1515 Tue Nov 5 14:16:17 2002 Owen Taylor <otaylor@redhat.com>
1517 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix
1518 leaked pixbuf reference (#96823, Morten Welinder)
1520 2002-10-23 Matthias Clasen <maclas@gmx.de>
1522 * io-gif.c (lzw_read_byte): Check for stack overflow throughout.
1523 (#91808, Elliot Lee)
1525 2002-10-21 Matthias Clasen <maclas@gmx.de>
1527 Support the Netscape application extension for gif animations
1530 * io-gif-animation.h:
1531 * io-gif-animation.c (gdk_pixbuf_gif_anim_iter_advance):
1532 Add loop count to GdkPixbufGifAnim and use it in the advance
1533 method of GdkPixbufGifAnimIter.
1535 * io-gif.c (gif_get_extension): Parse Netscape application
1536 extension block and set the animation loop count.
1538 2002-10-11 Matthias Clasen <maclas@gmx.de>
1540 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_format): Remove
1543 * gdk-pixbuf-io.h: Remove unused typedef
1544 GdkPixbufModuleGetSignatureFunc.
1546 2002-10-04 jacob berkman <jacob@ximian.com>
1548 * queryloaders.c (query_module): make legal C
1550 2002-10-04 Matthias Clasen <maclas@gmx.de>
1552 * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c
1553 gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c
1554 gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h
1555 gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c
1556 io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c
1557 io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c
1558 io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def
1559 pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def
1560 pixbufloader_jpeg.def pixbufloader_png.def
1561 pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def
1562 pixbufloader_tiff.def pixbufloader_wbmp.def
1563 pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c
1564 gdk-pixbuf-animation.h queryloaders.c: Support for separately
1565 installed loaders. (#77486)
1567 Thu Oct 3 18:25:57 2002 Owen Taylor <otaylor@redhat.com>
1569 * io-jpeg.c (gdk_pixbuf__jpeg_image_save):
1570 Fix memory leak. (#94399)
1572 Tue Oct 1 17:35:43 2002 Owen Taylor <otaylor@redhat.com>
1574 * gdkpixdata.c: Patch from Andy Wingo to always
1575 escape ? to avoid accidentally generating trigraphs
1576 in the output (#94631)
1578 2002-09-28 Tor Lillqvist <tml@iki.fi>
1580 * pixops/*.S: Don't use .type on Cygwin, either (#91597, Masahiro
1583 2002-09-27 Federico Mena Quintero <federico@ximian.com>
1585 * io-ico.c (gdk_pixbuf__ico_image_begin_load): Free the context if
1586 we cannot allocate the HeaderBuf.
1588 2002-09-27 Federico Mena Quintero <federico@ximian.com>
1590 * io-bmp.c (OneLine): Fix the update region notification to handle
1591 top-to-bottom and bottom-to-top BMPs correctly.
1593 2002-09-19 Matthias Clasen <maclas@gmx.de>
1595 * Revert the previous change; the symbols need to be exported
1596 to be usable from dlopened modules.
1598 2002-09-18 Matthias Clasen <maclas@gmx.de>
1600 * io-xpm.c, io-xbm.c, io-ico.c, io-ani.c, io-png.c,
1601 gdk-pixbuf.c, gdk-pixbuf-animation.c, gdk-pixbuf-loader.c,
1602 gdk-pixbuf-private.h: _-prefix gdk_pixbuf_non_anim_new and
1603 gdk_pixbuf_set_option. Adjust all callers.
1605 2002-09-14 Hans Breuer <hans@breuer.org>
1607 * pixops/Makefile.am : added makefile.msc to EXTRA_DIST
1609 2002-09-12 Matthias Clasen <maclas@gmx.de>
1611 * io-gif-animation.h:
1612 * gdk-pixbuf.h: Move GdkPixbufFrame from the public header to
1613 the gif-animation-specific private header. (#91929)
1615 2002-09-12 Federico Mena Quintero <federico@ximian.com>
1617 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Unref the pixbuf if we
1618 hit an unsupported colorspace.
1620 2002-09-06 Matthias Clasen <maclas@gmx.de>
1622 * io-ani.c, io-ani-animation.h, io-ani-animation.c,
1623 pixbufloader_ani.def, Makefile.am, gdk-pixbuf-io.c: New loader,
1624 for .ANI animations.
1626 * io-xpm.c (pixbuf_create_from_xpm):
1627 * io-xbm.c (gdk_pixbuf__xbm_image_load_real):
1628 * io-ico.c (DecodeHeader): Attach hotspot coordinates to the
1629 pixbuf as options "x_hot" and "y_hot".
1631 2002-09-04 Matthias Clasen <maclas@gmx.de>
1633 * io-tga.c (io_buffer_append):
1634 * io-ico.c (DecodeHeader):
1635 * io-bmp.c (grow_buffer): Don't leak memory if g_try_realloc fails.
1637 * gdk-pixbuf-io.c (pixbuf_check_ico): Fix loading of .CUR files.
1640 2002-08-25 Tor Lillqvist <tml@iki.fi>
1642 * Makefile.am (libgdk_pixbuf_2_0_la_DEPENDENCIES): Add
1643 gdk_pixbuf_win32res_lo. (#87101, J. Ali Harlow)
1645 2002-08-22 Matthias Clasen <maclas@gmx.de>
1648 gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): No longer
1649 static, thus _gdk_pixbuf-prefixed.
1651 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
1652 Keep this logic in sync with gdk_pixbuf_new_from_file(). (Based
1653 on a patch by Anders Carlsson)
1655 * io-png.c (gdk_pixbuf__png_image_save): Plug a memory
1656 leak. (#91422, Sven Neumann)
1658 2002-07-31 Sven Neumann <sven@gimp.org>
1660 * gdk-pixdata.c (gdk_pixdata_to_csource): free the result of
1661 gdk_pixdata_serialize() (bug #89411).
1663 Mon Jul 29 23:06:10 2002 Owen Taylor <otaylor@redhat.com>
1665 * gdk-pixbuf-scale.c: Fix some warnings by adding
1666 casts to PixopsInterpType. (#85839, David L. Cooper, II.)
1668 2002-07-16 Matthias Clasen <maclas@gmx.de>
1670 * io-ras.c (DoCompressed): Avoid unnecessary casting.
1672 2002-07-07 Matthias Clasen <maclas@gmx.de>
1674 * gdk-pixbuf-io.c (generic_image_load): New function for loading
1675 an image from a file either via module->load or incrementally.
1676 (prepared_notify): ModulePreparedNotifyFunc for generic_image_load.
1677 (gdk_pixbuf_new_from_file): Use generic_image_load.
1678 * io-bmp.c, io-ico.c, io-ras.c, io-wbmp.c: Remove trivial
1679 implementations of module->load. (#71266)
1681 * io-ico.c (DecodeHeader): Correct computation of image height.
1682 (OneLine): Correct update notification.
1684 Load-at-size functionality (#53726):
1686 * gdk-pixbuf-io.h (ModuleSizeFunc): New.
1687 (_GdkPixbufModule): Prepend a ModuleSizeFunc to the
1688 begin_load arguments. Adjust all modules.
1689 * gdk-pixbuf-loader.c (struct GdkPixbufLoaderPrivate): Add
1690 fields width, height, size_fixed, need_scale.
1691 (gdk_pixbuf_loader_class_init): Add size_prepared signal.
1692 (gdk_pixbuf_loader_set_size): New function.
1693 (gdk_pixbuf_loader_size_func): ModuleSizeFunc which gets
1694 passed to the module, emits size_prepared.
1695 (gdk_pixbuf_loader_prepare): Call gdk_pixbuf_loader_size_func
1696 if necessary, only emit area_prepared if no separate scaling
1698 (gdk_pixbuf_loader_update): Only emit area_updated if no
1699 separate scaling is required.
1700 (gdk_pixbuf_loader_load_module): Add size_func as first argument.
1701 (gdk_pixbuf_loader_close): If necessary scale the image
1702 to the desired size and emit area_prepared and area_updated.
1703 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Add
1704 size_prepared signal.
1705 (gdk_pixbuf_loader_set_size) New API.
1706 * gdk-pixbuf-marshal.list: Add VOID:INT,INT.
1707 * io-jpeg.c: User cinfo->output_width/height instead of
1708 cinfo->image_width/height throughout when adressing the pixbuf.
1709 (gdk_pixbuf__jpeg_image_load_increment): Call size_func, and
1710 find the nearest possible output size which libjpeg can produce
1711 that is still larger than the desired size.
1713 2002-07-06 Matthias Clasen <maclas@gmx.de>
1715 * io-tiff.c (tiff_set_error): Handle global_error == NULL
1717 (tiff_image_parse): Don't trust TIFFRGBAImageBegin to set
1718 the "put" routine. (Fixes #87384)
1719 (gdk_pixbuf__tiff_image_stop_load): Don't call TIFFClose too
1722 2002-07-02 Matthias Clasen <maclas@gmx.de>
1724 Miscellaneous bmp loader fixes (#85448, #86286, #86287):
1726 * io-bmp.c (grow_buffer): New function to avoid crashes
1727 on unchecked reallocs.
1728 (DecodeHeader, DecodeColormap, decode_bitmasks,
1729 DoCompressed): Use grow_buffer instead of g_realloc
1730 throughout. Change signatures where necessary to pass the
1732 (OneLine16): Fix loading of 16bpp BI_RGB bmps.
1733 (DoCompressed): Rewritten to properly support BI_RLE4 and
1736 Support for compressed ras images (#84994):
1738 * io-ras.c (RAS2State): Error on unsupported ras variations.
1739 (OneLine8): Fix colormap indexing.
1740 (OneLine): Call updated_func with proper region.
1741 (DoCompressed): New function, handles compressed ras data.
1742 (gdk_pixbuf__ras_image_load_increment): Handle compressed ras
1745 Better colorspace support for the jpeg loader (#61211):
1747 * io-jpeg.c (convert_cmyk_to_rgb): New function.
1748 (gdk_pixbuf__jpeg_image_load,
1749 gdk_pixbuf__jpeg_image_load_increment): Allocate a pixbuf with
1750 alpha for 4-channel jpegs and call convert_cmyk_to_rgb for these.
1752 All of this needs to be merged to GNOME 1.4 gdk-pixbuf.
1754 2002-06-28 Sven Neumann <sven@gimp.org>
1756 * gdk-pixbuf-csource.c (print_blurb): converted a Tab to spaces.
1758 Thu Jun 13 18:11:11 2002 Owen Taylor <otaylor@redhat.com>
1760 * pixops/pixops.c: Fix problem where when no alpha was
1761 involved, we scaled rather than composited, but then
1762 went ahead and composited anyways. (#76958, Patch
1763 from Matthias Clasen). Needs to be merged to GNOME
1766 2002-06-13 Matthias Clasen <maclas@gmx.de>
1768 * io-jpeg.c: Use libjpeg in buffered-image mode in order to
1769 incrementally display incrementally loaded progressive jpegs.
1771 2002-06-07 Federico Mena Quintero <federico@ximian.com>
1773 * io-bmp.c (lsb_32):
1774 (lsb_16): New functions to fetch 32 or 16-bit little-endian values
1775 starting at a specific memory location. We do this instead of
1776 GINT32_FROM_LE() as the latter is simply dereferences a cast,
1777 which doesn't work on platforms with alignment requirements.
1780 2002-06-01 Matthias Clasen <maclas@gmx.de>
1782 * gdk-pixbuf-io.c (pixbuf_check_xbm): Accept xbms starting
1783 with a C comment - those seem to be not uncommon, e.g. the Gimp
1784 produces them. (#82706)
1786 * io-xbm.c (read_bitmap_file_data): Don't leak memory on certain
1788 (gdk_pixbuf__xbm_image_load_real): Don't leak memory on valid inputs.
1790 2002-05-22 Tor Lillqvist <tml@iki.fi>
1792 * gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
1793 GTK_VERSION) in the path to the loaders on Win32, too.
1795 * Makefile.am: Pass GTK_BINARY_VERSION.
1797 2002-05-22 Federico Mena Quintero <federico@ximian.com>
1799 * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
1800 account!!! Fixes #82515.
1802 [This bug is not present in the GNOME 1.4 branch as its XPM loader
1803 does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
1804 no row padding and then uses gdk_pixbuf_new_from_data() on it.]
1806 [IMPORTANT: The comment above is to make my life easier when
1807 merging stuff across branches. If you make changes to gdk-pixbuf
1808 in either branch, please include a comment in the ChangeLog that
1809 indicates whether this should be merged into the other branch.
1812 2002-05-18 Matthias Clasen <maclas@gmx.de>
1814 * io-tiff.c (tiff_image_parse): fix packing order on bigendian
1817 Thu May 16 15:17:30 2002 Owen Taylor <otaylor@redhat.com>
1819 * pixops/pixops.c: Patch from Matthias Clasen to fix some typos
1822 Thu May 16 15:02:46 2002 Owen Taylor <otaylor@redhat.com>
1824 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix 64-bit warning.
1827 2002-05-07 Michael Natterer <mitch@gimp.org>
1829 * gdk-pixbuf/Makefile.am: build the static pixbuf loaders
1830 conditionally like the dynamic ones so --without-lib<foo> is
1831 honored when building with --disable-modules. (#66867)
1833 Sun May 5 02:27:01 2002 Soeren Sandmann <sandmann@daimi.au.dk>
1835 * Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
1837 * test-loaders.c, test-images.h: remove
1839 2002-04-24 Matthias Clasen <maclas@gmx.de>
1841 * gdk-pixbuf-io.c (gdk_pixbuf_save): Remove the ISO8859-1
1842 restriction from the description of png tEXt parameters.
1844 * io-png.c (png_text_to_pixbuf_option):
1845 (gdk_pixbuf__png_image_save): If libpng supports it,
1846 store and retrieve non-ISO8859-1 text as UTF-8. (#76172)
1848 2002-04-11 Matthias Clasen <maclas@gmx.de>
1850 More fixes for #77807:
1852 * io-tga.c (get_contiguous_pixbuf): Helper function to create
1853 a pixbuf with a contiguous pixel array while being careful about
1856 * io-tga.c (fill_in_context, get_image_pseudocolor,
1857 get_image_truecolor, get_image_grayscale): Use
1858 get_contiguous_pixbuf instead of manually allocating image
1861 * io-xpm.c (pixbuf_create_from_xpm):
1862 * io-pnm.c (gdk_pixbuf__pnm_image_load):
1863 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
1864 instead of manually allocating image storage.
1866 2002-04-09 Matthias Clasen <maclas@gmx.de>
1868 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use
1869 priv->image_module->module_name instead of image_type which may
1872 2002-04-06 Matthias Clasen <maclas@gmx.de>
1874 * io-png.c (gdk_pixbuf__png_image_load): Restructured to use
1875 gdk_pixbuf_new instead of manually allocating image storage. This
1876 gives us a good rowstride and overflow checks. (#77807)
1878 2002-04-05 Matthias Clasen <maclas@gmx.de>
1880 * io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
1881 the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
1882 put functions instead of TIFFRGBAImage. And check image dimensions
1885 2002-04-03 Matthias Clasen <maclas@gmx.de>
1887 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
1889 2002-03-29 Matthias Clasen <maclas@gmx.de>
1891 * io-png.c (png_simple_error_callback): libpng error handlers must
1892 not return to their callers, thus longjmp out. This prevents
1893 annoying stderr output from the default error handler.
1895 2002-03-27 Matthias Clasen <maclas@gmx.de>
1897 * io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.
1899 * io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
1900 end_info. Also call png_read_end to check proper ending of the png
1901 file and catch text chunks after the image data.
1903 2002-03-27 Matthias Clasen <maclas@gmx.de>
1905 * io-png.c (gdk_pixbuf__png_image_load,
1906 gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
1907 instead of system malloc.
1909 2002-03-26 Matthias Clasen <maclas@gmx.de>
1911 * io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.
1913 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
1914 context->buf on error.
1916 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
1917 stop_load even for short images to prevent memleaks.
1919 2002-03-25 Matthias Clasen <maclas@gmx.de>
1921 * io-png.c (setup_png_transformations): Changed signature to
1922 return success and set a GError parameter, adjusted all callers.
1923 Also work around a possible FPE in libpng and always check that
1924 the new info is sane.
1926 2002-03-23 Matthias Clasen <maclas@gmx.de>
1928 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
1929 context->updated_func is NULL during a nonincremental load.
1930 (gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
1932 2002-03-18 Matthias Clasen <maclas@gmx.de>
1934 * io-tga.c: Fix assumptions on rowstride by manually allocating a
1935 contiguous pixel buffer. Catch buffer overruns in RLE-modi.
1936 Support grayscale + alpha (which can be written, but not read (!)
1939 2002-03-15 Matthias Clasen <maclas@gmx.de>
1941 * io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
1943 2002-03-13 Matthias Clasen <maclas@gmx.de>
1945 * test-images.h: Add valid_ras_test and invalid_bmp_1.
1947 * test-loaders.c (main): Add random tests for ras and pnm and an
1948 invalid bmp which was a crasher until my 2002-03-12 commit.
1950 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
1953 * io-ras.c: Handle some errors.
1955 2002-03-12 Sven Neumann <sven@gimp.org>
1957 * gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
1958 calling memcpy(). Simpler and potentially faster. (#70332)
1960 2002-03-12 Matthias Clasen <maclas@gmx.de>
1962 * io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
1963 which could actually be reached by a proper error status return.
1965 2002-03-05 Matthias Clasen <maclas@gmx.de>
1967 * test-loaders.c, test-images.h: More random tests.
1969 * io-bmp.c (DecodeHeader): Fail gracefully on OOM here.
1971 Tue Mar 5 10:39:03 2002 Owen Taylor <otaylor@redhat.com>
1973 * Makefile.am (loaderdir): Put the modules into the
1974 GTK_BINARY_VERSION directory for consistency with
1975 immodules and theme engines.
1977 Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
1979 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
1980 can't load the module using the g_module_build_path()
1981 filename, try loading it as a .la file.
1983 * test-loaders.c: Look for modules in current directory
1984 rather than .libs, so we find the right .la files.
1986 * test-loaders.c: Back out some accidental commits.
1988 Sat Mar 2 21:28:03 2002 Owen Taylor <otaylor@redhat.com>
1990 * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
1993 2002-03-03 Tor Lillqvist <tml@iki.fi>
1995 * gtk-pixbuf.rc.in: Remove.
1997 * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
2000 * makefile.msc: Corresponding changes.
2002 * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
2004 2002-02-28 Matthias Clasen <maclas@gmx.de>
2006 * pixops/pixops.c (tile_make_weights): Move the call to
2007 correct_total() to the right spot. (#72732)
2009 Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
2011 * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
2012 () to group around string assigned to char[]. (#72767,
2015 2002-02-21 Havoc Pennington <hp@pobox.com>
2017 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
2018 C++-commented debug spew, reported by David L. Cooper
2020 2002-02-15 Matthias Clasen <maclas@gmx.de>
2022 * pixops/pixops.c (correct_total): New function to make sure
2023 that the weights sum up to the correct total without introducing
2025 (tile_make_weights, bilinear_make_fast_weights,
2026 bilinear_make_weights): Use correct_total.
2028 2002-02-10 Matthias Clasen <maclas@gmx.de>
2030 * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
2031 (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
2033 * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
2035 * test-images.h (ico_test_2), test-loaders.c (main): Test the
2038 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
2039 beyond the end of buffer if width % 8 != 0.
2041 * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
2042 the supported types, otherwise parse_data_for_row () will not make
2043 any progress, leading to an infinite loop.
2045 Mon Feb 11 14:31:53 2002 Owen Taylor <otaylor@redhat.com>
2047 * pixops/pixops.c (bilinear_make_weights): Fix handing of
2050 2002-02-10 Matthias Clasen <maclas@gmx.de>
2052 * test-loaders.c (main): Enable some tests which should work
2055 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
2056 invalid image dimensions and insufficient memory.
2058 * io-tga.c (try_preload): Detect invalid image dimensions.
2059 (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
2061 * io-ico.c (DecodeHeader): Detect some invalid headers and
2064 Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
2066 * pixops/pixops.c: Force all weight arrays to sum exactly
2067 to 65535. (Fixes #70971, reported by Federico Mena Quintero)
2069 * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
2072 2002-02-08 Federico Mena Quintero <federico@ximian.com>
2074 * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
2076 2002-02-08 Darin Adler <darin@bentspoon.com>
2078 * io-xbm.c: (next_int): Wean this from <ctype.h>.
2080 2002-02-01 Matthias Clasen <matthiasc@poet.de>
2082 * Makefile.am: Build the tga loader as a static library. (#70157)
2084 * io-ico.c: Merge 16- and 32-bit ico support from the stable
2087 * io-gif.c: Recomposite all images if the animation size changes
2088 while loading. (#70055)
2090 * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
2093 Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
2095 * io-jpeg.c, io-png.c: Made sure all the error cases involving
2096 jpeg or png load/saves clean themselves up properly. Marked some
2097 variables needed for cleanup volatile so they aren't clobbered by
2100 Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
2102 * pixops/pixops.c: Fix integer overflow for the values
2103 passed to the pixel functions. (#55148, fix from Michael Hore)
2105 Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
2107 * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
2110 * pixops/pixops.c (pixops_process): Comment the computation
2111 of run_end_index and fix some edge cases.
2113 * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
2114 composite_line_color_22_4a4_mmx.S}: Handle the case where
2115 dest <= dest_end properly. (#52001, fix from Michael Hore)
2117 Thu Jan 10 16:48:30 2002 Owen Taylor <otaylor@redhat.com>
2119 * pixops/pixops.c: Replace some hardcoded values with the
2120 SUBSAMPLE constant used elsewhere. (#51033)
2122 Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
2124 * Makefile.am (s-enum-types-h): Include glib-object.h,
2125 Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
2128 * *.h: G_BEGIN_DECLS cleanups.
2130 Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
2132 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
2133 - Massive cleanup, make actually legible.
2134 - Fix some clamp-to-range bugs found by Jim Cape (#68231).
2135 - Add a g_return_if_fail() if src and dest alpha don't match.
2136 - Allow for src_rowstride != dest_rowstride.
2138 2002-01-04 Hans Breuer <hans@breuer.org>
2140 * gdk_pixbuf.def : don't export functions prefixed
2143 * makefile.msc : use -FImsvc_recommende_pragmas.h
2145 Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
2147 * pixops/pixops.c (scale_line_22_33): Fix and uncomment
2150 * pixops/pixops.c (pixops_composite_nearest): Remove a
2153 * pixops/pixops.c (pixops_composite): Add some docs
2154 about the parameters.
2156 * pixops/README: Add notes about the correct algorithms
2157 for alpha compositing and how to implement them quickly.
2159 2001-12-29 Tor Lillqvist <tml@iki.fi>
2161 * Makefile.am (EXTRA_DIST): Add makefile.msc.
2163 Sat Dec 22 15:31:20 2001 Owen Taylor <otaylor@redhat.com>
2165 * gdk-pixdata.h: Fix trailing "," in enumeration.
2167 2001-12-17 Matthias Clasen <matthiasc@poet.de>
2169 * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c,
2170 gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c,
2171 gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
2173 2001-12-16 Havoc Pennington <hp@pobox.com>
2175 * gdk-pixbuf-scale.c: docs enhancements
2177 2001-12-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2179 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
2181 2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2183 * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
2184 io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
2185 assorted G_OBJECT casts where unnecessary.
2187 * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
2188 instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
2191 * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
2192 io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
2193 io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
2196 * Makefile.am, pixops/Makefile.am: Compile everything with
2197 -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
2199 * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
2201 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
2203 2001-12-12 Matthias Clasen <matthiasc@poet.de>
2205 * gdk-pixbuf-io.c: Markup fixes.
2207 2001-12-12 Matthias Clasen <matthiasc@poet.de>
2209 * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
2211 * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
2213 2001-12-11 Michael Natterer <mitch@gimp.org>
2215 * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
2216 conversion stuff; don't copy RGB pixbufs' lines around before
2219 2001-12-05 Matthias Clasen <matthiasc@poet.de>
2221 * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
2222 gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
2225 Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
2227 * io-xpm.c (pixbuf_create_from_xpm): Fill in color
2228 fields to black for transparent colors since we'll
2229 later initialize pixels from them. (Fixes purify
2230 errors, #66093, HideToshi Tajima)
2232 2001-11-30 Tor Lillqvist <tml@iki.fi>
2234 * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
2236 Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
2238 * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
2239 alignment problem in deserialization, (#65785,
2240 reported by Hidetoshi Tajima)
2242 2001-11-28 Manish Singh <yosh@gimp.org>
2244 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
2245 in missing error parameters to DecodeHeader and DecodeColormap.
2247 2001-11-21 Federico Mena Quintero <federico@ximian.com>
2249 Fix Ximian bug #12125; merged from gdk-pixbuf stable.
2251 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
2252 a simple state machine instead of a scary if/else chain.
2253 (DecodeHeader): Set the reading state.
2254 (DecodeColormap): Set the reading state.
2255 (decode_bitmasks): New function, decodes the bitmasks for
2256 BI_BITFIELDS coding.
2257 (OneLine32): Handle BI_BITFIELDS coding.
2258 (OneLine16): Likewise.
2260 2001-11-18 Hans Breuer <hans@breuer.org>
2262 * io-xpm.c : use g_strcasecmp(), some poor platforms
2263 don't have strcasecmp()
2265 * makefile.msc : do INCLUDE_png etc. definition here to avoid
2266 my temporary 'gdk-pixbuf-io-include.h' hack
2268 Sun Nov 18 07:54:22 2001 Owen Taylor <otaylor@redhat.com>
2270 * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
2272 2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2274 * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
2276 2001-10-29 Tor Lillqvist <tml@iki.fi>
2278 * Makefile.am: Use -no-undefined on Win32. Make
2279 libgdk_pixbuf_1_3_la_OBJECTS depend on
2280 gdk-pixbuf-marshal.c. Install import libraries.
2282 * gdk_pixbuf.def: Update.
2284 * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
2285 the actual DLL name of libgdk_pixbuf.
2286 (get_libdir): Use it instead of guessing.
2288 * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
2289 g_file_open_tmp() insread of mkstemp().
2291 2001-10-18 Matthias Clasen <matthiasc@poet.de>
2293 * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
2294 context when it may be NULL. (#62344)
2296 2001-10-16 Matthias Clasen <matthiasc@poet.de>
2298 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
2300 * gdk-pixbuf-csource.1: Spelling fixes.
2302 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
2304 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
2305 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
2306 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
2307 existing UKNOWN_TYPE error. (#58308)
2309 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
2310 back to gdk_pixbuf_new_from_inline(). Rework docs to try
2311 and be helpful for the common case. (#58308)
2313 2001-10-05 Sven Neumann <sven@gimp.org>
2315 * gdk-pixbuf/gdk-pixbuf-io.c
2316 * gdk-pixbuf/gdk-pixbuf-private.h
2317 * gdk-pixbuf/gdk-pixbuf.c
2318 * gdk-pixbuf/gdk-pixbuf.h
2319 * gdk-pixbuf/io-jpeg.c
2320 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
2321 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
2322 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
2323 set by an image loader. Added support for saving and reading PNG tEXt
2324 chunks in PNG images.
2326 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
2328 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
2329 use a macro to make code a bit more readable.
2331 2001-10-02 Sven Neumann <sven@gimp.org>
2333 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
2335 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
2337 * Makefile.am (s-enum-types-h): Fix a typo in the include
2338 guards. (#61254, Skip Montaro)
2340 2001-09-21 Matthias Clasen <matthiasc@poet.de>
2342 * io-xpm.c (xpm_extract_color): Rewritten to handle
2343 xpm colormap entries more thoroughly. (#59939)
2345 2001-09-21 Hans Breuer <hans@breuer.org>
2347 * gdk-pixbuf.def : updated externals
2349 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
2351 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
2353 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
2354 works in some on-demand way, so the fseek
2355 gdk_pixbuf_new_from_file() doesn't work here since we are using
2356 the raw file descriptor. So, we call lseek() on the fileno(f)
2357 before using it. (#60840).
2359 2001-09-20 James Henstridge <james@daa.com.au>
2361 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
2362 so that flags types are registered as flags rather than enums (not
2363 that there are any flags here at the moment).
2365 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
2367 * Makefile.am (gdk_pixbuf_headers): Don't include
2368 gkd-pixbuf-features.h here since is in builddir
2369 and confuses autogen rules.
2371 * Makefile.am: Don't += variables before they have values,
2372 automake-1.5 doesn't like it.
2374 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
2376 * Makefile.am: The whitespace strikes back.
2378 2001-09-17 Matt Wilson <msw@redhat.com>
2380 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
2381 LDFLAGS definition, use the -avoid-version one.
2382 (libpixbufloader_tga_la_LDFLAGS): likewise
2384 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
2386 * pixops/*: Mirror GdkInterpType to PixopsInterpType
2387 to avoid including gdk-pixbuf headers.
2389 2001-09-16 James Henstridge <james@daa.com.au>
2391 * .cvsignore: add generated files to ignore list.
2393 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
2395 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
2397 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
2399 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
2400 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
2402 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
2404 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
2405 out-of-memory situation better.
2407 * io-pnm.c: Robustness fixes for pnm loader
2409 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
2411 * io-xpm.c (parse_color): detect very long color strings
2413 All of the above from Matthias Clasen <matthiasc@poet.de>,
2414 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
2416 * test-images.h: add tests:
2417 - four valid ppm's, eight invalid (matthiasc@poet.de)
2418 - one invalid xpm (matthiasc@poet.de)
2419 - one valid tga, one invalid (sandmann@daimi.au.dk)
2420 - one invalid tiff (sandmann@daimi.au.dk
2422 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
2424 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
2425 fail - detect it when it happens
2427 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
2430 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
2433 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
2435 * Makefile.am: don't used BUILT_SOURCES to build marshal
2436 files, as in conjunction with stamp files, this can
2437 lead to endless rebuilding loops.
2439 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
2441 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
2443 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
2445 * gdk-pixbuf-csource.1: new file, manual page for
2446 the publically installed gdk-pixbuf-csource utility.
2448 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
2450 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
2451 errors from gdk_pixbuf_loader_load_module.
2453 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
2455 * io-png.c (png_row_callback): Check that row_num is valid.
2457 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
2459 * io-bmp.c (OneLine): Emit area_updated signal with proper
2460 area information. (#52002)
2462 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
2464 * test-loaders.c (test_loader): Catch errors at close time.
2465 * test-loaders.c (main): Remove C++ comments.
2467 2001-08-21 Matthias Clasen <matthiasc@poet.de>
2469 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
2470 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
2472 2001-08-20 Matthias Clasen <matthiasc@poet.de>
2474 * test-images.h, test-loaders.c: Add ico and wbmp tests.
2475 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
2476 error if buffer allocation fails.
2477 * io-ico.c: Make .ICO loader more robust.
2478 All of these are due to sandmann@daimi.au.dk (#50187)
2480 2001-08-19 Sven Neumann <sven@gimp.org>
2482 * pixops/pixops.c: applied some simple but effective optimizations
2483 to pixops_composite_nearest() and pixops_composite_color_nearest().
2485 2001-08-07 Sven Neumann <sven@gimp.org>
2487 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
2488 function, so that's what I did.
2490 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
2492 * gdk-pixdata.c: Fix a typo.
2494 2001-07-30 Hans Breuer <hans@breuer.org>
2496 * pixops/makefile.msc : new file
2497 * makefile.msc : use it to complete the build
2499 2001-07-20 Hans Breuer <hans@breuer.org>
2501 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
2502 pointer increment out of the macro, because at least one
2503 compiler (msvc 5.0) gets confused otherwise (applies the
2506 * gdk_pixbuf.def : updated exports
2508 * makefile.msc : reflect gdk-pixbuf-csource changes
2510 2001-07-17 Darin Adler <darin@bentspoon.com>
2512 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
2513 * io-png.c: (setup_png_transformations): Add ifdef so we compile
2514 without warnings with G_DISABLE_CHECKS on.
2515 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
2517 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
2518 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
2519 unused locals and add an initial value to quiet the compiler's
2520 unintialized variable warning.
2521 * pixops/pixops.c: Put an ifdef around some dead code.
2523 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
2525 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
2526 over to the new include flags AC_SUBST(). (Problem
2527 pointed out by Mikael Hermansson.)
2529 2001-06-29 Havoc Pennington <hp@redhat.com>
2531 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
2534 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
2536 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
2537 gdk-pixbuf-csource.c: Fix args to g_type_init ().
2539 2001-06-28 Havoc Pennington <hp@pobox.com>
2541 * gdk-pixdata.c: <string.h>
2543 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
2544 also leaking memory here from g_strdup_printf?)
2546 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
2548 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
2550 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
2551 instead from gdk_pixbuf_new_from_inline().
2553 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
2554 installed API for applications that need to serialize/deserialize
2555 on their own (gimp, BEAST).
2557 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
2558 program that can dump images in CSource format and Pixbuf
2559 stream format. supports RLE encoding, MACRO formatting etc...
2562 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
2564 * Makefile.am: Actually update timestamps, so rules don't
2567 2001-06-11 Havoc Pennington <hp@redhat.com>
2569 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
2570 already includes top_builddir
2572 2001-06-08 Havoc Pennington <hp@redhat.com>
2574 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
2575 bogus g_return_if_fail
2577 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
2578 likely timeout resolution, set it to an arbitrarily-chosen short
2580 Fixes bug #55953 from warmenhoven@yahoo.com
2582 2001-06-07 Havoc Pennington <hp@redhat.com>
2584 * Makefile.am: use Owen's new way of doing stampfiles/generated
2587 2001-06-07 Havoc Pennington <hp@redhat.com>
2589 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
2591 2001-06-05 Havoc Pennington <hp@redhat.com>
2593 * test-loaders.c (main): use putenv not setenv, reported by
2596 2001-05-08 Havoc Pennington <hp@redhat.com>
2598 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
2599 and fix behavior to still subst color if the original image
2602 2001-06-04 Havoc Pennington <hp@redhat.com>
2604 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
2607 2001-06-01 Havoc Pennington <hp@redhat.com>
2609 Apply patch from sandmann@daimi.au.dk, with some tweaks.
2610 Makes things a bit more robust, and adds test-loaders.c
2611 which is good for finding further robustness bugs to fix.
2613 * io-tiff.c: Try to work around libtiff suckiness a bit;
2614 put a giant thread lock on the whole loader,
2615 paranoically check both whether error handlers were called and
2616 also whether functions return false. Handle case where width or
2617 height is 0. Various cleanups.
2619 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
2621 (png_error_callback): apparently libpng expects you to longjmp out
2624 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
2625 (lzw_read_byte): change "Mail jrb if this fails" g_warning
2627 (gif_get_lzw): check for out-of-memory
2628 (gif_prepare_lzw): catch/report an error
2629 (new_context): use try_malloc, since GifContext is nearly 70K
2630 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
2631 so we don't crash later.
2633 * Makefile.am: Add test-loaders
2635 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
2638 2001-05-29 Darin Adler <darin@eazel.com>
2640 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
2642 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
2644 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
2645 fix up bmp decoder to:
2646 - adds 16 bpp bmp support (bug #53884)
2647 - adds OS/2 1.x format bmp support (bug #54964)
2648 - adds 4 bpp RLE compressed bmp support
2649 - adds 1 bpp colormap support
2650 - fixes negative height (top down) bmp support
2652 2001-05-25 Hans Breuer <hans@breuer.org>
2654 * gdk_pixbuf.def : reflect Havoc's recent api change
2656 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
2658 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
2659 excess $(GLIB_LIBS).
2661 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
2663 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
2665 2001-05-04 Havoc Pennington <hp@redhat.com>
2667 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
2668 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
2671 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
2672 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
2673 confusion of using "src" instead of "p".
2674 (pixops_composite_color_nearest): Use a more accurate (and
2675 correct, to begin with) compositing method. This cures checks
2676 showing through on images with no alpha.
2678 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
2681 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
2683 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
2684 area_updated signal to use signed ints. Removed animation-related
2687 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
2690 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
2691 all the pesky details. Remove old frame-based API. Make
2692 GdkPixbufAnimation an abstract base class, derived by the loaders.
2694 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
2696 * Makefile.am (LDADDS): Add $(MATH_LIB).
2698 2001-04-18 Havoc Pennington <hp@redhat.com>
2700 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
2703 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
2705 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
2706 so we don't try to get <gtk/gtkobject.h> from standard search
2709 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
2710 add gdk-pixbuf-marshal.list to EXTRA_DIST.
2711 take gdk-pixbuf-marshal.h out of _la sources.
2713 2001-03-19 Tor Lillqvist <tml@iki.fi>
2715 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
2717 * gdk_pixbuf.def: Update.
2719 * pixbufloader_*.def: Just export the fill_vtable functions now.
2721 2001-03-18 Mike Kestner <mkestner@ameritech.net>
2723 * make-inline-pixbuf.c (main): Added logic to remove output when
2726 2001-03-14 Havoc Pennington <hp@redhat.com>
2728 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
2729 from gdk-pixbuf-marshal.h, fixes parallel makes.
2731 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
2733 * test-gdk-pixbuf.c: fixed includes.
2735 2001-02-18 Havoc Pennington <hp@pobox.com>
2737 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
2738 (gdk_pixbuf_get_named_module): prepend underscore
2739 (gdk_pixbuf_get_module): prepend underscore
2741 2001-02-19 Havoc Pennington <hp@redhat.com>
2743 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
2745 2001-02-17 Havoc Pennington <hp@pobox.com>
2747 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
2749 2001-02-07 Alexander Larsson <alexl@redhat.com>
2751 * io-xpm.c (free_buffer):
2752 Use g_free, since the buffer is allocated with g_try_alloc().
2754 2001-02-06 Christophe Merlet <redfox@eikonex.org>
2756 * gdk-pixbuf-data.c: Fixes a minor typo.
2758 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
2760 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
2761 we finally need the gobject->gruntime rename.
2763 * *.c: scratched calls to g_type_init(), there's simply no point in
2764 doing that, use gtk_init().
2766 2001-02-01 Havoc Pennington <hp@pobox.com>
2768 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
2769 in struct to "priv" for C++
2771 2001-01-31 Havoc Pennington <hp@pobox.com>
2773 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
2775 2001-01-26 Havoc Pennington <hp@redhat.com>
2777 * gdk-pixbuf-io.c (mname): fix included modules case.
2779 2001-01-22 Havoc Pennington <hp@redhat.com>
2781 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
2782 from gdk_pixbuf_load_module
2784 2001-01-22 Havoc Pennington <hp@redhat.com>
2786 * Makefile.am: Add built marshaller files to support
2787 GdkPixbufLoader signals
2789 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
2790 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
2791 module location, rather than acting as a fallback, because we are
2792 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
2794 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
2796 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
2797 from gtk, and add error to close(), because stop_load may do
2798 parsing of the image.
2800 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
2802 * io-*.c: make individual operations static, and add fill_vtable
2803 functions which are exported. Fix the collection of type warnings
2804 that surfaced, including a number of functions that didn't
2805 properly take a GError and some that weren't
2806 const-correct. Involved adding error handling for a few loaders.
2808 * gdk-pixbuf-io.h: Add error reporting to stop_load function
2810 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
2811 a function that fills in the GdkPixbufModule vtable, instead of
2812 looking up all the image functions individually; this means we
2813 can get type safety within modules for the loader functions.
2814 Also it means you don't have to keep the statically compiled and
2815 GModule versions in sync.
2817 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
2819 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
2821 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
2823 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
2826 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
2828 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
2831 2001-01-20 John Harper <jsh@eazel.com>
2833 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
2834 collision between Xlib's RdBitF.c and io-tiff.c
2836 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
2839 [ merged from stable gdk-pixbuf module. Untested, but it
2840 compiles, and works fine in the stable module ]
2842 2001-01-18 Tor Lillqvist <tml@iki.fi>
2844 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
2845 g_win32_get_package_installation_subdirectory() function. No need
2846 to include windows.h.
2847 (gtk_win32_get_installation_directory): Remove this then.
2849 2001-01-01 Havoc Pennington <hp@redhat.com>
2851 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
2852 @LIBTOOL_EXPORT_OPTIONS@
2854 2000-12-30 Tor Lillqvist <tml@iki.fi>
2856 * gdk_pixbuf.def: Update.
2858 2000-12-16 Havoc Pennington <hp@pobox.com>
2860 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
2861 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
2862 (gdk_pixbuf_frame_copy): new function
2863 (gdk_pixbuf_frame_free): new function
2864 (gdk_pixbuf_frame_get_type): new function
2865 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
2867 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
2869 * Makefile.am: Add -avoid-version for all modules.
2871 2000-11-13 Havoc Pennington <hp@redhat.com>
2873 * io-png.c (png_simple_error_callback): fix error message to not
2874 say "save" since it's used for loading
2876 2000-11-11 Hans Breuer <Hans@Breuer.Org>
2878 * gdk-pixbuf-io.c : Fix all function prototype macros for self
2879 contained image handlers (!USE_G_MODULE). Files to save should
2880 be opened in binary mode, fopen(s, "wb").
2882 * io-xpm.c : added HAVE_UNISTD_H condition
2884 2000-11-11 Tor Lillqvist <tml@iki.fi>
2886 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
2888 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
2889 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
2890 mktemp() and open()).
2892 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
2894 2000-11-01 Havoc Pennington <hp@pobox.com>
2896 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
2897 a pixbuf pointing to a subregion of another pixbuf.
2899 2000-10-16 Tor Lillqvist <tml@iki.fi>
2901 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
2903 2000-10-16 Havoc Pennington <hp@redhat.com>
2905 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
2906 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
2907 add error reporting here also
2909 * make-inline-pixbuf.c (main): use GError
2911 * io-xpm.c: include unistd.h
2913 * gdk-pixbuf-util.c: include string.h
2915 * io-*.c: add error reporting
2917 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
2920 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
2922 * gdk-pixbuf-io.h: Add GError** to load_increment and load
2925 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
2926 a G_FILE_ERROR if we fail to write or close the file.
2928 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
2929 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
2930 the GError naming rules. Add GError** to load functions.
2932 2000-10-06 Havoc Pennington <hp@redhat.com>
2934 * gdk-pixbuf.h: add GdkPixbufAlphaMode
2936 2000-10-06 Havoc Pennington <hp@redhat.com>
2938 This entry is a summary of the merged-in changes from 1.0.
2939 Relevant original ChangeLog entries are spliced in after
2940 this entry; the files they refer to are from the 1.0
2943 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
2946 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
2947 Add progressive loader from 1.0
2949 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
2952 * io-pnm.c: new version from 1.0 tree
2954 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
2957 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
2959 (gif_get_next_step): return 0 here, sync from 1.0
2961 * gdk-pixbuf-util.c: sync email address change for Cody
2964 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
2966 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
2967 last nights code was still "broken". Should now properly handle
2968 all error conditions gracefully.
2970 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
2972 * gdk-pixbuf/io-pnm.c: Rewrote.
2974 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
2976 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
2977 the correct dest offset.
2979 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
2981 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
2983 2000-08-05 Larry Ewing <lewing@helixcode.com>
2985 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
2987 * gdk-pixbuf/io-xpm.c: same as above.
2989 2000-07-26 Michael Meeks <michael@helixcode.com>
2991 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
2994 2000-07-21 Larry Ewing <lewing@helixcode.com>
2996 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
2997 xpm at least supports the progressive interface like the one in
2998 io-tiff.c. This should be reimplemented as an actual progressive
3001 2000-07-19 Jonathan Blandford <jrb@redhat.com>
3003 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
3004 make it look better.
3005 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
3006 meeks to handle errors better.
3008 2000-10-07 Tor Lillqvist <tml@iki.fi>
3011 * pixbufloader_jpeg.def
3012 * pixbufloader_png.def: Add new entry points.
3014 * makefile.mingw.in: Use libintl.
3016 2000-10-06 Havoc Pennington <hp@redhat.com>
3018 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
3019 consistent with gdk_pixbuf_loader_new_with_type().
3020 Return runtime error if a module is missing.
3022 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
3024 2000-10-05 Havoc Pennington <hp@redhat.com>
3026 Pixbuf saving, patch from David Welton.
3028 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
3029 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
3031 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
3033 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
3035 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
3037 * gdk-pixbuf-io.c (gdk_pixbuf_save):
3038 (gdk_pixbuf_savev): Implement pixbuf saving routines
3040 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
3043 * gdk-pixbuf.h: Add public save routines; add pixbuf error
3046 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
3048 2000-10-05 Dan Winship <danw@helixcode.com>
3050 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
3051 all three of these files are the JPEG image loader. (From
3054 2000-10-03 Tor Lillqvist <tml@iki.fi>
3056 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
3057 gdk-pixbuf's version number in the rule for makefile.mingw itself.
3059 * gdk_pixbuf.def: Add new entry points.
3061 2000-09-26 Havoc Pennington <hp@redhat.com>
3063 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
3064 function here, instead of putting it in a private GTK+ file.
3066 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
3067 enum here for the known formats of inlined pixbufs.
3068 Also, #define our file magic here.
3070 2000-06-23 Havoc Pennington <hp@redhat.com>
3072 * make-inline-pixbuf.c: Small program that creates C variable
3073 declarations of inline pixbuf data. This can be read
3074 by gdk_pixbuf_new_from_inline.
3076 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
3077 inline pixbuf data and create a pixbuf from it.
3079 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
3081 2000-09-07 Tor Lillqvist <tml@iki.fi>
3083 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
3086 2000-08-12 Tor Lillqvist <tml@iki.fi>
3088 * gdk_pixbuf.def: Add missing entry point.
3090 2000-08-10 Havoc Pennington <hp@redhat.com>
3092 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
3093 (s/pixbuf_/pixbufloader_)
3095 2000-08-02 Tor Lillqvist <tml@iki.fi>
3101 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
3103 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
3104 one. Fix names of DLLs to have '-' instead of '_'.
3106 2000-07-31 Elliot Lee <sopwith@redhat.com>
3107 * io-wbmp.c: Some bug fixes - now tested to work.
3109 2000-07-27 Elliot Lee <sopwith@redhat.com>
3111 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
3112 gdk_pixbuf_get_named_module() function to facilitate above change
3113 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
3114 Implement loader for WBMP format.
3115 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
3117 2000-07-23 Tor Lillqvist <tml@iki.fi>
3122 * pixops/makefile.mingw.in
3123 * pixbuf_*.def: New files.
3126 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
3128 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
3129 New function, to get the GTK+ installation directory from
3130 the Windows Registry, where the installation program
3131 for whatever software includes GTK+ has stored it.
3133 Used to avoid having hardcoding the directory where to look for
3134 loaders. This function is needed by gtk, too, so it should
3135 really be just in one place. Maybe a small static library
3136 one level up from here?
3138 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
3139 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
3140 Open file in binary mode. This *is* standard C. (No-op on Unix,
3143 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
3145 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
3146 mktemp() and open().
3147 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
3149 * pixops/*.S: The Gas from mingw32 doesn't like the .type
3150 pseudo-op. Conditionalise on __MINGW32__, but probably
3151 should conditionalise on Gas version instead? Or could we
3152 do without .type on all systems?
3154 * pixops/timescale.c: Use g_get_current_time()
3155 instead of gettimeofday().
3157 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
3159 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
3161 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
3163 * gdk-pixbuf.c: Add <string.h> include.
3165 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
3167 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
3168 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
3169 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
3170 use g_object_new() instead of g_type_create_instance() which
3171 is a private function for fundamental type implementations.
3173 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
3175 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
3176 soname scheme for gdk-pixbuf.
3178 2000-06-21 Havoc Pennington <hp@pobox.com>
3180 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
3181 (i.e. derivation is not allowed, and there are no virtual methods
3183 (gdk_pixbuf_preinit): Call g_type_init() here.
3184 (gdk_pixbuf_init): Add a user-friendly init function, for users
3185 of standalone gdk-pixbuf
3187 * gdk-pixbuf-animation.c: Convert to GObject, in the same
3188 way GdkPixbufAnimation was done.
3190 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
3191 gdk_pixbuf_finalize() from API, since these are broken and don't
3192 make sense with new GObject stuff.
3194 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
3196 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
3197 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
3200 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
3202 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
3203 so I needed something to warm my thighs. Running plain infinite
3204 loops on your laptop to make it hot is not very much fun. A demo
3205 of the gdk-pixbuf scaling functions is way better, and looks
3208 * configure.in (AC_OUTPUT): Added the demo Makefile.
3210 * Makefile.am (SUBDIRS): Added the demo directory.
3212 2000-06-09 Larry Ewing <lewing@helixcode.com>
3214 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
3215 setjmp for the png error handler. It seems setting the error
3216 handling functions does not avoid the jump, and so not calling
3217 setjmp was causing the incremental loader to jump into lala land.
3218 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
3219 not sure this one is actually required but the docs say it must be
3220 set for every call to a png_* function.
3221 Also changed the comment to reflect the fact that setting the
3222 error handlers does _not_ avoid the longjmp.
3224 2000-06-06 Larry Ewing <lewing@helixcode.com>
3226 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3227 take frame offest into account when trying to calculate the
3228 animation bbox. Also set the width to the width not the height.
3229 (gdk_pixbuf_loader_animation_done): cycle over the frames to
3230 calculate bbox because now we finally have all the offset
3231 information for each frame.
3233 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
3235 * configure.in: add some gtk parameters to the
3236 GDK_PIXBUF_LIBÃ�²S and GDK_PIXBUG_INCLUDEDIR vars. One more
3237 fight in my crusade for strange prefix compile...
3239 2000-05-30 Not Zed <NotZed@HelixCode.com>
3241 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
3242 Initialise the error handler exit routine to our own. Note this
3243 means that every function that accesses the jpeg lib on this
3244 object MUST do a setjmp.
3245 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
3246 lib for handling fatal error.
3247 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
3248 your applications dont quit if there's a jpeg error!
3250 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
3252 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
3253 from Frank de Lange <frank@unternet.org>.
3255 2000-05-09 Darin Adler <darin@eazel.com>
3257 * gdk-pixbuf/test-gdk-pixbuf.c:
3258 Fixed includes to get rid of accidental GNOME dependency.
3260 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
3261 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
3263 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
3265 * configure.in: Bumped version number to 0.8.0.
3267 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
3268 file was not being distributed.
3270 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
3272 2000-05-09 Darin Adler <darin@eazel.com>
3274 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
3275 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
3276 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
3277 formats to 32-bit formats to re-use the high bits of the color values
3278 so that white maps to full white.
3280 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
3282 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
3283 detailed information about the structure and algorithms
3284 of pixops so people can fix it instead of breaking it.
3286 2000-05-04 Darin Adler <darin@eazel.com>
3288 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
3289 (composite_pixel), (composite_line):
3290 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
3291 Now that Owen explained the algorithm, I think I implemented it
3292 right for the cases where the destination pixbuf is not opaque.
3293 The test does seem to confirm it.
3295 2000-05-04 Darin Adler <darin@eazel.com>
3297 * gdk-pixbuf/.cvsignore:
3298 * gdk-pixbuf/Makefile.am:
3299 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
3300 (load_pixel), (simple_composite_test_one),
3301 (simple_composite_test_one_type), (simple_composite_test), (main):
3302 Added some tests of composite to highlight problems in the old
3303 implementation. These tests run without any user interaction.
3304 Just do "make check".
3306 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
3307 (composite_pixel), (composite_line): Fix composite to do a textbook
3308 "A over B" composite. This was clearly the intent, and it was easy
3309 to fix the code to do it. (Note to those that read my earlier tries
3310 at a patch; this version fixes typos that were present in all
3311 my patch attempts. I checked the final version by adding more tests.)
3313 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
3315 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
3316 offset y coordinate accordining to render_y0.
3318 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
3321 2000-04-22 James Henstridge <james@daa.com.au>
3323 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
3324 package to the devel package. The only file installed in bin is
3325 gdk-pixbuf-config, which belongs in -devel. This should allow having
3326 multiple versions of the main gdk-pixbuf package installed.
3328 2000-04-17 Karl Eichwalder <ke@suse.de>
3330 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
3331 Reported by Jens Finke.
3333 2000-04-14 Tomasz KÃ�³opczko <kloczek@pld.org.pl>
3335 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
3336 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
3338 2000-04-13 James Henstridge <james@daa.com.au>
3340 * configure.in: when performing the configure check to see if
3341 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
3342 rather than the other way round. Also, call AC_MSG_RESULT in the
3343 even that dynamic modules were not supported.
3345 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
3347 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
3348 hook to the last unref operation.
3350 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
3351 function to set the last unref handler for a pixbuf.
3352 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
3353 It calls the pixbuf's destroy notification function and frees the
3354 GdkPixbuf structure itself.
3355 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
3358 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
3359 for the last unref handler and its user data.
3361 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
3362 g_new0() to allocate the pixbuf.
3364 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
3365 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
3366 was not specifying the `frame' argument.
3368 * gdk-pixbuf/gdk-pixbuf-animation.c
3369 (gdk_pixbuf_animation_get_width): Fixed docstring.
3370 (gdk_pixbuf_animation_get_height): Likewise.
3371 (gdk_pixbuf_animation_get_num_frames): Likewise.
3372 (gdk_pixbuf_animation_get_frames): Likewise.
3374 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
3377 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
3379 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
3381 * doc/tmpl/refcounting.sgml: Updated with the information about
3382 the last unref handler.
3384 * doc/tmpl/*.sgml: Markup tweaks.
3386 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
3387 update the libtool version number for libgnomecanvaspixbuf as
3389 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
3390 as well, or the old ones won't work with the new stuff. Also,
3391 renamed the modules as follows.
3393 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
3394 modules are called "libpixbufloader-<format>.so" instead of
3395 "libpixbuf-<format>.so". They needed renaming so that the new
3396 loaders won't overwrite the old ones; even with the versioning
3397 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
3400 2000-04-12 Paolo Molaro <lupus@debian.org>
3402 * .cvsignore, src/.cvsignore: shut up cvs.
3404 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
3406 Most of this patch is based on a patch by Havoc Pennington
3407 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
3408 remove the libart dependency.
3410 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
3411 (GdkColorspace): New enum that for now only contains
3413 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
3414 notification function.
3415 (GdkInterpType): New num with interpolation types.
3417 * *.[ch]: Replace the libart stuff with our own stuff.
3419 * pixops/*.[ch]: Likewise.
3421 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
3422 declarations of the GdkPixbuf structures.
3424 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
3426 (gdk_pixbuf_get_format): Constify.
3427 (gdk_pixbuf_get_n_channels): Constify.
3428 (gdk_pixbuf_get_has_alpha): Constify.
3429 (gdk_pixbuf_get_bits_per_sample): Constify.
3430 (gdk_pixbuf_get_pixels): Constify.
3431 (gdk_pixbuf_get_width): Constify.
3432 (gdk_pixbuf_get_height): Constify.
3433 (gdk_pixbuf_get_rowstride): Constify.
3435 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
3438 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
3439 bits_per_sample argument; currently only 8 bits per sample are
3442 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
3444 (gdk_pixbuf_frame_get_x_offset): New accessor.
3445 (gdk_pixbuf_frame_get_y_offset): New accessor.
3446 (gdk_pixbuf_frame_get_delay_time): New accessor.
3447 (gdk_pixbuf_frame_get_action): New accessor.
3449 * gdk-pixbuf/gdk-pixbuf-render.c
3450 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
3451 mask rectangle for pixbufs without an alpha channel, set the
3452 *mask_return to NULL.
3454 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
3456 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
3458 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
3459 preconditions. Maybe we should also check for the colorspace,
3460 bits per pixel, and such.
3461 (gdk_pixbuf_composite): Likewise.
3462 (gdk_pixbuf_composite_color): Likewise.
3463 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
3464 cannot allocate the new pixbuf.
3465 (gdk_pixbuf_composite_color_simple): Likewise.
3467 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
3468 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
3471 * gdk-pixbuf/io-bmp.c: Fix includes.
3473 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
3478 * configure.in: Removed checks for libart.
3480 * gdk-pixbuf/Makefile.am: Removed references to libart.
3481 (noinst_HEADERS): Added gdk-pixbuf-private.h.
3483 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
3484 the version number of the libtool library to indicate that this
3485 definitely is not compatible with the old usage. I know you love
3488 * configure.in: Bumped version number to 0.7.0.
3492 * gdk-pixbuf-config.in (--libs): We no longer require libart.
3494 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
3496 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
3498 2000-04-06 Jonathan Blandford <jrb@redhat.com>
3500 * gdk-pixbuf/testanimation.c (main): add more info to the
3501 testanimation frames.
3503 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
3505 * gdk-pixbuf/gdk-pixbuf-animation.c
3506 (gdk_pixbuf_animation_get_width): New accessor function.
3507 (gdk_pixbuf_animation_get_height): New accessor function.
3508 (gdk_pixbuf_animation_get_num_frames): New accessor function.
3509 (gdk_pixbuf_animation_get_frames): New accessor function.
3511 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
3513 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
3514 is private information, and the art_pixbuf will go away soon.
3516 2000-03-31 Mark Crichton <crichton@gimp.org>
3518 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
3519 and gdk_pixbuf_get_artpixbuf accessor functions.
3521 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
3523 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
3524 gboolean instead of int.
3526 2000-03-29 Radek Doulik <rodo@helixcode.com>
3528 * gdk-pixbuf/gdk-pixbuf-animation.c
3529 (gdk_pixbuf_animation_new_from_file): same as below
3531 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
3532 height in GdkPixbufAnimation
3534 2000-03-28 Radek Doulik <rodo@helixcode.com>
3536 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
3537 context->frame_done_func and context->anim_done_func to make
3538 progressive animation loading work
3540 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3541 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
3542 gdk_pixbuf_loader_prepare happy)
3543 (gdk_pixbuf_loader_frame_done): update animation bbox
3545 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
3548 2000-03-27 Radek Doulik <rodo@helixcode.com>
3550 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
3551 instead of width and height
3553 2000-03-27 Owen Taylor <otaylor@redhat.com>
3555 * gdk-pixbuf/pixops/pixops.c: Fix problem with
3556 precendence of >> and & which was keeping composite_color
3557 from working with non-gray images.
3559 2000-03-08 Jonathan Blandford <jrb@redhat.com>
3561 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
3562 (gdk_pixbuf__gif_image_load_animation): free the context.
3564 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
3566 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
3567 mis-interpretation of the Microsoft documentation. Now
3568 it can load .BMP files that are not generated by The Gimp
3571 2000-03-01 Mark Crichton <crichton@gimp.org>
3573 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
3574 fix the last auto* build bug (where we have libart, but no
3577 * gdk-pixbuf/Makefile.am: Same.
3579 2000-02-28 Matt Wilson <msw@redhat.com>
3581 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
3582 s/unsigned short/guint16/g, s/unsigned char/guint8/g
3584 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
3586 * README: We don't require libgif/ungif nor libXpm.
3588 * NEWS: This was outdated, so updated it.
3590 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
3592 * gdk-pixbuf.m4: Use the correct name for
3593 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
3596 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
3598 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
3600 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
3601 library's particular options to configure.in.
3603 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
3606 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
3608 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
3609 Fixed typo in prototype name.
3611 * configure.in: Changed duplicated AC_MSG_CHECKING message to
3612 something more meaningful; now it is "checking whether dynamic
3615 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
3616 the timescale program.
3618 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
3619 creating a single static library with all the image format modules
3622 2000-02-20 Miguel de Icaza <miguel@gnu.org>
3624 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
3625 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
3627 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
3628 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
3629 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
3630 (gdk_pixbuf__tiff_image_load): Add prefix.
3631 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
3632 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
3634 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
3635 (gdk_pixbuf__ras_image_load): Updated invocation.
3636 (gdk_pixbuf__ras_image_begin_load): Add prefix.
3637 (gdk_pixbuf__ras_image_stop_load): Add prefix.
3638 (gdk_pixbuf__ras_image_load_increment): Add prefix.
3640 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
3641 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
3642 (gdk_pixbuf__pnm_image_load_increment): Add prefix
3643 (gdk_pixbuf__pnm_image_load): Add prefix.
3645 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
3646 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
3647 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
3648 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
3650 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
3651 (gdk_pixbuf__ico_image_load): update invocation.
3652 (gdk_pixbuf__ico_image_load_increment): Add prefix.
3653 (gdk_pixbuf__ico_image_load): update invocation.
3654 (gdk_pixbuf__ico_image_begin_load): Add prefix.
3655 (gdk_pixbuf__ico_image_load): update invocation.
3656 (gdk_pixbuf__ico_image_stop_load): Add prefix.
3658 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
3659 (gdk_pixbuf__gif_image_load): Add prefix.
3660 (gdk_pixbuf__gif_image_begin_load): Add prefix.
3661 (gdk_pixbuf__gif_image_load_increment): Add prefix.
3662 (gdk_pixbuf__gif_image_load_animation): Add prefix.
3663 (gdk_pixbuf__gif_image_stop_load): Add prefix.
3665 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
3666 (gdk_pixbuf__bmp_image_load): Rename function called.
3667 (gdk_pixbuf__bmp_image_load_increment): Add prefix
3669 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
3670 (gdk_pixbuf__png_image_begin_load): Add prefix.
3671 (gdk_pixbuf__png_image_stop_load): Add prefix.
3672 (gdk_pixbuf__png_image_load_increment): Add prefix.
3674 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
3675 (gdk_pixbuf_load_module): Load the shared library entry points
3676 using a "gdk_pixbuf__$module_name" prefix.
3677 (pixbuf_module_symbol): Wrapper routine that uses the module
3678 prefix for the modules to load the information.
3680 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
3681 lets the user specify that gdk-pixbuf should link all image loader
3682 code into the library instaed of creating shared library modules.
3684 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
3685 to BUILD_DYNAMIC_MODULES.
3687 2000-02-19 Jonathan Blandford <jrb@redhat.com>
3689 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
3690 colormap entry is Transparent.
3692 2000-02-19 Owen Taylor <otaylor@redhat.com>
3694 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
3695 scale factors for non-alpha case.
3697 2000-02-14 Mark Crichton <crichton@gimp.org>
3699 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g"
3700 color type. Imlib/libXpm handle this, but we didn't.
3702 2000-02-14 Darin Adler <darin@eazel.com>
3704 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
3705 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
3707 2000-02-14 Elliot Lee <sopwith@redhat.com>
3708 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make
3709 passed-in argument 'const'.
3711 2000-02-04 Michael Meeks <mmeeks@gnu.org>
3713 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
3714 (gif_get_frame_info): put the offsets on the context.
3715 (gif_get_lzw): copy them off into the frame.
3716 (new_context): no change required; will 0 offsets by default.
3718 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
3720 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
3723 * gdk-pixbuf/pixops/pixops.h: const.
3725 * gdk-pixbuf/gdk-pixbuf-util.c: const.
3727 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
3729 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
3731 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
3733 * gdk-pixbuf/gdk-pixbuf-render.c
3734 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
3735 and height being >= 0. Also, do nothing if either of them is
3736 zero. Thanks to Ettore for pointing this out.
3737 (gdk_pixbuf_render_to_drawable): Likewise.
3738 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
3740 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
3742 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
3743 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
3745 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
3746 of the screen when the window is resized. Thanks to David
3747 N. Welton <davidw@linuxcare.com> for pointing this out.
3748 Misc. cleanups to the rest of the file.
3750 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
3752 * doc/tmpl/rendering.sgml: gnome_init() does not call
3753 gdk_rgb_init(), so don't mention that it does in the
3754 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
3757 2000-01-31 Havoc Pennington <hp@redhat.com>
3759 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
3761 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
3763 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
3764 Wainwright to fix 4a => 4a scaling.
3766 2000-01-29 Mark Crichton <crichton@gimp.org>
3768 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
3769 put `libart-config --libs` in instead of -lart_lgpl.
3771 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
3773 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
3775 (pnm_read_ascii_scanline): Initialize data and mask.
3777 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
3778 fallbackcolor to keep gcc happy.
3780 * configure.in: Bumped version number to 0.5.0.
3782 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
3785 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
3786 parentheses around + in a shift to remove a compiler warning.
3787 (pixops_process): Likewise.
3789 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
3792 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
3794 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
3796 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
3798 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
3799 x_set and y_set arguments. Now they are always on and start with
3800 defaults of 0.0 in units.
3801 (gnome_canvas_pixbuf_class_init): Likewise.
3802 (gnome_canvas_pixbuf_set_arg): Likewise.
3803 (gnome_canvas_pixbuf_get_arg): Likewise.
3804 (compute_viewport_affine): Likewise; always use the priv->x and
3807 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
3808 removal of the x_set/y_set arguments.
3810 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
3812 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
3813 as the input parameter.
3815 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
3816 Return the same animation as the input parameter.
3818 2000-01-16 Elliot Lee <sopwith@redhat.com>
3820 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
3822 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
3824 * configure.in: Removed the broken --enable-canvas-pixbuf option.
3825 Added the stuff necessary to substitute the variables in
3826 gnomecanvaspixbufConf.sh.in.
3828 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
3829 tiny gnomecanvaspixbuf library.
3831 * Makefile.am: Build gnomecanvaspixbufConf.sh.
3833 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
3834 build it if gdk-pixbuf is being built outside of gnome-libs.
3836 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
3838 * gdk-pixbuf/gdk-pixbuf-render.c
3839 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
3840 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
3841 needed, and do not use a clipping mask when rendering the pixmap.
3842 Tweaked documentation a little.
3844 * HACKING: New file with hacking policies for the gdk-pixbuf
3847 * doc/Makefile.am (tmpl_sources): Added missing backslash.
3849 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
3850 scanning for docstrings.
3852 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
3853 checks more stringent. Removed "gint" abominations. Made
3854 documentation consistent with the rest of the functions.
3856 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
3859 2000-01-14 Jonathan Blandford <jrb@redhat.com>
3861 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
3862 function to let you create a gdk_pixmap from a gdk_pixbuf.
3864 2000-01-11 Jacob Berkman <jacob@helixcode.com>
3866 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
3867 $LIBART_CFLAGS to $INCLUDES
3869 2000-01-10 Elliot Lee <sopwith@redhat.com>
3871 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
3873 * configure.in: Define version macros. Generate
3874 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
3876 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
3878 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
3879 gdk-pixbuf-features.h declarations, plus some initialization
3882 2000-01-05 Owen Taylor <otaylor@redhat.com>
3884 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
3885 confusion. (Again caught by Tomas Ogren's Purify)
3887 2000-01-07 Jonathan Blandford <jrb@redhat.com>
3889 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
3892 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
3893 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
3894 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
3896 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
3898 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
3899 ref-counting mess is finally fixed. Added progressive animation
3901 (gif_get_lzw): remove memory_leak
3903 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
3906 2000-01-05 Owen Taylor <otaylor@redhat.com>
3908 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of
3911 * gdk-pixbuf/pixops/pixops.c: Fix double increments when
3912 dest_channels == 4. (Pointed out by Tomas Ogren)
3914 2000-01-05 Mark Crichton <crichton@gimp.org>
3916 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
3917 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
3919 2000-01-05 Elliot Lee <sopwith@redhat.com>
3921 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
3923 2000-01-05 Owen Taylor <otaylor@redhat.com>
3925 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
3926 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
3927 Added scaling functions into gtk-doc framework.
3929 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
3931 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
3933 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
3934 immediately if scale_x or scale_y is 0.
3936 2000-01-05 Owen Taylor <otaylor@redhat.com>
3938 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
3939 arrays in benchmark.
3941 2000-01-05 Jonathan Blandford <jrb@redhat.com>
3943 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
3944 to make it more compatible with the rest of GTK. Added animation
3945 framework for progressive loading.
3947 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
3949 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
3950 * gdk-pixbuf/io-png.c (image_begin_load): ditto
3951 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
3952 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
3953 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
3954 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
3955 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
3957 2000-01-05 Owen Taylor <otaylor@redhat.com>
3959 * gdk-pixbuf/pixops/README: Added a README with a TODO
3960 and some explainations of the algorithms.
3962 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
3963 to reduce flashing when resizing.
3965 2000-01-05 Owen Taylor <otaylor@redhat.com>
3967 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
3968 code that will eventually migrate into libart.
3970 * configure.in acconfig.h: Add checks for MMX compiler support
3972 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
3973 Nice wrapper routines for the code in pixops that operate
3974 on pixbufs instead of raw data.
3976 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
3979 2000-01-05 Jonathan Blandford <jrb@redhat.com>
3981 * doc/tmpl/animation.sgml: Documentation changes.
3983 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
3985 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
3986 counting to animations. A web browser may want to share a single
3987 copy of an animated GIF if it appears multiple times in a web
3990 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
3991 animation functions here.
3992 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
3993 animation if the loader does not support multiframe loading and
3994 the single-frame load returned NULL. Check that the filename is
3995 not NULL. Updated inline documentation.
3996 (gdk_pixbuf_animation_ref): New function.
3997 (gdk_pixbuf_animation_unref): New function.
3998 Removed gdk_pixbuf_animation_destroy() in favor of reference
4001 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
4002 Prettified. Made ref_count assertion more paranoid. Check that
4003 the filename is not NULL.
4004 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
4006 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
4009 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
4010 with a reference count of 1.
4012 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
4013 gdk-pixbuf-animation.c.
4015 * doc/tmpl/animation.sgml: Populated. It is still missing a
4016 description of the overlay modes.
4018 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
4019 the canvas item section to the end, as it will be moved later to
4022 * doc/gdk-pixbuf.sgml: Added the animation section.
4024 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
4026 1999-12-26 Peter Teichman <pat@gnu.org>
4028 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
4029 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
4030 This closes bug #4676.
4032 1999-12-23 Havoc Pennington <hp@pobox.com>
4034 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
4035 set to NULL here (specifically context->animation) was not being
4036 set to NULL. use g_new0() to alloc the struct.
4038 1999-12-20 Jonathan Blandford <jrb@redhat.com>
4040 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
4041 correctly. Progressive loading needs some work, but that all
4042 needs doing from the gdk-pixbuf-loader end, not here.
4044 1999-12-17 Jonathan Blandford <jrb@redhat.com>
4046 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
4047 moved the file here. It seems natural to put this function here,
4048 as that's where the gdk_pixbuf_new_from_file function is, but it's
4049 still a little convoluted. The source files might be played with
4052 1999-12-14 Jonathan Blandford <jrb@redhat.com>
4054 * gdk-pixbuf/gdk-pixbuf-loader.c
4055 (gdk_pixbuf_loader_get_animation): Gets the animation from the
4058 1999-12-16 Federico Mena Quintero <federico@redhat.com>
4060 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
4061 before using the GdkPixbuf rendering functions. Thanks to Joe
4062 Shaw <joe@off.net> for pointing this out.
4064 1999-12-13 Federico Mena Quintero <federico@redhat.com>
4066 * gdk-pixbuf/gnome-canvas-pixbuf.c
4067 (gnome_canvas_pixbuf_class_init): Renamed arguments to
4068 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
4069 consistency with the new canvas.
4070 (PixbufPrivate): Do the same renaming in the structure fields, for
4073 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
4075 1999-12-12 Federico Mena Quintero <federico@redhat.com>
4077 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
4078 conditional to see whether to link $(GNOME_LIBS) or not.
4080 1999-12-10 Jonathan Blandford <jrb@redhat.com>
4082 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
4084 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
4085 make a warning go away.
4087 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
4089 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
4092 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
4094 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
4097 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
4098 Filled in body of function.
4099 (rgbconvert): Added GdkColormap parameter, and to all conversion
4101 (convert_real_slow): New function - should convert ANY visual/data
4102 format properly, but it aint fast. Used as a fallback when an
4103 optimised routine wont match.
4104 (rgbconvert): Do very specific tests on the data format to verify
4105 properly if the optimised version will do, otherwise use the
4106 fallback function for all other data formats.
4108 * gdk-pixbuf/Makefile.am: Re-enabled building of
4109 textpixbuf-drawable.
4111 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
4112 gdk_pixbuf_get_from_drawable().
4114 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
4116 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
4117 bug on two occasions.
4118 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
4119 function to the generic glib one.
4121 1999-12-08 Federico Mena Quintero <federico@redhat.com>
4123 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
4124 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
4125 checks and API definition. The body needs filling in and it needs
4126 to do the Right Thing(tm) for pixmaps plus the given colormap and
4127 windows and their own colormaps.
4129 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
4130 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
4132 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
4134 * doc/tmpl/from-drawables.sgml: Populated.
4136 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
4138 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
4140 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
4143 1999-12-07 Federico Mena Quintero <federico@redhat.com>
4145 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
4146 reference counting for GdkPixbuf structures.
4148 1999-12-07 Martin Baulig <martin@home-of-linux.org>
4150 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
4151 include $(GNOME_LIBS) here.
4153 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
4155 Added missing "include <string.h>" to:
4156 * gdk-pixbuf/io-ras.c
4157 * gdk-pixbuf/io-bmp.c
4158 * gdk-pixbuf/io-ico.c
4160 1999-12-06 Federico Mena Quintero <federico@redhat.com>
4162 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
4165 1999-12-05 Federico Mena Quintero <federico@redhat.com>
4167 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
4168 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
4169 want, send me a patch to do the conditional stuff properly.
4170 Otherwise, please read the GNOME Programming Guidelines,
4171 especially the "CVS policies" section.
4173 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
4175 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
4177 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
4179 * gdk-pixbuf/io-ico.c: Bug in palet-size
4182 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
4184 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
4185 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
4187 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
4189 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
4192 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
4193 (Windows Cursor files). These are identical to .ICO files,
4194 except for the signature and 2 extra fields for the hotspot.
4196 1999-12-03 Federico Mena Quintero <federico@redhat.com>
4198 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
4199 Removed unused variable `item'.
4201 1999-12-03 Jonathan Blandford <jrb@redhat.com>
4203 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
4204 explain this function better.
4206 1999-12-02 Federico Mena Quintero <federico@redhat.com>
4208 Source files moved from src/ to gdk-pixbuf/, to be consistent with
4211 * doc/Makefile.am: Modified for the new source directory.
4213 * configure.in: Likewise.
4215 * Makefile.am: Likewise.
4217 * autogen.sh: Likewise.
4219 * gdk-pixbuf/Makefile.am: Likewise.
4221 1999-12-02 Federico Mena Quintero <federico@redhat.com>
4223 * src/testpixbuf.c: #include <config.h>, and fix includes.
4225 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
4227 * src/io-xpm.c: Fix includes.
4229 * src/io-tiff.c: Fix includes.
4231 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
4233 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
4235 * src/io-png.c: Fix includes.
4237 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
4239 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
4241 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
4243 * src/gnome-canvas-pixbuf.c: Fix includes.
4245 * src/gdk-pixbuf.c: Fix includes.
4247 * src/gdk-pixbuf-util.c: Fix includes.
4249 * src/gdk-pixbuf-render.c: Fix includes.
4251 * src/gdk-pixbuf-io.h: Fix includes.
4253 * src/gdk-pixbuf-drawable.c: Fix includes.
4255 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
4258 * src/gdk-pixbuf-data.c: Fix includes.
4260 * src/gdk-pixbuf-loader.c: #include <config.h>
4262 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
4265 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
4266 since it is not finished.
4268 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
4270 * src/gdk-pixbuf-util.c: New file with utility and convenience
4271 functions for pixbufs.
4273 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
4275 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
4277 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
4279 * doc/gdk-pixbuf.sgml: Added the utilities section.
4281 * doc/tmpl/util.sgml: Documentation for the utility functions.
4283 1999-11-29 Owen Taylor <otaylor@redhat.com>
4285 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4286 Keep the mask around until after we draw ... since
4287 the GC changes aren't flushed to the X server until we
4288 draw, destroying it before that may result in BadPixmap
4291 1999-11-30 Havoc Pennington <hp@pobox.com>
4293 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
4295 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
4297 1999-11-29 Federico Mena Quintero <federico@redhat.com>
4299 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
4300 should be made conditional, not blindly commented out.
4302 1999-11-29 Jonathan Blandford <jrb@redhat.com>
4304 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
4305 handle .ico files. Cool.
4307 1999-11-24 Jonathan Blandford <jrb@redhat.com>
4309 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
4312 1999-11-24 James Henstridge <james@daa.com.au>
4314 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
4315 top builddir rather than src. This still builds fine, and does not
4316 get gtk-doc into an infinite loop when trying to find all the source
4319 1999-11-23 Jonathan Blandford <jrb@redhat.com>
4321 * Removed #PRAGMA } from headers. Also, make compile if you don't
4322 have it installed, already.
4324 1999-11-22 Federico Mena Quintero <federico@redhat.com>
4326 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
4327 temporary buffer to the size of the interesction of the bounding
4328 box and the expose area, not the whole expose area. This speeds
4331 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
4332 not paint black on the mask, since we already cleared it in a
4333 single gdk_draw_rectangle() operation.
4335 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
4337 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
4339 1999-11-22 Havoc Pennington <hp@pobox.com>
4341 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
4342 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
4343 dependencies to LIBADD variables for loadable modules. Necessary
4344 for a Java dynamic loading thing to be able to figure it out.
4346 1999-11-22 Havoc Pennington <hp@pobox.com>
4348 * src/io-png.c (image_load_increment): Call the update_area
4349 callback depending on the number of rows loaded in this increment.
4351 * src/testpixbuf.c (main): slow down the progressive load demo
4353 1999-11-16 Havoc Pennington <hp@pobox.com>
4355 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
4357 1999-11-22 Jonathan Blandford <jrb@redhat.com>
4359 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
4360 for srcdir != buildir != . Beats me why; I can't figure it out.
4361 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
4363 1999-11-21 Jonathan Blandford <jrb@redhat.com>
4365 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
4366 <arjan@fenrus.demon.nl>
4368 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
4370 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
4371 Rework/reorder of the code. Each case has been separated into
4372 another function; its big but it should be quick.
4373 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
4374 opaque alpha information. Not all depths/formats have been
4375 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
4377 1999-11-17 Larry Ewing <lewing@gimp.org>
4379 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
4380 implement the bounds method correctly.
4381 (compute_viewport_affine): compute the affine need to fit the
4382 image within the viewport given by the args.
4383 (compute_render_affine): call compute_viewport_affine.
4385 1999-11-16 Havoc Pennington <hp@pobox.com>
4387 * src/gdk-pixbuf-drawable.h: Use includes from the current
4388 directory, not the system directory.
4390 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
4392 * src/testpixbuf-drawable.c: use includes from the current directory
4393 rather then from the system include directory as gdk-pixbuf
4394 includes are not yet installed when this is compiled.
4396 1999-11-13 Cody Russell <bratsche@dfw.net>
4397 * src/testpixbuf-drawable.c: Added a test program for drawable
4400 * src/Makefile.am: Build testpixbuf-drawable.
4402 1999-11-12 Cody Russell <bratsche@dfw.net>
4404 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
4406 1999-11-10 Federico Mena Quintero <federico@redhat.com>
4408 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
4410 * doc/gdk-pixbuf.signals: Put in the real names of signal
4413 * src/gdk-pixbuf-loader.c: Improved documentation comments.
4415 1999-11-10 Jonathan Blandford <jrb@redhat.com>
4417 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
4420 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
4421 correctly. Patch from Arjan to do so.
4423 1999-11-10 Michael Fulbright <drmike@redhat.com>
4425 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
4428 * src/testpixbuf.c: Added final queued draw when done loading image.
4430 1999-11-10 Jonathan Blandford <jrb@redhat.com>
4432 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
4435 1999-11-10 Federico Mena Quintero <federico@redhat.com>
4437 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
4440 1999-11-09 Federico Mena Quintero <federico@redhat.com>
4442 * src/io-png.c: Fixed some incompatible pointer initializations.
4444 * src/io-jpeg.c (image_load_increment): Remove unused variable.
4446 1999-11-09 Michael Fulbright <drmike@redhat.com>
4448 * src/testpixbuf.c: Fixed it to use timeout to read from file
4449 for progressive loading. Set TBF_KBPS=n, where n is the number of
4450 kilobytes/second to simulate in downloading. n has to be an integer.
4452 * src/io-jpeg.c: Slight cosmetic cleanup.
4454 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
4455 PBM loading has a similar problem and will address tomorrow.
4457 1999-11-09 Havoc Pennington <hp@pobox.com>
4459 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
4460 gdk-pixbuf-drawable stuff.
4462 1999-11-09 Federico Mena Quintero <federico@redhat.com>
4464 * configure.in: Bumped version number to 0.4.
4466 1999-11-09 Michael Fulbright <drmike@redhat.com>
4468 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
4469 all types of PNM files now.
4471 * src/io-jpeg.c (image_load_increment): Figured out problem with
4472 loading Progressive JPEG's progressively (say that 10 times fast).
4473 Currently for Progressive JPEG's the entire image is loaded before
4474 it is displayed. libjpeg supports a fancier mechanism which I may
4477 With these changes all JPEG formats appear to load properly for me.
4479 1999-11-08 Jonathan Blandford <jrb@redhat.com>
4481 * src/io-ras.c (image_load_increment): Final patch from Arjan.
4482 Seems to do progressive loading.
4484 1999-11-08 Michael Fulbright <drmike@redhat.com>
4486 * src/io-pnm.c image_load (): Fixed so we do not create a separate
4487 pixel buffer when reading in image - we reuse the pixel data in
4488 the GdkPixbuf structure instead.
4490 1999-11-08 Michael Fulbright <drmike@redhat.com>
4492 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
4493 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
4494 I can't seem to find a utility to convert into this format.
4495 Next is to add progressive loading support for the PNM format.
4497 1999-11-07 Federico Mena Quintero <federico@redhat.com>
4499 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
4500 of the width, height, x, and y setting and pixels arguments.
4502 1999-11-05 Jonathan Blandford <jrb@redhat.com>
4504 * src/io-ras.c (image_load): third patch. Now it seems to load.
4506 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
4507 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
4509 * src/io-ras.c (image_load): new file from Arjan van de Ven
4510 <arjan@fenrus.demon.nl> to begin the ras loader.
4512 1999-11-05 Federico Mena Quintero <federico@redhat.com>
4514 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
4515 for internal use only.
4517 * doc/gdk-pixbuf.sgml: Likewise.
4519 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
4521 1999-11-05 Michael Fulbright <drmike@redhat.com>
4523 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
4524 files from a file. Next step is support for ASCII files, and
4525 then incremental loading.
4527 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4529 * Makefile.am: Added doc to SUBDIRS.
4531 1999-11-04 Michael Fulbright <drmike@redhat.com>
4533 * src/io-jpeg.c: Prettied up code slightly.
4534 * src/io-pnm.c: Start of pnm loader (from file and progressively).
4535 Doesn't do much yet (will finish tomorrow).
4536 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
4538 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4540 * doc/tmpl/rendering.sgml: Populated.
4542 * doc/Makefile.am: Added the template files.
4544 1999-11-04 Havoc Pennington <hp@pobox.com>
4546 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
4547 docs, explain what a dither offset is for.
4548 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
4549 this function vs. gdk_pixbuf_render_to_drawable().
4551 1999-11-04 Havoc Pennington <hp@pobox.com>
4553 * configure.in: Use libart-config correctly; find gnome-config
4554 separately. Fix GNOME_LIBS to be correct in "no gnome installed
4557 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
4560 Patch untested in the inside-gnome-libs case, I need to commit
4561 then check out to the gnome-libs I'm using.
4563 1999-11-04 Michael Fulbright <drmike@redhat.com>
4565 * src/io-jpeg.c (image_begin_load): Add update_func callback.
4566 * src/io-jpeg.c (image_load_increment): Call updated callback when
4567 new graphic data decoded.
4569 1999-11-04 Jonathan Blandford <jrb@redhat.com>
4571 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
4573 * src/io-png.c (image_begin_load): add a update_func callback.
4574 * src/io-gif.c (image_begin_load): add a update_func callback.
4575 (gif_get_lzw): added the update_func ability
4577 * src/io-tiff.c (image_begin_load): add a update_func callback.
4579 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4581 * doc/tmpl/gdk-pixbuf.sgml: Populated.
4583 * doc/tmpl/refcounting.sgml: Populated.
4585 * doc/tmpl/file-loading.sgml: Populated.
4587 * src/gdk-pixbuf.c: Added documentation comments.
4589 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
4590 documentation comments.
4592 * doc/: Finished integrating the documentation framework.
4594 1999-11-03 Federico Mena Quintero <federico@redhat.com>
4596 * configure.in: Removed libgif stuff now that we do not depend on it.
4597 Added the necessary cruft for gtk-doc.
4599 * src/Makefile.am: Unconditionally build the GIF loader.
4601 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4603 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
4604 Added a lot of comments to the file.
4606 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
4609 1999-11-03 Michael Fulbright <drmike@redhat.com>
4611 * src/io-jpeg.c (image_load_increment): Further removal of
4612 bugginess in local buffering code. Handles grayscale jpegs
4615 * src/io-jpeg.c (image_load_stop): Was freeing local context
4616 for jpeg library before calling jpeg_decompres_finish ().
4618 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4620 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
4622 (gif_get_lzw): set the transparency to the right val.
4624 1999-11-03 Federico Mena Quintero <federico@redhat.com>
4626 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
4627 Initiailize the x and y fields.
4628 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
4629 (PixbufPrivate): Renamed need_size_update to need_xform_update.
4630 (recompute_bounding_box): Do not use temporary values.
4632 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4634 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
4637 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
4638 unneeded x,y,h,w vars.
4640 1999-11-03 Larry Ewing <lewing@gimp.org>
4642 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
4643 render_affine calculation for x,y offsets.
4644 (gnome_canvas_pixbuf_set_arg): add x,y args.
4645 (gnome_canvas_pixbuf_get_arg): add x,y args.
4646 (recompute_bounding_box): simply code using ArtDrect and the
4647 render_affine. Removed compute_xform_vectors as it was no longer
4650 1999-11-03 Federico Mena Quintero <federico@redhat.com>
4652 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
4653 doofus. Return a distance, not a boolean, for opaque images.
4655 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
4656 rounding of bounding box coordinates.
4657 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
4658 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
4660 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4662 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
4664 1999-11-03 Michael Fulbright <drmike@redhat.com>
4666 * src/io-jpg.c (image_load_increment): Fixed code which moved
4667 buffer around as new data comes in to work properly. JPEG progressive
4668 loading should be working now except for grayscale JPEG's, which I
4669 will look into next.
4671 1999-11-03 <sopwith@redhat.com>
4672 * src/testpixbuf.c: A GtkFunction needs to return a value for
4673 deterministic behaviour. Also put dot printing back in.
4675 1999-11-03 <jrb@redhat.com>
4677 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
4680 1999-11-02 Cody Russell <bratsche@dfw.net>
4681 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
4682 if part of the requested image is offscreen, rather than clipping
4685 1999-11-02 Jonathan Blandford <jrb@redhat.com>
4687 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
4688 for interlacing and progressive loading.
4690 1999-11-02 Cody Russell <bratsche@dfw.net>
4691 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
4692 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
4694 1999-11-02 Jonathan Blandford <jrb@redhat.com>
4696 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
4697 It's a little slow though. )-:
4699 1999-11-02 Elliot Lee <sopwith@redhat.com>
4700 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the
4701 arguments to the write/load_increment operations const-correct.
4703 1999-11-02 Federico Mena Quintero <federico@redhat.com>
4705 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
4706 Implemented the ::point() method. We do a simple containment test
4707 instead of a full distance calculation since the canvas is going
4708 to change to that scheme, anyways.
4710 1999-11-02 Elliot Lee <sopwith@redhat.com>
4712 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size
4713 of the chunks that are read from the input file.
4715 1999-11-02 Larry Ewing <lewing@gimp.org>
4717 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
4719 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
4722 1999-11-02 Federico Mena Quintero <federico@redhat.com>
4724 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
4725 affine computation code from ::draw() to here, since it is needed
4726 by ::point() as well.
4728 1999-11-02 Elliot Lee <sopwith@redhat.com>
4730 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
4731 three functions, and eliminate duplication of code from write()
4732 and close(). Also fix bug where the 128-byte header was being
4735 1999-11-01 Federico Mena Quintero <federico@redhat.com>
4736 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
4737 bounding box computation.
4739 1999-11-01 Federico Mena Quintero <federico@redhat.com>
4741 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
4742 Drawing affines seem to work. Bounding box is fubared. ::point()
4743 is not implemented. This is a work in progress.
4745 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
4748 * configure.in: Sigh. We need to link in libgnomeui for the
4749 canvas stuff. This mess will disappear when gdk-pixbuf gets
4750 folded into gnome-libs.
4752 1999-10-30 Jonathan Blandford <jrb@redhat.com>
4754 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
4755 the right size, at a minimum, even if the image is squished and
4757 (ReadImage): lets get the offset right. This will let transparent
4760 1999-10-29 Michael Fulbright <drmike@redhat.com>
4762 * src/io-jpeg.c: image_load_increment(): Fixed bug when
4763 image width was not a multiple of 4 - always use the
4764 gdk_pixbuf rowstride to increment pointers!
4766 1999-10-29 Michael Fulbright <drmike@redhat.com>
4768 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
4769 Currently does not handle either progressive jpeg files (jpeg
4770 files with multiple scans at different quality settings), but
4771 I plan on adding this support soon. These are fairly rare in
4772 my experience, so it shouldn't slow people down too much.
4773 Grayscale jpegs also don't work but that should be easy to fix.
4775 1999-10-29 Michael Fulbright <drmike@redhat.com>
4777 * src/testpixbuf.c: Added title to windows so you can identify
4778 progressive and file windows.
4780 1999-10-29 Michael Fulbright <drmike@redhat.com>
4782 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
4783 load the image handler when we determine the image type.
4785 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
4786 previously static function load_image_handler () to
4787 a public function gdk_pixbuf_load_module (). It is needed in
4788 gdk-pixbuf-loader.c to load image handler modules. This function
4789 is different from gdk_pixbuf_get_module (), which only returns
4790 a reference to the required handler, because it actually loads
4791 the handler into memory. Both actions should possibly be combined
4792 in a convenience function since one w/o the other doesn't seem to
4795 1999-10-28 Jonathan Blandford <jrb@redhat.com>
4797 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
4800 1999-10-28 Federico Mena Quintero <federico@redhat.com>
4802 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
4803 function to render a portion of a pixbuf to a drawable. Ignores
4804 alpha information and takes in a GC.
4805 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
4806 portion of a pixbuf to a drawable. It automatically creates a GC
4807 and a clipping mask for alpha pixbufs.
4809 1999-10-28 Jonathan Blandford <jrb@redhat.com>
4811 * src/gdk-pixbuf.h: turned convenience macros into convenience
4812 functions so some error checking could be added.
4814 * src/io-tiff.c (image_load_increment): started work on the tiff
4815 non-incremental loader.
4816 (image_begin_load): Finished the incremental loader.
4818 * src/io-gif.c (image_load_increment): started work on the gif
4821 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
4823 1999-10-27 Federico Mena Quintero <federico@redhat.com>
4825 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
4826 function to threshold a pixbuf's alpha channel into a bitmap.
4828 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
4829 contemplate future extensions to ArtPixBuf's formats.
4831 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
4833 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
4834 macros to fetch the ArtPixBuf's fields.
4836 1999-10-27 Havoc Pennington <hp@pobox.com>
4838 * src/testpixbuf.c (main): Display the progressive load
4840 * src/io-png.c (setup_png_transformations): Break transformation
4841 code into separate function
4842 (png_info_callback): Use setup_png_transformations
4844 1999-10-27 Havoc Pennington <hp@pobox.com>
4846 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
4847 properly whether the XPM module has already been loaded
4848 (gdk_pixbuf_new_from_file): Check properly if loader module
4849 was already loaded (was checking if load symbol was present
4850 in order to decide whether to re-load; should check module !=
4851 NULL, then load != NULL)
4852 (image_handler_load): Check in present working directory,
4853 makes it easier to debug for now
4854 (file_formats): This array initializer was seriously on crack,
4855 was assigning a function pointer to a GModule*
4857 * src/testpixbuf.c (main): Change type of pixbuf_loader to
4860 1999-10-27 Havoc Pennington <hp@pobox.com>
4862 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
4863 Fix typo that prevented compilation
4864 (gdk_pixbuf_loader_destroy): ditto
4866 1999-10-27 Federico Mena Quintero <federico@redhat.com>
4868 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
4869 GdkPixbufLoader, not a GtkObject.
4870 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
4871 (gdk_pixbuf_loader_get_type): Documented.
4872 (gdk_pixbuf_loader_class_init): Initialize the parent class
4874 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
4875 class destroy function.
4876 (gdk_pixbuf_loader_new): Documented.
4877 (gdk_pixbuf_loader_finalize): Call the parent class finalize
4879 (gdk_pixbuf_loader_write): Use size_t for count.
4881 1999-10-27 Michael Fulbright <drmike@redhat.com>
4883 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
4884 logic so we only try to close loader if it wasn't previously closed.
4886 1999-10-27 Michael Fulbright <drmike@redhat.com>
4888 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
4889 pixbuf_loader properly initialized.
4891 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
4894 1999-10-26 Jonathan Blandford <jrb@redhat.com>
4896 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
4898 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
4900 1999-10-26 Havoc Pennington <hp@pobox.com>
4902 * src/gdk-pixbuf-loader.h: fix signals
4904 * src/gdk-pixbuf-io.h: add new vtable fields
4907 1999-10-26 Jonathan Blandford <jrb@redhat.com>
4909 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
4912 1999-10-25 Federico Mena Quintero <federico@redhat.com>
4914 * configure.in (CFLAGS): Patch from Uwe Koloska
4915 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
4917 1999-10-22 Havoc Pennington <hp@pobox.com>
4919 * src/io-xpm.c (mem_buffer): Clean up stupid
4920 increment-inside-array-dereference thing
4922 * src/testpixbuf.c: Add XPM data tests.
4924 * src/io-xpm.c: Make the XPM data buffer const, fix const
4925 correctness throughout the code.
4927 1999-10-22 Havoc Pennington <hp@pobox.com>
4929 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
4931 1999-10-22 Havoc Pennington <hp@pobox.com>
4933 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
4934 loading an XPM from memory.
4936 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
4937 function, loads pixbuf from xpm data
4938 (image_handler_load): Add g_return_if_fail() to ensure the same
4939 module isn't loaded twice. Add g_module_symbol() to scan for XPM
4942 1999-10-22 Federico Mena Quintero <federico@redhat.com>
4944 * src/io-png.c (image_load): Patch from Kristian Hogsberg
4945 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
4946 buffers; the rows can be read in directly into the main pixel
4949 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4951 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
4953 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4955 * configure.in: Bumped version number to 0.3.
4957 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
4958 version number for the library.
4960 1999-10-20 Federico Mena Quintero <federico@redhat.com>
4962 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
4963 all memory management of the buffer is done by libart.
4965 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
4966 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
4968 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
4969 terms of the libart functions. Removed the old code.
4971 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
4972 symbols. Saving will not be implemented in GdkPixbuf.
4974 * src/io-gif.c: Removed the saving stub.
4975 (image_load): Fixed memory management to fail gracefully if we run
4976 out of memory while loading the image. Close the gif file when we
4977 are done. This still needs more error handling for the DGif
4980 * src/io-jpeg.c (image_load): Some robustness fixes.
4982 * src/io-png.c: Removed the saving stuff.
4983 (image_load): Some memory management fixes.
4985 * src/io-tiff.c (image_load): Ditto.
4987 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
4989 1999-10-18 Havoc Pennington <hp@pobox.com>
4991 * subautogen.sh: New name for macros/autogen.sh
4993 * autogen.sh: use subautogen.sh
4995 1999-10-18 Federico Mena Quintero <federico@redhat.com>
4997 * src/*: Reindented to use the GNOME Indentation. Renamed
4998 GdkPixBuf to GdkPixbuf, for consistency with the function names
4999 (and it is also easier to type) :-)
5001 1999-10-18 Havoc Pennington <hp@pobox.com>
5003 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
5005 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
5007 1999-10-18 Havoc Pennington <hp@pobox.com>
5009 * Makefile.am (SUBDIRS): Remove "macros"
5011 * configure.in: Don't use GNOME_INIT, handle case where we are
5012 inside gnome-libs. AM_PATH_GTK for the GIF test
5014 * src/Makefile.am: Change flags to work without libgnomeui,
5015 comment out testpixbuf for now
5017 1999-10-18 Federico Mena Quintero <federico@redhat.com>
5019 * configure.in: Use $GTK_LIBS as the extra libs when checking for
5020 libgif/libungif, as they need the X libraries. Fixes bug #2472.
5022 1999-10-10 Cody Russell <bratsche@dfw.net>
5023 * src/gdk-pixbuf-drawable.c: core function now determines whether
5024 the requested geometry is on screen or not, and if some is not
5025 then the request is clamped to geometry that is on the screen.
5027 Changed 'pixbuf' to 'art_pixbuf' in core function.
5029 1999-10-08 Michael Fulbright <drmike@redhat.com>
5031 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
5033 * src/testpifbuf: Changed test program to display cdrom from rgb data
5034 if no filename given to test program.
5036 1999-10-07 Cody Russell <bratsche@dfw.net>
5037 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
5038 them, but I wrote them).
5040 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
5043 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
5044 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
5046 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
5049 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
5050 GdkPixBuf* instead of ArtPixBuf*.
5052 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
5054 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
5055 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
5057 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
5058 GdkPixBufUnrefFunc + gdk_pixbuf_new.
5060 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
5062 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
5064 * src/io-tiff.c (image_load): ditto + fix leak
5066 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
5067 crashes this module ( add warning :-)
5069 * src/io-bmp.c (image_load): ditto.
5071 * src/io-gif.c (image_load): ditto.
5073 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
5075 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
5076 it doesn't crash scaling with alpha.
5078 1999-09-17 Federico Mena Quintero <federico@redhat.com>
5080 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
5082 * src/io-gif.c (image_load): Likewise.
5084 * src/io-jpeg.c (image_load): Likewise.
5086 * src/io-png.c (image_load): Likewise.
5088 * src/io-tiff.c (image_load): Likewise.
5090 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
5092 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
5093 for the ref_count to be != 0.
5095 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
5097 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
5099 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
5101 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
5102 to unallocated memory (row_ptr), and fixed its type as well. Take
5103 into account the ArtPixbuf's rowstride when assigning the row
5106 * src/gdk-pixbuf.c: Fixup includes.
5108 * src/gdk-pixbuf-io.c: Likewise.
5110 Sat Jul 31 19:19:47 CEST 1999
5112 * src/gdk-pixbuf-io.c:
5113 * src/io-png.c: Fixed two obvious C syntax bugs
5115 1999-07-29 Mark Crichton <crichton@gimp.org>
5117 * src/io-png.c (image_save): Added PNG saving function
5119 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
5120 image_save(GdkPixBuf *p, FILE *f, ...)
5123 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
5125 * src/Makefile.am (*_LIB): Only build the relevant loaders which
5126 require extra libraries if we actually have those libraries.
5128 1999-07-23 Richard Hestilow <hestgray@ionet.net>
5130 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
5131 * gdk_pixbufConf.sh.in: Added for gnome-config
5133 * configure.in: Modified to generate gdk_pixbufConf.sh
5135 1999-07-20 Mark Crichton <crichton@gimp.org>
5137 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
5138 calculation needs to be done.
5140 1999-07-18 Larry Ewing <lewing@gimp.org>
5145 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
5146 error cases but one or two in the common case. There are probably
5147 a few small ones left.
5149 1999-07-18 Mark Crichton <crichton@gimp.org>
5151 * configure.in: removed version.h.
5153 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
5156 1999-07-17 Mark Crichton <crichton@gimp.org>
5158 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
5159 (gdk_pixbuf_rotate): Added pixbuf rotation code.
5160 (gdk_pixbuf_scale): Changed // comments to /* */
5162 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
5165 1999-07-16 Larry Ewing <lewing@gimp.org>
5167 * src/testpixbuf.c (expose_func): reverted the expose everything
5168 changes, I'm not sure why these went in.
5169 (config_func): bring this up to date with the new pixbuf_scale
5172 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
5173 loading code so that poeple can diagnose problems better.
5175 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
5176 no longer allocates a new pixbuf, which make things nicer for the
5177 rest of the code. Unfortunately there is still a problem with
5178 scaling rgba images.
5180 1999-07-16 Mark Crichton <crichton@gimp.org>
5182 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
5183 calls gdk_pixbuf_scale. However, something is not working.
5184 N.B.: current pixmap is now stored in user_data with a key of
5187 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
5188 Something is still borked, however.
5190 1999-07-15 Larry Ewing <lewing@gimp.org>
5192 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
5195 * src/testpixbuf.c (main): fix up the file routines a little so
5196 that you can load multiple files given the file names
5198 1999-07-14 Larry Ewing <lewing@gimp.org>
5200 * src/testpixbuf.c (expose_func): added an almost proper expose
5201 handler for testpixbuf
5203 1999-07-13 Mark Crichton <crichton@gimp.org>
5205 * configure.in: Fixed GIF check. Replaced " with '
5206 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
5208 1999-07-13 Mark Crichton <crichton@gimp.org>
5210 * configure.in: I am a bonehead. Added gif-lib check.