1 2007-11-20 Bastien Nocera <hadess@hadess.net>
4 * io-icns.c: Add icns (MacOS X icons) loader, based on work by
5 Lyonel Vincent <lyonel@ezix.org> (Closes: #395738)
7 2007-11-10 Matthias Clasen <mclasen@redhat.com>
9 * io-jpeg.c: Avoid unaligned accesses that cause
10 problems on some architectures. (patch by David Miller)
12 2007-10-16 Matthias Clasen <mclasen@redhat.com>
14 * === Released 2.12.1 ===
16 2007-10-16 Matthias Clasen <mclasen@redhat.com>
18 * io-wbmp.c: Use better magic. (#339877, Bastien Nocera)
20 2007-09-13 Matthias Clasen <mclasen@redhat.com>
22 * === Released 2.12.0 ===
24 2007-09-13 Matthias Clasen <mclasen@redhat.com>
26 * gdk-pixbuf-scaled-anim.c (get_scaled_pixbuf): Don't leak
29 2007-09-08 Matthias Clasen <mclasen@redhat.com>
31 * io-ani.c: Fix some possible crashes. (#468832, Michal Luczaj)
33 2007-09-07 Matthias Clasen <mclasen@redhat.com>
35 * io-tga.c (gdk_pixbuf__tga_stop_load): Handle pbuf
36 being NULL. (#468801, Sebastien Bacher)
38 2007-07-21 Matthias Clasen <mclasen@redhat.com>
40 * === Released 2.11.6 ===
42 Sat Jul 7 17:34:33 2007 Tim Janik <timj@gtk.org>
44 * gdk-pixbuf-scale.c: docu fixes from Guillaume Cottenceau, #454596.
46 2007-07-06 Michael J. Chudobiak <mjc@cvs.gnome.org>
48 * io-tiff.c: (tiff_image_parse): Added a comment to explain
49 the signal used to stop parsing early.
51 2007-07-05 Matthias Clasen <mclasen@redhat.com>
53 * io-tiff.c: Revert the last change, it was wrong
54 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Redo the last
55 change in a different way.
57 2007-07-04 Tor Lillqvist <tml@novell.com>
59 * pixops/Makefile.am (timescale_LDADD): Use GDK_PIXBUF_DEP_LIBS
60 instead of GDK_PIXBUF_EXTRA_LIBS here, too.
62 2007-07-03 Matthias Clasen <mclasen@redhat.com>
64 * io-tiff.c (tiff_image_parse): Always set an error
65 when returning NULL. (453365, Michael Chudobiak)
67 2007-07-03 Matthias Clasen <mclasen@redhat.com>
69 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Be
70 more careful when calling g_propagate_error(). (#453365,
73 2007-07-02 Matthias Clasen <mclasen@redhat.com>
75 * === Released 2.11.5 ===
77 2007-07-02 Matthias Clasen <mclasen@redhat.com>
79 * gdk-pixbuf.c (gdk_pixbuf_get_option): Document the
84 * gdk-pixbuf-util.c (gdk_pixbuf_apply_embedded_orientation):
85 New function to handle Exif orientation information in
86 tiff and jpeg images. (#439567, Michael Chudobiak)
88 2007-06-19 Matthias Clasen <mclasen@redhat.com>
90 * === Released 2.11.4 ===
92 2007-06-15 Matthias Clasen <mclasen@redhat.com>
94 * === Released 2.11.3 ===
96 2007-06-15 Hans Breuer <hans@breuer.org>
98 * makefile.msc : updated
99 * io-jpeg.c : use g_snprintf
101 2007-06-12 Behdad Esfahbod <behdad@gnome.org>
103 * io-pnm.c (explode_bitmap_into_buf): Fix out-of-bound access.
104 (#440918, Matthias Kilian)
106 2007-06-06 Matthias Clasen <mclasen@redhat.com>
108 * === Released 2.11.2 ===
110 2007-06-04 Matthias Clasen <mclasen@redhat.com>
112 * === Released 2.11.1 ===
114 2007-05-30 Chris Wilson <chris@chris-wilson.co.uk>
116 * io-jpeg.c (gdk_pixbuf__jpeg_image_stop_load):
117 Supply the current GError for fatal_error_handler(). (#441443)
119 2007-05-24 Matthias Clasen <mclasen@redhat.com>
121 * === Released 2.11.0 ===
123 2007-05-23 Matthias Clasen <mclasen@redhat.com>
125 * gdk-pixbuf.symbols: Add missing scaled-anim entries.
127 2007-05-18 Michael J. Chudobiak <mjc@cvs.gnome.org>
129 * gdk-pixbuf-scaled-anim.c: (get_scaled_pixbuf):
130 Preserve pixbuf options when generating a new scaled pixbuf.
132 * io-jpeg.c: (get_orientation), (gdk_pixbuf__jpeg_image_load),
133 (gdk_pixbuf__jpeg_image_load_increment): Read the exif
134 orientation tag and associate it with the "orientation" pixbuf
135 option. Renders libexif unnecessary in some applications.
137 * io-tiff.c: (tiff_image_parse): Read the tiff orientation tag,
138 compensate for the partial rotations performed by libtiff,
139 and generate an "orientation" option for the pixbuf.
141 2007-04-29 Matthias Clasen <mclasen@redhat.com>
143 * io-jpeg.c: Remove a pointless check from the previous
144 commit that added a new string.
146 2007-04-28 Matthias Clasen <mclasen@redhat.com>
149 * io-jpeg.c: Accept unknown parameters with a warning
150 when saving. (#405539, Daniel Atallah)
152 2007-04-25 Matthias Clasen <mclasen@redhat.com>
154 * gdk-pixbuf-simple-anim.c (gdk_pixbuf_simple_anim_add_frame):
155 Don't double the delay time of the first frame. (#431997,
158 2007-04-25 Matthias Clasen <mclasen@redhat.com>
160 * gdk-pixbuf-scaled-anim.c (gdk_pixbuf_scaled_anim_iter_finalize):
161 Chain up. (#433125, Christian Persch)
163 Wed Mar 28 15:27:35 2007 Tim Janik <timj@imendio.com>
165 * io-jpeg.c: applied JPEG loader fix from maemo. this fix makes sure
166 stop_load() doesn't forget about its return value, and it pulls the
167 check for infinite looping out of an else branch in load_increment()
168 so it runs unconditionally, fixes #397643.
170 2007-03-08 Matthias Clasen <mclasen@redhat.com>
172 * gdk-pixbuf-scaled-anim.[hc]: Implement an animation
173 wrapper for scaling animations.
175 * gdk-pixbuf-loader.c: Use GdkPixbufScaledAnim to scale
176 animations. (#335752, Mike Morrison)
180 2007-03-06 Tor Lillqvist <tml@novell.com>
182 * Makefile.am: Further fixes for building on Win32 outside
183 srcdir. (#413492, Mathias Hasselmann)
185 2007-03-05 Matthias Clasen <mclasen@redhat.com>
187 * io-tga.c: (gdk_pixbuf__tga_stop_load): Flip rle-encoded
188 images even if they haven't been completely loaded. (#347106)
190 2007-02-27 Felix Riemann <friemann@svn.gnome.org>
192 * io-ico.c: (fill_info): Add image/x-ico to supported mime types.
195 2007-02-16 Matthias Clasen <mclasen@redhat.com>
197 * io-png.c: Don't leak in the error path. (#405539, Daniel Atallah)
199 2007-02-07 Chris Wilson <chris@chris-wilson.co.uk>
201 * io-jpeg.c: (gdk_pixbuf__jpeg_image_load),
202 (gdk_pixbuf__jpeg_image_load_increment): Set the GError
203 if the image is zero length. (#405327)
205 2007-02-06 Matthias Clasen <mclasen@redhat.com>
207 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Protect
208 against stop_load begin broken. (#403255, Lucas Mazzardo Veloso)
210 2007-01-21 Matthias Clasen <mclasen@redhat.com>
212 * io-gif.c (gdk_pixbuf__gif_image_stop_load): Return an
213 error if we didn't successfully load a frame. (#394190,
216 2007-01-17 Michael Natterer <mitch@imendio.com>
218 Patch taken from maemo-gtk:
220 * io-png.c (png_text_to_pixbuf_option): don't call g_convert() on
223 (png_info_callback): set an error when the size_func would scale
224 the pixbuf away completely.
226 2007-01-16 Matthias Clasen <mclasen@redhat.com>
228 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Just
229 call gdk_pixbuf_loader_close to close the loader in
230 the error case. Fixes memory leaks in the error case,
231 pointed out by David Necas.
233 2007-01-04 Matthias Clasen <mclasen@redhat.com>
235 * io-bmp.c (OneLine32): Fix a warning
237 2006-12-22 Matthias Clasen <mclasen@redhat.com>
239 * io-bmp.c (decode_bitmasks): Handle bmps
240 with more than 8 bits per channel. (#172584,
243 * io-bmp.c: Handle offsets more carefully. (#172188,
246 * io-bmp.c: Handle v5 and OS/2 v2 bmps.
248 * io-bmp.c: Handle alpha masks in v4 and v5 bmps.
250 2006-12-21 Matthias Clasen <mclasen@redhat.com>
252 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Emit
253 the closed signal when closing the loader, pointed out
256 2006-12-21 Matthias Clasen <mclasen@redhat.com>
258 * io-gif.c (gif_get_lzw): Handle invalid gif animations
259 a little bit more robustly. (#357974, Vassilis Pandis,
260 patch by Felix Riemann)
262 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
263 * gdk-pixbuf.c (gdk_pixbuf_new): Remove redundant size
264 checks, and document that width, height must be > 0.
265 (#343330, Felix Riemann)
267 * Makefile.am: Link against GLib. (#341158, Alexey Rusakov)
269 2006-12-19 Matthias Clasen <mclasen@redhat.com>
271 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Don't
272 spew a warning if the printer is already closed.
274 2006-12-09 Matthias Clasen <mclasen@redhat.com>
276 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Behave as
277 documented and close the loader when returning FALSE.
279 2006-10-29 Tor Lillqvist <tml@novell.com>
282 * Makefile.am (EXTRA_DIST): Remove pixbufloader_*.def, they are
283 not used. (#365388) They were all identical, and exported just two
284 symbols, so if somebody needs them for a MSVC build that doesn't
285 use built-in modules it's trivial to hack makefile.msc to produce
286 a common .def file for the loaders. The two symbols that need to
287 be exported are fill_info and fill_vtable.
289 2006-10-11 Tor Lillqvist <tml@novell.com>
291 Enable having some loaders built-in even if loading the others
292 dynamically. Have loaders in the same order as in configure.in in
293 all places where they are handled/listed.
295 * Makefile.am: Define the STATIC_FOO_LIB and FOO_LIB macros
296 conditionally depending on whether said loader is built-in or
297 not. Use the names libstatic-pixbufloader-foo.la instead of
298 libpixbufloader-static-foo.la for the built-in ones so that the
299 "echo libpixbufloader-*.la" won't match them.
301 * gdk-pixbuf-io.c: Reorganize code as to plumb the built-in
302 loaders also if USE_GMODULE. Don't warn about a missing
303 gdk-pixbuf.loaders file if we have at least one included loader.
305 * gdk-pixbuf-private.h
306 * io-*.c: Don't define a generic MODULE_ENTRY, as we can't use it
307 in the loaders anyway. Each loader needs to check if INCLUDE_foo
310 2006-10-08 Matthias Clasen <mclasen@redhat.com>
312 * Apply a cleanup patch by Kjartan Maraas (#341812)
314 2006-09-06 Matthias Clasen <mclasen@redhat.com>
316 * io-pnm.c: Simplify and fix reading of ASCII images.
318 2006-08-17 Matthias Clasen <mclasen@redhat.com>
320 * === Released 2.10.2 ===
322 2006-08-16 Matthias Clasen <mclasen@redhat.com>
324 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale):
325 Stop loading an animation if the first frame is complete.
326 (#350911, Christian Neumair)
328 2006-07-23 Matthias Clasen <mclasen@redhat.com>
330 * === Released 2.10.1 ===
332 2006-07-16 Matthias Clasen <mclasen@redhat.com>
334 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module)
335 (gdk_pixbuf_loader_write, gdk_pixbuf_loader_close)
336 (gdk_pixbuf_loader_ensure_error): Put the code to protect
337 against broken loaders that forget to set error in an
338 auxiliary function and call it in more places. (#346428,
341 * io-xbm.c: Fix incremental loading of
342 xbms. (#346427, Ed Catmur)
343 Also make the xbm loader accept const variations.
345 2006-07-02 Matthias Clasen <mclasen@redhat.com>
347 * === Released 2.10.0 ===
349 2006-06-21 Matthias Clasen <mclasen@redhat.com>
351 * pixops/*.S: NetBSD portability fixes. (#346374,
354 * === Released 2.9.4 ===
356 2006-06-12 Matthias Clasen <mclasen@redhat.com>
358 * === Released 2.9.3 ===
360 2006-06-05 Matthias Clasen <mclasen@redhat.com>
362 * === Released 2.9.2 ===
364 2006-05-16 Matthias Clasen <mclasen@redhat.com>
366 * === Released 2.9.1 ====
368 2006-05-04 Matthias Clasen <mclasen@redhat.com>
370 * === Released 2.9.0 ===
372 2006-04-04 Matthias Clasen <mclasen@redhat.com>
374 * gdk-pixbuf-loader.c:
375 * gdk-pixbuf.c: Use G_DEFINE_TYPE.
377 * gdk-pixbuf.c: No point in making the error path fast by
380 2006-03-24 Matthias Clasen <mclasen@redhat.com>
382 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Remove a
383 pointless check, pointed out by Kjartan Maraas.
385 2006-03-22 Matthias Clasen <mclasen@redhat.com>
387 * gdk-pixbuf-loader.c: Add some documentation about
388 supported image formats, and how to find out about them.
389 (#335536, Murray Cumming)
391 2006-03-20 Matthias Clasen <mclasen@redhat.com>
393 * gdk-pixbuf-animation.c:
397 * io-gif.c: Always save errno to a temporary before making
398 other calls. (#335179, Morten Welinder)
400 2006-03-14 Matthias Clasen <mclasen@redhat.com>
402 * io-gif.c (gdk_pixbuf__gif_image_load): Add a shortcut
403 to stop the gif mainloop after the first frame, if that
404 is all we are interested in. (#334538)
406 2006-03-03 Matthias Clasen <mclasen@redhat.com>
408 * io-pnm.c: Support pnm files with maxval > 255.
409 (#327560, Matthijs Douze)
411 2006-03-03 Matthias Clasen <mclasen@redhat.com>
413 * io-pcx.c (pcx_load_palette_8): Fix incremental loading
414 of 8-bit pcx files. (#148518, Magnus Bergmann)
416 2006-02-28 Anders Carlsson <andersca@imendio.com>
419 Update documentation now that tiff supports saving.
427 (tiff_load_map_file):
428 (tiff_load_unmap_file):
429 (gdk_pixbuf__tiff_image_stop_load):
430 Rename callback functions that are used during loading.
437 (create_save_context):
439 New callback functions which operate on a memory buffer.
441 (gdk_pixbuf__tiff_image_save_to_callback):
442 Implement saving of pixbufs to tiffs.
445 (gdk_pixbuf__tiff_image_save):
446 New function that saves a pixbuf to a FILE handle. Uses
453 Change flags since this module supports writing now.
455 2006-02-10 Matthias Clasen <mclasen@redhat.com>
462 * io-xpm.c: Always check for NULL when using callbacks.
463 (#330563, Benjamin Otte)
465 2006-01-18 Matthias Clasen <mclasen@redhat.com>
467 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't cast
468 the results of g_new(). (#327423, Morten Welinder)
470 2006-01-12 Federico Mena Quintero <federico@ximian.com>
472 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Clarify
473 the docs ("darkened/brightened" is not "saturation").
475 Fri Dec 30 00:59:21 2005 Jonathan Blandford <jrb@redhat.com>
477 * gdk-pixbuf-io.c (gdk_pixbuf_format_get_license): minor doc edit.
479 2005-12-16 Matthias Clasen <mclasen@redhat.com>
481 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module_unlocked): Use
482 G_MODULE_BIND_LOCAL when opening modules.
484 2005-12-14 Michael Natterer <mitch@imendio.com>
486 * io-jpeg.c (gdk_pixbuf__jpeg_image_load_lines): new utility
487 function which factors out massive code duplication from the
490 2005-12-14 Michael Natterer <mitch@imendio.com>
492 * io-jpeg.c: applied patch from maemo-gtk which avoids the
493 allocation of an intermediate buffer for non-progressive
494 jpegs. Fixed bug #305894.
496 2005-11-15 Matthias Clasen <mclasen@redhat.com>
498 * io-xpm.c: Fix several integer overflows which have been
499 reported as CVE-2005-3186 and CVE-2005-2975.
501 2005-10-12 Matthias Clasen <mclasen@redhat.com>
503 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Only call
504 gdk_pixbuf_loader_eat_header_write() when count > 0. (#318589,
507 2005-10-03 Matthias Clasen <mclasen@redhat.com>
509 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
510 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
511 * gdk-pixbuf-loader.c: Use a 1k buffer for sniffing image formats,
512 instead of 128 or 256 bytes. (#317225, Sebastien Bacher,
515 2005-09-05 Matthias Clasen <mclasen@redhat.com>
517 * io-tga.c (parse_rle_data): Remove unused variable
518 pbuf_count. (#315282, Kjartan Maraas)
520 2005-08-31 Matthias Clasen <mclasen@redhat.com>
522 * Makefile.am (gdk-pixbuf-enum-types.c): Intern type
523 names in code generated by glib-mkenums, too.
525 * io-ani-animation.c (gdk_pixbuf_ani_anim_iter_get_type)
526 (gdk_pixbuf_ani_anim_get_type):
527 * io-gif-animation.c (gdk_pixbuf_gif_anim_get_type)
528 (gdk_pixbuf_gif_anim_iter_get_type):
529 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type):
530 * gdk-pixbuf.c (gdk_pixbuf_get_type):
531 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
532 Intern type names before registering the type to avoid
535 2005-08-30 Matthias Clasen <mclasen@redhat.com>
537 * gdk-pixbuf-io.c (format_check): Make this work again.
539 * io-png.c (png_save_to_callback_write_func): Add a cast
540 to avoid compiler warnings.
542 * pixops/timescale.c (main): Declare src_buf, dest_buf as
543 unsigned to avoid compiler warnings.
545 * gdk-pixbuf-io.h: Declare the prefix and mask members of
546 GdkPixbufModulePattern as char*, to avoid compiler warnings.
548 * io-ani.c (ani_load_chunk): Use g_try_new() in some places.
550 2005-08-24 Matthias Clasen <mclasen@redhat.com>
552 * === Released 2.8.2 ===
554 * === Released 2.8.1 ===
556 2005-08-18 Matthias Clasen <mclasen@redhat.com>
558 * io-ico.c (DecodeHeader): Check for overflow in one more
559 place. (#313818, Tommi Komulainen)
561 2005-08-15 Matthias Clasen <mclasen@redhat.com>
563 * io-jpeg.c (fatal_error_handler): Pay attention to the
564 libjpeg error code and report OOM errors as such. (#312674,
567 2005-08-13 Matthias Clasen <mclasen@redhat.com>
569 * === Released 2.8.0 ===
571 2005-08-07 Matthias Clasen <mclasen@redhat.com>
573 * abicheck.sh: Also check exported variables.
575 2005-08-02 Matthias Clasen <mclasen@redhat.com>
577 * === Released 2.7.5 ===
579 2005-07-22 Matthias Clasen <mclasen@redhat.com>
581 * === Released 2.7.4 ===
583 2005-07-22 Matthias Clasen <mclasen@redhat.com>
585 * queryloaders.c: Accept '*' in masks. (pointed out
586 by William Jon McCann)
588 * gdk-pixbuf-io.c (format_check): Make anchored patterns work
589 as they did before. (#311011, William Jon McCann)
591 2005-07-22 Matthias Clasen <mclasen@redhat.com>
593 * gdk-pixbuf-io.c (format_check): Interpret patterns where
594 the first byte of the mask is '*' as unanchored. (#311011)
595 (gdk_pixbuf_new_from_file): Use the first 256 bytes for
596 sniffing the file format.
598 2005-07-15 Matthias Clasen <mclasen@redhat.com>
600 * === Released 2.7.3 ===
602 2005-07-12 Matthias Clasen <mclasen@redhat.com>
605 * pixops/*: Add copyright and license information.
607 2005-07-09 Tor Lillqvist <tml@novell.com>
609 * Makefile.am: Don't use the scripts in build/win32 to compile the
610 rc file into a resource object file. (This means we lose the
611 build number increment magic, but I doubt it was that useful
612 anyway.) Instead use windres directly. To pass the normal .o file
613 produced by windres through libtool, which would want a .lo file,
614 pass it directly to the linker using a -Wl option.
616 * gdk_pixbuf.rc.in: Replace BUILDNUMBER with 0.
618 2005-07-08 Matthias Clasen <mclasen@redhat.com>
620 * === Released 2.7.2 ===
622 2005-07-01 Matthias Clasen <mclasen@redhat.com>
624 * === Released 2.7.1 ===
626 2005-07-01 Matthias Clasen <mclasen@redhat.com>
628 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale): Allow
629 -1 for width/height and interpret them as "not constrained".
630 (#309258, Mark McLoughlin)
632 2005-06-26 Tor Lillqvist <tml@novell.com>
634 * Makefile.am: Current GNU tools do understand the PRIVATE
635 keyword, so no need to remove those entries from the import
636 library. libtool installs the .dll.a import library itself, so no
637 need to do it here. Do install the .def file.
639 2005-06-22 Matthias Clasen <mclasen@redhat.com>
641 * gdk-pixbuf-i18n.h: Use glib-i18n.h
643 2005-06-20 Matthias Clasen <mclasen@redhat.com>
645 * === Released 2.7.0 ===
647 2005-06-15 Matthias Clasen <mclasen@redhat.com>
649 * gdk-pixbuf.symbols:
650 * gdk-pixbuf-simple-anim.h: Add
651 gdk_pixbuf_simple_anim_iter_get_type()
653 2005-06-08 Matthias Clasen <mclasen@redhat.com>
655 * io-pnm.c (pnm_read_next_value): Check for overflow.
656 (#306394, Morten Welinder)
658 2005-05-27 Matthias Clasen <mclasen@redhat.com>
660 * io-bmp.c: Accept the 108 byte header of BMP v4. (#168799)
662 2005-05-25 Matthias Clasen <mclasen@redhat.com>
664 * gdk-pixbuf.symbols:
665 * gdk-pixbuf-simple-anim.[hc]: No need to expose the iter
666 subclass at all in the headers.
668 * Makefile.am: Add new files.
670 * gdk-pixbuf.symbols: Add new api.
672 * gdk-pixbuf.h: Include gdk-pixbuf-simple-anim.h here.
674 * gdk-pixbuf-simple-anim.[hc]: Add a way to construct
675 simple animations out of pixbufs. (#135161, Dom Lachowicz)
677 2005-05-24 Sven Neumann <sven@gimp.org>
679 * io-png.c: allow to specify the PNG compression level by passing
680 a "compression" parameter to the PNG save function (bug #305337).
682 * gdk-pixbuf-io.c (gdk_pixbuf_save): document the new parameter.
684 2005-04-09 Matthias Clasen <mclasen@redhat.com>
686 * Makefile.am: Use $(NM), not nm directly. (#301299,
687 Nguyen Thai Ngoc Duy)
689 * io-bmp.c (gdk_pixbuf__bmp_image_save_to_callback):
690 Don't overflow the stack. (Jakub Jelinek, Arjan van de Ven)
692 2005-04-08 Matthias Clasen <mclasen@redhat.com>
694 * io-pcx.c: No debugging output, please. (#173107,
697 2005-04-07 Matthias Clasen <mclasen@redhat.com>
699 * io-bmp.c (DecodeColormap): Initialize the colormap to
700 zero. (#171762, David Costanzo)
702 2005-03-30 Matthias Clasen <mclasen@redhat.com>
704 * io-bmp.c: Avoid bus errors due to unaligned access. (#168173,
705 Morten Welinder, Ivan Wong)
707 2005-03-29 Matthias Clasen <mclasen@redhat.com>
709 * io-tga.c (parse_rle_data): Fix the update areas for incremental
710 loading of compressed tgas. (#171883, David Costanzo)
712 2005-03-27 Matthias Clasen <mclasen@redhat.com>
714 * io-bmp.c (DoCompressed): Use the correct update regions for
715 compressed bmps. (#150664, Owen Taylor, test images provided
718 Sun Mar 27 19:59:52 2005 Manish Singh <yosh@gimp.org>
720 * io-bmp.c (grow_buffer): reject 0-sized buffers as corrupt header
721 data. Fixes bug #171707.
723 2005-03-25 Matthias Clasen <mclasen@redhat.com>
725 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use canonical
728 2005-03-21 Matthias Clasen <mclasen@redhat.com>
730 * gdk-pixbuf.c (gdk_pixbuf_class_init): Mark param spec strings
733 2005-03-14 Matthias Clasen <mclasen@redhat.com>
735 Make PLT-reduction work with gcc4, and don't include
736 everything in gdk-pixbuf-alias.h:
738 * gdk-pixbuf.symbols: Group symbols by header and source file.
739 * /makegdkpixbufalias.pl: Protect definitions by the same
740 preprocessor symbols used to guard the headers. Move
741 the alias declarations to a separate file which is
742 produced when calling makegdkpixbufalias.pl -def
743 * Makefile.am (gdk-pixbuf-aliasdef.c): Add a rule to generate
745 * *.c: Include gdk-pixbuf-alias.h after the other headers,
746 include gdk-pixbuf-aliasdef.c at the bottom.
748 2005-03-10 Tor Lillqvist <tml@novell.com>
752 * gdk-pixbuf.symbols: Implement DLL ABI stablility for
753 gdk_pixbuf_save() and gdk_pixbuf_savev(). (#167973)
755 2005-03-09 Matthias Clasen <mclasen@redhat.com>
757 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Fix
758 a C99ism. (#169741, Morten Welinder)
760 2005-03-08 Matthias Clasen <mclasen@redhat.com>
762 * gdk-pixbuf.c (gdk_pixbuf_class_init): Use canonical
763 form of the name when registering properties.
765 * gdk-pixbuf.symbols: Add the new attributes here, too.
767 * gdk-pixbuf-core.h: Use G_GNUC_NULL_TERMINATED where
768 appropriate. (#165682, Marc Meissner)
770 2005-03-07 Matthias Clasen <mclasen@redhat.com>
772 * io-xpm.c: Use a generated table of offsets
773 into a big const string to avoid relocations
774 in the rgb color table. (#168901, Tommi Komulainen)
776 * gen-color-table.pl: Script to generate the table,
777 copied from Owen Taylors script by the same name
780 * xpm-color-table.h: The generated table.
782 2005-03-03 Matthias Clasen <mclasen@redhat.com>
784 * io-xpm.c (pixbuf_create_from_xpm): Check the number
785 of scanned items. (#168906, Morten Welinder)
787 Make the gif loader handle oom when loading
788 animations. (#168857, Tommi Komulainen)
790 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
791 Handle oom by returning NULL.
793 * io-gif.c (gif_get_lzw): Return an error if composite
796 2005-02-28 Matthias Clasen <mclasen@redhat.com>
798 * pixops/*.S: Add .note.GNU-stack sections to Mark these as not
799 requiring an executable stack.
801 2005-02-23 Matthias Clasen <mclasen@redhat.com>
803 * gdk-pixbuf-io.c: Document BMP saving support.
805 * io-bmp.c: Support saving as BMP. (168173, Ivan Wong)
807 * io-ico.c: Fix a typo. (#168173, Ivan Wong)
809 2005-02-15 Matthias Clasen <mclasen@redhat.com>
811 * io-pnm.c (pnm_skip_whitespace): Don't read over the end of
812 the buffer if '#' appears at the very end. (#167141, Doug Morgan)
814 2005-02-05 Hans Breuer <hans@breuer.org>
816 * makefile.msc : rule for gdk_pixbuf.def
818 2005-02-07 Matthias Clasen <mclasen@redhat.com>
820 * io-pnm.c (pnm_read_next_value): Pass in the max number
822 (pnm_read_ascii_scanline): And use it here to enable
823 parsing of pbm images without whitespace between the
824 pixels. (#165803, Samuel Hym)
826 2005-01-22 Matthias Clasen <mclasen@redhat.com>
828 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type)
829 (gdk_pixbuf_loader_new_with_mime_type): Close the loader
830 before unreffing it in the error case. (#164915, Crispin
833 2005-01-12 Owen Taylor <otaylor@redhat.com>
835 * Makefile.am: Use grep | head -n 1 instead of grep -m 1
837 with slightly older versions of GNU grep in
838 install-libtool-import-lib rule.
840 2005-01-08 Matthias Clasen <mclasen@redhat.com>
842 * === Released 2.6.1 ===
844 2005-01-04 Matthias Clasen <mclasen@redhat.com>
846 * io-bmp.c (DecodeHeader): Error on compressed images with
847 negative height. Also make uncompressed images with data_offset
848 != header_size work. (#150664, Owen Taylor)
850 2005-01-02 Matthias Clasen <mclasen@redhat.com>
852 * pixops/pixops.c (bilinear_box_make_weights): Really fix the
853 math to make the vectors sum up to 1, making GDK_INTERP_HYPER
854 work again. (#162703, Dennis Nezic)
856 2004-12-27 Matthias Clasen <mclasen@redhat.com>
858 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
859 Avoid deadlock. Pointed out by Callum McKenzie.
861 Wed Dec 22 01:17:44 2004 Jonathan Blandford <jrb@redhat.com>
863 * queryloaders.c (main): print out the version and binary name in
864 the header comment. Problem reported by Seth Nickell.
866 2004-12-16 Matthias Clasen <mclasen@redhat.com>
868 * === Released 2.6.0 ===
870 Fri Dec 10 13:57:44 2004 Manish Singh <yosh@gimp.org>
872 * abicheck.sh: filter out PRIVATE.
874 2004-12-05 Tor Lillqvist <tml@iki.fi>
876 * gdk-pixbuf-animation.c
880 * make-inline-pixbuf.c
881 * queryloaders.c: Use gstdio wrappers. Document that file names
882 are in the GLib file name encoding.
884 * gdk-pixbuf-csource.c
885 * queryloaders.c: On Windows, convert command line arguments and
886 environment variable values from locale encoding to UTF-8.
888 * queryloaders.c: On Windows, use wide character API when
894 * gdk-pixbuf-animation.h
895 * gdk-pixbuf-animation.c: Like in GLib, for DLL ABI stability on
896 Windows, add binary compatibility versions of functions that take
897 file names as arguments. They use the system codepage, not GLib
898 file name encoding (which is UTF-8 on Windows). Use #defines to
899 make newly compiled code use the "real" functions that use the
900 GLib file name encoding scheme.
902 2004-12-02 Matthias Clasen <mclasen@redhat.com>
904 * === Released 2.5.6 ===
906 2004-11-30 Matthias Clasen <mclasen@redhat.com>
908 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_iter_get_pixbuf):
909 Fix a typo in the docs. (#159955, Masao Mutoh)
911 2004-11-29 Matthias Clasen <mclasen@redhat.com>
913 * Makefile.am (gdk-pixbuf-alias.h): Use the perl found by
914 configure. (#149826, Morten Welinder)
916 Sun Nov 28 12:11:21 2004 Manish Singh <yosh@gimp.org>
918 * makegdkpixbufalias.pl: Typo fix, so attributes are really
921 2004-11-28 Matthias Clasen <mclasen@redhat.com>
923 * gdk-pixbuf.symbols:
924 * Makefile.am: Mark get_type() functions generated by glib-mkenums
927 Thu Nov 25 14:21:37 2004 Manish Singh <yosh@gi,p.org>
929 * abicheck.sh: filter out G_GNUC stuff when doing the compare.
931 2004-11-23 Matthias Clasen <mclasen@redhat.com>
933 * gdk-pixbuf-core.h: Don't mark gdk_pixbuf_error_quark() as const,
934 to be consistent with all the other error_quark functions.
935 (technically they are const, but since these are called only
936 in error paths, giving the compiler better optimization
937 opportunities doesn't matter much)
939 * gdk-pixbuf.symbols: Add attribute annotations.
940 * makegdkpixbufalias.pl: Keep attribute annotations, but strip PRIVATE.
941 * Makefile.am (gdk_pixbuf.def): Strip attribute annotations, but keep
944 Mon Nov 15 18:58:22 2004 Manish Singh <yosh@gimp.org>
946 * gdk-pixbuf-private.h: _gdk_pixbuf_lock now returns a gboolean.
948 * abicheck.sh: don't hardcode lengths for cut, instead split on
951 2004-11-15 Matthias Clasen <mclasen@redhat.com>
953 * gdk-pixbuf-animation.c:
954 * gdk-pixbuf-loader.c:
955 * gdk-pixbuf-io.c: Be extra careful when locking and handle
956 the case that the module may initialize the thread system.
958 * gdk-pixbuf-io.[hc] (_gdk_pixbuf_lock): Return whether the
959 lock was actually taken.
961 * queryloaders.c (query_module): Set vtable->module before
962 calling fill_vtable(), since gdk-pixbuf-io.c does does the
963 same and modules may rely on it. (#158177, Dan Winship)
965 2004-11-12 Matthias Clasen <mclasen@redhat.com>
967 * gdk-pixbuf-io.c (gdk_pixbuf_io_init): Don't use
968 _gdk_pixbuf_load_module_unlocked() in the !USE_GMODULE case.
970 * === Released 2.5.5 ===
972 2004-11-12 Matthias Clasen <mclasen@redhat.com>
974 Changes to make gdk-pixbuf threadsafe (#157310, #157306,
977 * gdk-pixbuf-io.h (enum GdkPixbufFormatFlags): Add
978 GDK_PIXBUF_FORMAT_THREADSAFE to indicate that an image loader
981 * gdk-pixbuf-io.c (get_file_formats, _gdk_pixbuf_load_module):
982 Use a lock to make initialization of global data structures
984 * gdk-pixbuf-private.h:
985 * gdk-pixbuf-io.c (_gdk_pixbuf_lock, _gdk_pixbuf_unlock):
986 Auxiliary functions which use another lock to protect
987 threadunsafe image loaders.
989 * gdk-pixbuf-io.c (gdk_pixbuf_real_save):
990 (save_to_callback_with_tmp_file):
991 (gdk_pixbuf_real_save_to_callback):
992 (gdk_pixbuf_new_from_xpm_data):
993 (_gdk_pixbuf_generic_image_load):
994 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
995 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module):
996 (gdk_pixbuf_loader_close):
997 (gdk_pixbuf_loader_finalize):
998 Use _gdk_pixbuf_lock() and _gdk_pixbuf_unlock().
1000 * io-ani.c, io-bmp.c, io-gif.c, io-ico.c:
1001 * io-jpeg.c, io-pcx.c, io-png.c, io-pnm.c:
1002 * io-ras.c, io-tga.c, io-wbmp.c, io-xbm.c:
1003 * io-xpm.c: Mark as threadsafe.
1005 * io-tiff.c: Remove pointless locking, mark as
1008 2004-11-10 Matthias Clasen <mclasen@redhat.com>
1010 * gdk-pixbuf-animation.c:
1011 * gdk-pixbuf-io.c: Use g_filename_display_name() instead of
1012 g_filename_to_utf8() when putting filenames in error messages.
1014 2004-11-04 Matthias Clasen <mclasen@redhat.com>
1016 * gdk-pixbuf.c (gdk_pixbuf_class_init): Document current
1017 restrictions for property values. (#157409, Matthew H. Plough)
1019 2004-11-01 Matthias Clasen <mclasen@redhat.com>
1021 * gdk-pixbuf-features.h.in: Break the declaration of the three
1022 version variables, so that gtk-doc can grok it.
1024 2004-10-29 Hans Breuer <hans@breuer.org>
1026 * makefile.msc : updated
1028 2004-10-27 Matthias Clasen <mclasen@redhat.com>
1030 * === Released 2.5.4 ===
1032 2004-10-27 Matthias Clasen <mclasen@redhat.com>
1034 * Makefile.am (gdk-pixbuf-alias.h): Fix srcdir != builddir
1037 2004-09-19 Matthias Clasen <mclasen@redhat.com>
1039 * === Released 2.5.3 ===
1041 2004-09-15 Matthias Clasen <mclasen@redhat.com>
1044 * io-xpm.c: Fix some security issues discovered by Chris Evans.
1046 Mon Sep 13 19:31:34 2004 Matthias Clasen <maclas@gmx.de>
1048 * io-jpeg.c (real_save_jpeg): Drop the alpha channel
1049 when saving 4-channel pixbufs. (#152450, Emmanuel Pacaud)
1051 2004-09-09 Matthias Clasen <mclasen@redhat.com>
1053 * makegdkpixbufalias.pl: Use the short prefix "IA__" for
1054 aliases instead of the long suffix "__internal_alias".
1056 2004-09-01 Matthias Clasen <mclasen@redhat.com>
1058 * gdk-pixbuf-core.h: Align argument names with source.
1060 Thu Aug 26 01:23:16 2004 Matthias Clasen <maclas@gmx.de>
1062 * gdk-pixbuf-core.h:
1063 * gdk-pixbuf.symbols:
1064 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale):
1065 Add gdk_pixbuf_new_from_file_at_scale(), which is just
1066 like gdk_pixbuf_new_from_file_at_size(), but optionally
1067 ignores the aspect ratio. (#136395, Dom Lachowicz)
1069 Wed Aug 25 17:23:23 2004 Manish Singh <yosh@gimp.org>
1071 * io-gif.c: remove unused set_need_recomposite() function.
1073 2004-08-25 Matthias Clasen <mclasen@redhat.com>
1075 * === Released 2.5.2 ===
1077 * abicheck.sh: Make work in make distcheck.
1079 2004-08-25 Matthias Clasen <mclasen@redhat.com>
1081 * Makefile.am: Use the same prefix when creating
1082 gdk-pixbuf-marshal.c and gdk-pixbuf-marshal.h
1084 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): _-prefix
1087 2004-08-24 Matthias Clasen <mclasen@redhat.com>
1089 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_mime_type): Use
1090 the correct index and compare correctly, reported by Tommi Komulainen.
1091 (gdk_pixbuf_loader_new_with_mime_type):
1093 * gdk-pixdata.c (gdk_pixdata_from_pixbuf): Work around bugs in
1094 the runlength encoder by forcing rowstride * height to be
1095 divisible by bpp. (#150882)
1097 Sun Aug 22 03:20:56 2004 Matthias Clasen <maclas@gmx.de>
1099 * pixops/pixops.c (pixops_scale_nearest): Fix a mixup in the handling
1100 of dest_channels. (#111922, Christophe Fergeau)
1102 Fri Aug 20 11:59:10 2004 Owen Taylor <otaylor@redhat.com>
1104 * io-bmp.c: Fix infinite loop that can occur for bad
1105 image data (#150601, Chris Evans, Manish Singh)
1107 2004-08-17 Matthias Clasen <mclasen@redhat.com>
1109 * abicheck.sh: No need for INCLUDE_INTERNAL_SYMBOLS any more.
1111 * Makefile.am (gdk-pixbuf-alias.h): Don't use cpp to filter the symbols.
1113 * makegdkpixbufalias.pl: Move the #ifdef processing into the perl script,
1114 and keep the #ifdefs which differentiate between platforms.
1116 * gdk-pixbuf.symbols: Remove the marshalers.
1118 * Makefile.am (stamp-gdk-pixbuf-marshal.h): _-prefix the marshalers.
1120 Thu Aug 12 22:19:12 2004 Matthias Clasen <maclas@gmx.de>
1122 * io-bmp.c (DecodeHeader): Properly determine the number of
1123 colors in an OS/2 BMP file. (#150003, Jon-Kare Hellan)
1125 2004-08-12 Matthias Clasen <mclasen@redhat.com>
1127 * pixops/pixops.c: Remove C99-isms. (#149967, Vincent Noel)
1129 Wed Aug 11 22:56:55 2004 Matthias Clasen <maclas@gmx.de>
1131 * abicheck.sh: Check all symbols.
1133 2004-08-11 Matthias Clasen <mclasen@redhat.com>
1135 * pixops/pixops.c: Make scaling and compositing functions handle
1136 edge pixels consistently. (#111922, Brian Cameron)
1138 * pixops/pixops-internal.h:
1140 * pixops/*.S: underscore prefix the mmx implementations, in order
1143 * gdk-pixbuf.symbols: Remove the mmx pixops implementations.
1145 * abicheck.sh: No need to define INCLUDE_MMX_SYMBOLS any more.
1147 Tue Aug 10 23:53:59 2004 Matthias Clasen <maclas@gmx.de>
1149 Add hidden aliases for exported symbols which are
1150 used internally in order to get rid of many PLT
1151 entries. (#145519, Arjan van de Ven)
1153 * gdk/Makefile.am: Add rules to generate gdk_pixbuf.def and
1154 gdk-pixbuf-alias.h from gdk-pixbuf.symbols, and make make
1155 check check the abi with abicheck.sh.
1157 * gdk/gdk-pixbuf.symbols: New file. Definition of the gdk-pixbuf
1158 ABI. The file can be processed by cpp to filter out certain
1161 * gdk/abicheck.sh: New file. Script to check the actually
1162 symbols exported from libgdk_pibuf.2.0.so against the symbols
1163 found in gdk-pixbuf.symbols.
1165 * gdk/makegdkpixbufalias.pl: New file. Perl script to generate the
1166 header containing the alias definitions for internally used
1167 exported symbols from a list of symbols.
1169 * *.c: Include gdk-pixbuf-alias.h
1171 2004-08-06 Hans Breuer <hans@breuer.org>
1173 * gdk_pixbuf.def makefile.msc : updated
1175 Sun Aug 1 23:57:06 2004 Matthias Clasen <maclas@gmx.de>
1177 * io-pcx.c (pcx_increment_load_data_1): Fix progressive
1178 loading of 8bit pcx files. (#148518, Magnus Bergman)
1180 2004-08-01 Matthias Clasen <mclasen@redhat.com>
1182 * === Released 2.5.1 ===
1184 Tue Jul 20 22:23:26 2004 Matthias Clasen <maclas@gmx.de>
1186 * gdk-pixbuf-io.h: Remove trailing commas from
1187 enumerations. (#148035)
1189 Sun Jul 18 20:17:41 2004 Soeren Sandmann <sandmann@daimi.au.dk>
1191 * === released 2.5.0 ==
1193 Thu Jul 15 19:19:21 2004 Matthias Clasen <maclas@gmx.de>
1195 * io-png.c (real_save_png):
1196 * gdk-pixbuf-io.c (gdk_pixbuf_io_init): Use 'cannot' instead
1197 of 'can not' in messages. (#144226, Morten Welinder)
1199 Fri Jul 9 15:38:06 2004 Manish Singh <yosh@gimp.org>
1201 * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled): function doesn't
1202 return a value, so don't use g_return_val_if_fail()
1204 * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple): initialize dest in
1205 the can't happen case, to quiet gcc.
1207 * io-tiff.c (tifflibversion): enclose in #if TIFFLIB_VERSION >=
1210 Wed Jul 7 23:53:58 2004 Matthias Clasen <maclas@gmx.de>
1213 * gdk-pixbuf-io.c (gdk_pixbuf_format_is_disabled):
1214 * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled):
1215 * gdk-pixbuf-io.c (gdk_pixbuf_format_get_license):
1216 New functions to disable/enable individual loaders and to
1217 obtain license information about loaders.
1219 * gdk-pixbuf-io.h (GdkPixbufFormat): Add disabled and
1222 * gdk-pixbuf-io.c (_gdk_pixbuf_get_module):
1223 * gdk-pixbuf-io.c (_gdk_pixbuf_get_named_module): Skip
1226 * io-*.c: Add license information in the fill_info
1229 2004-07-07 Matthias Clasen <mclasen@redhat.com>
1231 * gdk-pixbuf-features.h.in: Fix the build.
1233 2004-07-06 Tor Lillqvist <tml@iki.fi>
1235 * gdk-pixbuf-features.h.in
1236 * gdk-pixbuf.c: Mark the version variables for proper import and
1237 export from Windows DLLs. Thanks to Laurent Sansonetti for
1238 reporting the problem.
1240 Sat Jul 3 00:41:44 2004 Matthias Clasen <maclas@gmx.de>
1242 * pixops/pixops.c (bilinear_box_make_weights): Correct the
1243 math to calculate bilinear weights. (#112412, Brian Cameron)
1245 Mon Jun 21 00:44:51 2004 Matthias Clasen <maclas@gmx.de>
1247 * gdk-pixbuf-transform.h:
1248 * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple):
1249 * gdk-pixbuf-scale.c (gdk_pixbuf_flip): New functions to
1250 rotate pixbufs by multiples of 90 degrees and to flip them
1251 horizontally or vertically.
1253 Sun Jun 20 01:06:48 2004 Matthias Clasen <maclas@gmx.de>
1255 Header reorganization. (#51999, Jeff Franks, reorganization
1256 proposed by Havoc Pennington)
1258 * gdk-pixbuf.h: This is now an include-only header, and the only
1259 one which applications should directly use.
1261 * gdk-pixbuf-animation.h: Add animation api from gdk-pixbuf.h.
1262 * gdk-pixbuf-io.h: Add io api from gdk-pixbuf.h.
1263 * gdk-pixbuf-loader.h: Add loader api from gdk-pixbuf.h.
1264 * gdk-pixbuf-transform.h: New header.
1265 * gdk-pixbuf-core.h: New header.
1267 Sat Jun 19 01:44:12 2004 Matthias Clasen <maclas@gmx.de>
1269 * gdk-pixbuf-scale.c (gdk_pixbuf_composite): Add a figure which
1270 explains pixbuf compositing.
1272 2004-06-16 Matthias Clasen <mclasen@redhat.com>
1274 * io-tiff.c: Make the tiff loader work with both
1275 libtiff 3.5.7 and libtiff 3.6.1. (#135541, Marco Ghirlanda)
1277 Fri Jun 11 22:02:56 2004 Matthias Clasen <maclas@gmx.de>
1279 * io-gif.c, io-pnm.c, io-tga.c, io-xpm.c: Don't use
1280 contractions like "don't" or "isn't" in error messages.
1281 It isn't nice to use them in log entries either...
1282 (#137774, Morten Welinder, patch by Alexander Winston)
1284 Sat Jun 5 00:59:12 2004 Matthias Clasen <maclas@gmx.de>
1288 * gdk-pixbuf-animation.c:
1289 * gdk-pixbuf-io.c: Convert filenames to UTF-8 when embedding
1290 them in error messages. (#143654, Sven Neumann)
1292 Sun May 16 22:53:47 2004 Matthias Clasen <maclas@gmx.de>
1296 * io-pnm.c (pnm_read_next_value): Don't read integers
1297 partially. (#142584, Kouichirou Hiratsuka)
1299 2004-05-10 Matthias Clasen <mclasen@redhat.com>
1303 * pixops/timescale.c:
1306 * gdk-pixbuf-scale.c: _-prefix the nonstatic pixops_...
1307 functions. (#142233, Morten Welinder)
1309 Wed May 5 23:09:48 2004 Matthias Clasen <maclas@gmx.de>
1311 * gdk-pixbuf-io.h (GdkPixbufFormatFlags): New format flag
1312 GDK_PIXBUF_FORMAT_SCALABLE to mark scalable formats.
1315 * gdk-pixbuf-io.c (gdk_pixbuf_format_is_scalable): New function.
1316 (#137995, Dom Lachowicz)
1318 2004-04-30 Matthias Clasen <mclasen@redhat.com>
1320 * === Released 2.4.1 ===
1322 2004-04-13 Matthias Clasen <mclasen@redhat.com>
1324 * io-ani.c (gdk_pixbuf__ani_image_load_animation):
1325 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info)
1326 (_gdk_pixbuf_generic_image_load)
1327 (gdk_pixbuf_new_from_file_at_size): When calling fread()
1328 in a loop, check for ferror() as well as for feof() to
1329 avoid infinite loops on directories. (#137804, Alex Converse)
1331 Mon Mar 15 15:01:59 2004 Owen Taylor <otaylor@redhat.com>
1333 * === Released 2.4.0 ===
1335 2004-03-15 Tor Lillqvist <tml@iki.fi>
1337 * queryloaders.c (main): [Win32] Look up installation prefix at
1338 run-time, replace prefix in PIXBUF_LIBDIR with that. (#106141)
1340 Merges from stable branch that had been left out. (#136282, J. Ali
1343 Changes for run-time lookup of installation location on Win32:
1345 * Makefile.am (INCLUDES): Define GTK_PREFIX as $(prefix).
1347 * gdk-pixbuf-io.c (get_sysconfdir): New function, look up
1348 installation location at runtime and deduce GTK_SYSCONFDIR
1350 (get_toplevel): Similar, for the top-level installation directory.
1351 (correct_prefix): Replace compile-time prefix with run-time
1353 (get_libdir): Remove, not used any longer.
1354 (gdk_pixbuf_io_init): Call correct_prefix() on Win32.
1356 * queryloaders.c (query_module): [Win32] Change backslahses into
1359 Tue Mar 9 09:33:28 2004 Owen Taylor <otaylor@redhat.com>
1361 * === Released 2.3.6 ===
1363 2004-03-05 Tor Lillqvist <tml@iki.fi>
1365 * gdk_pixbuf.def: Add missing entries. Thanks to J. Ali Harlow.
1367 Fri Mar 5 22:22:25 2004 Matthias Clasen <maclas@gmx.de>
1369 * io-bmp.c (OneLine32): Don't try to load an alpha channel
1370 from the BMP, since there is no evidence that even 32bit
1371 BMPs have an alpha channel. (#135502)
1373 Mon Mar 1 19:47:48 2004 Owen Taylor <otaylor@redhat.com>
1375 * === Released 2.3.5 ====
1377 2004-02-28 Hans Breuer <hans@breuer.org>
1379 * io-tiff.c : include <io.h> for lseek()
1380 * io-xbm.c : use HAVE_UNISTD_H
1382 Tue Feb 24 14:45:03 2004 Owen Taylor <otaylor@redhat.com>
1384 * === Released 2.3.3 ===
1386 Sun Feb 22 01:09:55 2004 Matthias Clasen <maclas@gmx.de>
1388 * io-bmp.c (gdk_pixbuf__bmp_image_begin_load): Remove debugging
1391 Fri Feb 20 22:25:32 2004 Matthias Clasen <maclas@gmx.de>
1393 * io-bmp.c (DecodeHeader): Store and sanity-check the clrUsed field
1394 from the header for use in DecodeColormap.
1395 * io-bmp.c (DecodeColormap): Don't read more colormap entries than
1396 the header says are there. (#134235, Kazuho Okui)
1398 Sun Feb 8 01:07:20 2004 Manish Singh <yosh@gimp.org>
1400 * gdk-pixbuf-io.c: removed unnecessary G_OBJECT() cast checks.
1402 * io-jpeg.c: make the return type for to_callback_empty_output_buffer
1403 "boolean", which should be defined by the jpeg headers. The right
1404 return type for this function depends on how the jpeg library
1405 was built (one wonders what happens if different compilers are used).
1407 2004-01-28 Hans Breuer <hans@breuer.org>
1409 * gdk_pixbuf.def : updated externals
1411 Sat Jan 17 23:02:55 2004 Matthias Clasen <maclas@gmx.de>
1413 The second part of the fix for #114351 (see also
1416 * gdk-pixbuf-i18n.h (P_): Use translation domain gtk20-properties.
1418 Sat Jan 17 00:01:51 2004 Matthias Clasen <maclas@gmx.de>
1420 The first part of the fix for #114351 (see also
1423 * gdk-pixbuf-i18n.h: Define P_() for property blurbs and nicks.
1425 * gdk-pixbuf.c: Mark property blurbs and nicks with P_().
1427 Thu Jan 8 22:01:14 2004 Matthias Clasen <maclas@gmx.de>
1429 * queryloaders.c (loader_sanity_check): Don't use bitwise operators
1430 on booleans. (#130923, reported by Telsa Gwynne, fix by Dave Jones)
1432 2004-01-06 Federico Mena Quintero <federico@ximian.com>
1434 * gdk-pixbuf-io.c (gdk_pixbuf_save): Escape an ampersand in the
1435 documentation comment, and hack around an empty line in the code
1436 example so that gtk-doc won't put a <para> due to it.
1438 * gdk-pixbuf.c (gdk_pixbuf_get_pixels): Link to the documentation
1439 section on image data.
1441 2004-01-06 Federico Mena Quintero <federico@ximian.com>
1443 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Fix example in
1444 documentation comment. Fixes #130701.
1446 Wed Jan 7 02:41:14 2004 Matthias Clasen <maclas@gmx.de>
1448 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_bufferv):
1449 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_buffer):
1450 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callbackv):
1451 * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callback): New public API
1452 to save pixbufs to non-file locations. (#82203, Tim Evans)
1455 * gdk-pixbuf.def: Declare the new public API.
1457 * gdk-pixbuf-io.h: Add save_to_callback to the module interface.
1460 * io-png.c: Implement save_to_callback.
1462 * gdk-pixbuf-io.c (gdk_pixbuf_savev):
1463 * gdk-pixbuf-io.c (gdk_pixbuf_save): Update documentation.
1465 * gdk-pixbuf-io.c (gdk_pixbuf_real_save): Support saving via
1466 image_module->save_to_callback.
1468 * gdk-pixbuf-io.c (gdk_pixbuf_real_save_to_callback): New generic
1469 save_to_callback function which falls back to image_module->save
1472 Wed Jan 7 01:17:36 2004 Matthias Clasen <maclas@gmx.de>
1474 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_size_func):
1475 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_set_size):
1476 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_init): Make it possible
1477 to call gdk_pixbuf_loader_set_size (loader, 0, 0) by changing
1478 the initial values of priv->width/height to -1.
1480 * io-tiff.c (tiff_image_parse):
1481 * io-ras.c (RAS2State):
1482 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment):
1483 * io-pcx.c (gdk_pixbuf__pcx_load_increment):
1484 * io-jpeg.c (gdk_pixbuf__jpeg_image_load_increment):
1485 * io-png.c (png_info_callback):
1486 * io-ico.c (DecodeHeader):
1487 * io-bmp.c (DecodeHeader): Call size_func once the size is known,
1488 even if the module can't make use of the scaling information. If
1489 size_func returns 0, don't allocate a pixbuf and return, if
1490 necessary with an error.
1493 * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info): A new function
1494 to determine the type and size of an image file without loading
1495 it completely. (#53725)
1497 Sun Jan 4 00:44:57 2004 Matthias Clasen <maclas@gmx.de>
1499 * gdk-pixbuf.c (gdk_pixbuf_class_init): Turn the pixbuf
1500 attributes into (construct-only, but always readable)
1501 properties. (#130196)
1503 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Set properties
1506 Mon Dec 22 01:35:36 2003 Matthias Clasen <maclas@gmx.de>
1508 * Makefile.am (gdk-pixbuf.loaders): Fix building with
1509 --disable-modules --with-included-loaders, create an
1510 empty gdk-pixbuf.loaders file. (#124496, Arno Charlet, fix
1511 proposed by Owen Taylor)
1513 Thu Dec 11 01:57:05 2003 Matthias Clasen <maclas@gmx.de>
1515 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
1516 the documentation for signals inline, to get proper parameter
1517 documentation. (#128977)
1519 Sat Nov 15 00:26:19 2003 Matthias Clasen <maclas@gmx.de>
1521 * queryloaders.c (loader_sanity_check): Check that the mask
1522 is NULL or a string of the same length consisting entirely of
1523 ' ', '!', 'x', 'z', 'n'.
1525 Mon Nov 10 00:17:52 2003 Matthias Clasen <maclas@gmx.de>
1527 * Makefile.am (install-data-local): Typo fix in warning.
1529 Sun Nov 9 23:07:05 2003 Matthias Clasen <maclas@gmx.de>
1531 * gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): If neither
1532 load nor begin_load are available fall back to load_animation
1533 and use gdk_pixbuf_animation_get_static_image() to obtain a
1534 pixbuf. Inefficient, but at least doesn't crash.
1536 Sun Nov 9 21:56:20 2003 Matthias Clasen <maclas@gmx.de>
1538 * queryloaders.c (write_loader_info): New function to write
1539 out the information for a single loader, factored out of
1541 (loader_sanity_check): New function to perform
1542 sanity checks on a loader.
1543 (query_module): Use the new functions.
1545 Thu Nov 6 00:27:27 2003 Matthias Clasen <maclas@gmx.de>
1547 * io-pcx.c (gdk_pixbuf__pcx_load_increment): Fold two similar
1548 strings into on. (#126204, Danilo Segan)
1550 2003-09-19 Matthias Clasen <maclas@gmx.de>
1552 * io-tga.c (try_preload): Remove a pointless check.
1553 (#122710, Kjartan Maraas)
1555 Mon Aug 18 10:25:29 2003 Owen Taylor <otaylor@redhat.com>
1557 * gdk-pixdata.c (gdk_pixdata_to_csource): Add the correct
1558 alignment magic for Sun compiler and for GCC to get
1559 the strings aligned. (Patch from Brian Cameron, #117217)
1561 2003-08-14 Matthias Clasen <maclas@gmx.de>
1563 * gdk-pixdata.c (gdk_pixdata_to_csource): Improve doc comment
1564 wording. (#119754, Doug Quale)
1566 2003-08-03 Matthias Clasen <maclas@gmx.de>
1568 * gdk-pixbuf.c (gdk_pixbuf_get_rowstride):
1569 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading
1570 explanation of rowstride. (#119000)
1572 2003-07-24 Matthias Clasen <maclas@gmx.de>
1574 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the
1575 aspect ratio. (#118145, Owen Taylor)
1577 2003-07-23 Matthias Clasen <maclas@gmx.de>
1579 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader
1580 before unref'ing it. (#118146, Owen Taylor)
1582 2003-03-01 Hans Breuer <hans@breuer.org>
1584 * makefile.msc : updated
1586 * gdk_pixbuf.def : export a bunch of new functions
1588 2003-07-18 Matthias Clasen <maclas@gmx.de>
1590 * pixops/pixops.c (correct_total): Split correction into multiple
1591 pieces if no single weight is large enough to apply the unsplit
1592 correction. (#117431, problem reported by Tomas ?gren)
1594 2003-07-13 Matthias Clasen <maclas@gmx.de>
1597 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function
1598 to load an image from a file at a specified size. (#105326, Dom
1601 2003-07-11 Matthias Clasen <maclas@gmx.de>
1603 * queryloaders.c (query_module): Handle absolute filenames
1604 properly. (#117170, Jens Elkner)
1606 * gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by
1607 gdk_pixbuf_format_get_mime_types() and
1608 gdk_pixbuf_format_get_extensions() must be freed with g_strfreev().
1610 2003-07-04 Matthias Clasen <maclas@gmx.de>
1612 * gdk-pixbuf-io.c: Document ICO save parameters.
1614 * io-ico.c: Support saving of ICOs and CURs. Currently, only
1615 single-image ICOs are produced, but the code for multi-image ICOs
1616 is already in place. The saver understands the options "depth"
1617 (can be "32", "24" or "16") and "x_hot"/"y_hot" for hotspot
1618 coordinates of CURs.
1620 2003-06-28 Matthias Clasen <maclas@gmx.de>
1622 * io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs
1623 a): Use the byte size of the image as a heuristic when selecting
1624 the bitmap to load - this lets us select 32bpp bitmaps which come
1625 after a 8bpp bitmap.
1626 (OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't
1627 overwrite the alpha channel of 32bpp ICOs.
1628 (gdk_pixbuf__ico_image_load_increment): Stop decoding the header
1631 Fri Jun 27 03:56:59 2003 Soeren Sandmann <sandmann@daimi.au.dk>
1633 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
1634 it compile with C89 compilers.
1636 2003-06-23 Matthias Clasen <maclas@gmx.de>
1638 * io-gif.c (gif_get_frame_info): Remove the pointless refusal to
1639 load images with dubious disposal mode on the first frame. Just
1640 ignore it, as everybody else does.
1642 2003-06-22 Matthias Clasen <maclas@gmx.de>
1644 * gdk-pixbuf-loader.[hc] (gdk_pixbuf_loader_new_with_mime_type):
1645 New function to obtain a loader for a specific mime type.
1646 (#105324, Dom Lachowicz)
1648 * io-gif.c (gif_get_extension): Reset block_count to 0 for all
1649 application extensions, otherwise the data blocks of unknown
1650 extensions are not propertly skipped.
1652 Second half of the fix for #106962, handle frames extending beyond
1655 * io-gif.c (clip_frame): New helper function to clip a rectangle
1656 to the logical screen size of the gif.
1657 (maybe_update): New helper function to call update_func only if
1658 the rectangle is not completely off-bounds.
1659 (gif_get_lzw): Read frames extending outside the logical screen
1660 size, but be careful clip to the logical screen size
1661 when operating on the composite pixbuf and when calling update_func.
1662 (gif_init): Set the animation size to the logical screen size.
1663 (gif_get_frame_info): Don't refuse to load images with frames
1664 extending beyond the logical screen size.
1666 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be
1667 careful to clip all rectangles to the logical screen size, also
1668 handle the fact that frames may be completely off-bounds.
1670 2003-06-21 Matthias Clasen <maclas@gmx.de>
1672 * io-gif.c: Merge from 2.2: Fix update_func() arguments and accept
1673 empty frames. (#106962)
1675 2003-06-17 Matthias Clasen <maclas@gmx.de>
1677 * Makefile.am (man_MANS): Removed, man pages are now installed
1678 from docs/reference/gdk-pixbuf.
1680 2003-06-03 Matthias Clasen <maclas@gmx.de>
1682 * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
1683 data_length == -1, add an example. (#97290)
1685 2003-06-01 Matthias Clasen <maclas@gmx.de>
1687 * gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
1688 of rowstride. (#113924, Noah Levitt)
1690 2003-05-27 Matthias Clasen <maclas@gmx.de>
1692 * io-wbmp.c: Remove dubious bitfields of
1693 unspecified signedness. (#112919, Morten Welinder)gdk-p
1695 * gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
1696 of g_string_new ("") by g_string_new (NULL). (#106975, Morten
1699 2003-05-21 Matthias Clasen <maclas@gmx.de>
1701 * pixbufloader_pcx.def:
1702 * io-pcx.c: A loader for PCX files. (#113035, Josh Beam)
1705 * Makefile.am: Add PCX loader.
1707 2003-05-19 Matthias Clasen <maclas@gmx.de>
1709 Improve progressive loading from slow sources: (#107368)
1711 * io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
1712 first_loop_slowness.
1713 (gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
1714 the datasource falls behind the speed of the display.
1716 * io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and
1717 first_loop_slowness to GdkPixbufGifAnimIter.
1719 Wed May 14 18:24:50 2003 Owen Taylor <otaylor@redhat.com>
1721 * gdk-pixdata.c (gdk_pixdata_deserialize): Add a
1722 (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
1724 2003-04-24 Matthias Clasen <maclas@gmx.de>
1726 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write):
1727 (gdk_pixbuf_loader_new_with_type):
1728 (gdk_pixbuf_loader_close):
1729 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
1732 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
1733 Add sanity checks for GError handling. (#108345)
1735 Tue Apr 1 15:33:51 2003 Owen Taylor <otaylor@redhat.com>
1737 * pixops/pixops.c (make_weights): Exploit the fact that all
1738 our filters are separable to simplify the calculation of
1739 the weight tables. (Based on a patch from Brian Cameron.)
1741 * pixops/Makefile.am pixbuf-transform-math.ltx:
1742 Add a short article describing how the math in pixops.c
1745 2003-03-21 Matthias Clasen <maclas@gmx.de>
1747 * gdk-pixbuf-animation.c (gdk_pixbuf_non_anim_get_type): Add
1748 missing static. (#108614)
1750 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
1751 * io-ico.c (gdk_pixbuf__ico_image_stop_load): Add missing static
1752 qualifiers apparently causing problems on some platforms. (#108617)
1754 2003-03-11 Matthias Clasen <maclas@gmx.de>
1756 * io-ico.c (DecodeHeader): Calculate LineWidth for 16bpp from
1757 width, like for the other depths. (noticed by Marijn Ros)
1759 2003-03-08 Matthias Clasen <maclas@gmx.de>
1761 Bug #107664 continued:
1763 * io-xpm.c (find_color): Fix 0/FALSE confusion
1764 * gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Fix -1/gboolean
1767 2003-03-06 Matthias Clasen <maclas@gmx.de>
1769 * io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten
1772 2003-02-20 Matthias Clasen <maclas@gmx.de>
1774 * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite):
1775 Always clear the initial frame and "disposed" areas with
1776 transparent pixels, no matter whether the frame has transparency
1779 2003-02-18 Matthias Clasen <maclas@gmx.de>
1781 * io-tga.c (pixbuf_flip_row):
1782 (pixbuf_flip_vertically): Auxiliary functions used to implement
1783 support for arbitrary origins.
1784 (parse_data_for_row_pseudocolor):
1785 (parse_data_for_row_truecolor):
1786 (parse_data_for_row_grayscale):
1787 (parse_data_for_row):
1788 (fill_in_context): Remove the check for upper-left origin.
1789 (parse_rle_data): Support arbitrary origins. (#105912)
1791 * io-tga.c (fread_check):
1793 (get_header_from_file):
1794 (get_colormap_from_file):
1795 (get_image_pseudocolor):
1796 (swap_channels_pixbuf):
1797 (get_image_truecolor):
1798 (get_image_grayscale):
1799 (gdk_pixbuf__tga_load): Remove the non-incremental load
1800 implementation, since we have generic_image_load () now.
1802 (gdk_pixbuf__tga_stop_load): Fix a potential crash discovered by
1805 2003-02-14 Matthias Clasen <maclas@gmx.de>
1807 * io-tga.c (try_preload):
1808 (gdk_pixbuf__tga_load): Actually reject images with origin
1809 not in the upper-left corner. (#105912)
1811 2003-02-06 Matthias Clasen <maclas@gmx.de>
1813 * queryloaders.c (query_module): Better error message if
1814 module_open() fails. (#105349, Tim Mooney)
1816 Mon Jan 27 17:10:30 2003 Owen Taylor <otaylor@redhat.com>
1818 * Makefile.am (gdk-pixbuf.loaders): Rewrite to run
1819 on the .la files rather than looking for .so files.
1820 (#102142, Martin Gansser)
1822 * Makefile.am: Don't build gdk-pixbuf.loaders when
1825 2003-01-05 Tor Lillqvist <tml@iki.fi>
1827 * Makefile.am (gdk-pixbuf.loaders): Use @SOEXT@ in the find command.
1829 * gdk_pixbuf.def: Add gdk_pixbuf_loader_set_size.
1831 2003-01-03 Matthias Clasen <maclas@gmx.de>
1833 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Don't crash if
1834 gdk-pixbuf.loaders file is missing. (#102222)
1836 2002-12-08 Matthias Clasen <maclas@gmx.de>
1838 * gdk-pixbuf-animation.h:
1839 * gdk-pixbuf-io.h: Add /*< public|private >*/ markers.
1841 Sat Dec 7 10:14:05 2002 Owen Taylor <otaylor@redhat.com>
1843 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
1844 also depend gdk-pixbuf-query-loaders. (#97096, Daniel Elstner)
1846 2002-12-05 Matthias Clasen <maclas@gmx.de>
1848 * io-ico.c: Remove leftover debug output. (#100357, Owen Taylor)
1850 2002-12-04 Bastien Nocera <hadess@hadess.net>
1852 * io-tiff.c: (tiff_image_parse): use G_BIG_ENDIAN instead of
1853 WORDS_BIGENDIAN which isn't set by configure.in
1855 2002-11-29 Matthias Clasen <maclas@gmx.de>
1857 * gdk-pixbuf-animation.c:
1858 * gdk-pixbuf.c: Add deprecation docs.
1860 2002-11-28 Matthias Clasen <maclas@gmx.de>
1862 * gdk-pixbuf/gdk-pixbuf-io.c:
1863 * gdk-pixbuf/gdk-pixbuf-loader.c:
1864 * gdk-pixbuf/gdk-pixbuf.c: Document 2.2 API additions. I'm not
1865 going to list all individual functions here; if you want to see
1866 the list, grep for "Since: 2.2".
1868 Fri Nov 8 19:06:07 2002 Owen Taylor <otaylor@redhat.com>
1870 * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
1871 file depend on the loaders (#97096, Jeff Waugh)
1873 Wed Nov 6 15:19:53 2002 Owen Taylor <otaylor@redhat.com>
1875 * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
1878 2002-11-05 Matthias Clasen <maclas@gmx.de>
1880 * gdk-pixbuf-loader.c: Reindent to follow the gdk-pixbuf indentation.
1882 Tue Nov 5 14:16:17 2002 Owen Taylor <otaylor@redhat.com>
1884 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix
1885 leaked pixbuf reference (#96823, Morten Welinder)
1887 2002-10-23 Matthias Clasen <maclas@gmx.de>
1889 * io-gif.c (lzw_read_byte): Check for stack overflow throughout.
1890 (#91808, Elliot Lee)
1892 2002-10-21 Matthias Clasen <maclas@gmx.de>
1894 Support the Netscape application extension for gif animations
1897 * io-gif-animation.h:
1898 * io-gif-animation.c (gdk_pixbuf_gif_anim_iter_advance):
1899 Add loop count to GdkPixbufGifAnim and use it in the advance
1900 method of GdkPixbufGifAnimIter.
1902 * io-gif.c (gif_get_extension): Parse Netscape application
1903 extension block and set the animation loop count.
1905 2002-10-11 Matthias Clasen <maclas@gmx.de>
1907 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_format): Remove
1910 * gdk-pixbuf-io.h: Remove unused typedef
1911 GdkPixbufModuleGetSignatureFunc.
1913 2002-10-04 jacob berkman <jacob@ximian.com>
1915 * queryloaders.c (query_module): make legal C
1917 2002-10-04 Matthias Clasen <maclas@gmx.de>
1919 * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c
1920 gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c
1921 gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h
1922 gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c
1923 io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c
1924 io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c
1925 io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def
1926 pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def
1927 pixbufloader_jpeg.def pixbufloader_png.def
1928 pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def
1929 pixbufloader_tiff.def pixbufloader_wbmp.def
1930 pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c
1931 gdk-pixbuf-animation.h queryloaders.c: Support for separately
1932 installed loaders. (#77486)
1934 Thu Oct 3 18:25:57 2002 Owen Taylor <otaylor@redhat.com>
1936 * io-jpeg.c (gdk_pixbuf__jpeg_image_save):
1937 Fix memory leak. (#94399)
1939 Tue Oct 1 17:35:43 2002 Owen Taylor <otaylor@redhat.com>
1941 * gdkpixdata.c: Patch from Andy Wingo to always
1942 escape ? to avoid accidentally generating trigraphs
1943 in the output (#94631)
1945 2002-09-28 Tor Lillqvist <tml@iki.fi>
1947 * pixops/*.S: Don't use .type on Cygwin, either (#91597, Masahiro
1950 2002-09-27 Federico Mena Quintero <federico@ximian.com>
1952 * io-ico.c (gdk_pixbuf__ico_image_begin_load): Free the context if
1953 we cannot allocate the HeaderBuf.
1955 2002-09-27 Federico Mena Quintero <federico@ximian.com>
1957 * io-bmp.c (OneLine): Fix the update region notification to handle
1958 top-to-bottom and bottom-to-top BMPs correctly.
1960 2002-09-19 Matthias Clasen <maclas@gmx.de>
1962 * Revert the previous change; the symbols need to be exported
1963 to be usable from dlopened modules.
1965 2002-09-18 Matthias Clasen <maclas@gmx.de>
1967 * io-xpm.c, io-xbm.c, io-ico.c, io-ani.c, io-png.c,
1968 gdk-pixbuf.c, gdk-pixbuf-animation.c, gdk-pixbuf-loader.c,
1969 gdk-pixbuf-private.h: _-prefix gdk_pixbuf_non_anim_new and
1970 gdk_pixbuf_set_option. Adjust all callers.
1972 2002-09-14 Hans Breuer <hans@breuer.org>
1974 * pixops/Makefile.am : added makefile.msc to EXTRA_DIST
1976 2002-09-12 Matthias Clasen <maclas@gmx.de>
1978 * io-gif-animation.h:
1979 * gdk-pixbuf.h: Move GdkPixbufFrame from the public header to
1980 the gif-animation-specific private header. (#91929)
1982 2002-09-12 Federico Mena Quintero <federico@ximian.com>
1984 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Unref the pixbuf if we
1985 hit an unsupported colorspace.
1987 2002-09-06 Matthias Clasen <maclas@gmx.de>
1989 * io-ani.c, io-ani-animation.h, io-ani-animation.c,
1990 pixbufloader_ani.def, Makefile.am, gdk-pixbuf-io.c: New loader,
1991 for .ANI animations.
1993 * io-xpm.c (pixbuf_create_from_xpm):
1994 * io-xbm.c (gdk_pixbuf__xbm_image_load_real):
1995 * io-ico.c (DecodeHeader): Attach hotspot coordinates to the
1996 pixbuf as options "x_hot" and "y_hot".
1998 2002-09-04 Matthias Clasen <maclas@gmx.de>
2000 * io-tga.c (io_buffer_append):
2001 * io-ico.c (DecodeHeader):
2002 * io-bmp.c (grow_buffer): Don't leak memory if g_try_realloc fails.
2004 * gdk-pixbuf-io.c (pixbuf_check_ico): Fix loading of .CUR files.
2007 2002-08-25 Tor Lillqvist <tml@iki.fi>
2009 * Makefile.am (libgdk_pixbuf_2_0_la_DEPENDENCIES): Add
2010 gdk_pixbuf_win32res_lo. (#87101, J. Ali Harlow)
2012 2002-08-22 Matthias Clasen <maclas@gmx.de>
2015 gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): No longer
2016 static, thus _gdk_pixbuf-prefixed.
2018 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
2019 Keep this logic in sync with gdk_pixbuf_new_from_file(). (Based
2020 on a patch by Anders Carlsson)
2022 * io-png.c (gdk_pixbuf__png_image_save): Plug a memory
2023 leak. (#91422, Sven Neumann)
2025 2002-07-31 Sven Neumann <sven@gimp.org>
2027 * gdk-pixdata.c (gdk_pixdata_to_csource): free the result of
2028 gdk_pixdata_serialize() (bug #89411).
2030 Mon Jul 29 23:06:10 2002 Owen Taylor <otaylor@redhat.com>
2032 * gdk-pixbuf-scale.c: Fix some warnings by adding
2033 casts to PixopsInterpType. (#85839, David L. Cooper, II.)
2035 2002-07-16 Matthias Clasen <maclas@gmx.de>
2037 * io-ras.c (DoCompressed): Avoid unnecessary casting.
2039 2002-07-07 Matthias Clasen <maclas@gmx.de>
2041 * gdk-pixbuf-io.c (generic_image_load): New function for loading
2042 an image from a file either via module->load or incrementally.
2043 (prepared_notify): ModulePreparedNotifyFunc for generic_image_load.
2044 (gdk_pixbuf_new_from_file): Use generic_image_load.
2045 * io-bmp.c, io-ico.c, io-ras.c, io-wbmp.c: Remove trivial
2046 implementations of module->load. (#71266)
2048 * io-ico.c (DecodeHeader): Correct computation of image height.
2049 (OneLine): Correct update notification.
2051 Load-at-size functionality (#53726):
2053 * gdk-pixbuf-io.h (ModuleSizeFunc): New.
2054 (_GdkPixbufModule): Prepend a ModuleSizeFunc to the
2055 begin_load arguments. Adjust all modules.
2056 * gdk-pixbuf-loader.c (struct GdkPixbufLoaderPrivate): Add
2057 fields width, height, size_fixed, need_scale.
2058 (gdk_pixbuf_loader_class_init): Add size_prepared signal.
2059 (gdk_pixbuf_loader_set_size): New function.
2060 (gdk_pixbuf_loader_size_func): ModuleSizeFunc which gets
2061 passed to the module, emits size_prepared.
2062 (gdk_pixbuf_loader_prepare): Call gdk_pixbuf_loader_size_func
2063 if necessary, only emit area_prepared if no separate scaling
2065 (gdk_pixbuf_loader_update): Only emit area_updated if no
2066 separate scaling is required.
2067 (gdk_pixbuf_loader_load_module): Add size_func as first argument.
2068 (gdk_pixbuf_loader_close): If necessary scale the image
2069 to the desired size and emit area_prepared and area_updated.
2070 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Add
2071 size_prepared signal.
2072 (gdk_pixbuf_loader_set_size) New API.
2073 * gdk-pixbuf-marshal.list: Add VOID:INT,INT.
2074 * io-jpeg.c: User cinfo->output_width/height instead of
2075 cinfo->image_width/height throughout when adressing the pixbuf.
2076 (gdk_pixbuf__jpeg_image_load_increment): Call size_func, and
2077 find the nearest possible output size which libjpeg can produce
2078 that is still larger than the desired size.
2080 2002-07-06 Matthias Clasen <maclas@gmx.de>
2082 * io-tiff.c (tiff_set_error): Handle global_error == NULL
2084 (tiff_image_parse): Don't trust TIFFRGBAImageBegin to set
2085 the "put" routine. (Fixes #87384)
2086 (gdk_pixbuf__tiff_image_stop_load): Don't call TIFFClose too
2089 2002-07-02 Matthias Clasen <maclas@gmx.de>
2091 Miscellaneous bmp loader fixes (#85448, #86286, #86287):
2093 * io-bmp.c (grow_buffer): New function to avoid crashes
2094 on unchecked reallocs.
2095 (DecodeHeader, DecodeColormap, decode_bitmasks,
2096 DoCompressed): Use grow_buffer instead of g_realloc
2097 throughout. Change signatures where necessary to pass the
2099 (OneLine16): Fix loading of 16bpp BI_RGB bmps.
2100 (DoCompressed): Rewritten to properly support BI_RLE4 and
2103 Support for compressed ras images (#84994):
2105 * io-ras.c (RAS2State): Error on unsupported ras variations.
2106 (OneLine8): Fix colormap indexing.
2107 (OneLine): Call updated_func with proper region.
2108 (DoCompressed): New function, handles compressed ras data.
2109 (gdk_pixbuf__ras_image_load_increment): Handle compressed ras
2112 Better colorspace support for the jpeg loader (#61211):
2114 * io-jpeg.c (convert_cmyk_to_rgb): New function.
2115 (gdk_pixbuf__jpeg_image_load,
2116 gdk_pixbuf__jpeg_image_load_increment): Allocate a pixbuf with
2117 alpha for 4-channel jpegs and call convert_cmyk_to_rgb for these.
2119 All of this needs to be merged to GNOME 1.4 gdk-pixbuf.
2121 2002-06-28 Sven Neumann <sven@gimp.org>
2123 * gdk-pixbuf-csource.c (print_blurb): converted a Tab to spaces.
2125 Thu Jun 13 18:11:11 2002 Owen Taylor <otaylor@redhat.com>
2127 * pixops/pixops.c: Fix problem where when no alpha was
2128 involved, we scaled rather than composited, but then
2129 went ahead and composited anyways. (#76958, Patch
2130 from Matthias Clasen). Needs to be merged to GNOME
2133 2002-06-13 Matthias Clasen <maclas@gmx.de>
2135 * io-jpeg.c: Use libjpeg in buffered-image mode in order to
2136 incrementally display incrementally loaded progressive jpegs.
2138 2002-06-07 Federico Mena Quintero <federico@ximian.com>
2140 * io-bmp.c (lsb_32):
2141 (lsb_16): New functions to fetch 32 or 16-bit little-endian values
2142 starting at a specific memory location. We do this instead of
2143 GINT32_FROM_LE() as the latter is simply dereferences a cast,
2144 which doesn't work on platforms with alignment requirements.
2147 2002-06-01 Matthias Clasen <maclas@gmx.de>
2149 * gdk-pixbuf-io.c (pixbuf_check_xbm): Accept xbms starting
2150 with a C comment - those seem to be not uncommon, e.g. the Gimp
2151 produces them. (#82706)
2153 * io-xbm.c (read_bitmap_file_data): Don't leak memory on certain
2155 (gdk_pixbuf__xbm_image_load_real): Don't leak memory on valid inputs.
2157 2002-05-22 Tor Lillqvist <tml@iki.fi>
2159 * gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
2160 GTK_VERSION) in the path to the loaders on Win32, too.
2162 * Makefile.am: Pass GTK_BINARY_VERSION.
2164 2002-05-22 Federico Mena Quintero <federico@ximian.com>
2166 * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
2167 account!!! Fixes #82515.
2169 [This bug is not present in the GNOME 1.4 branch as its XPM loader
2170 does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
2171 no row padding and then uses gdk_pixbuf_new_from_data() on it.]
2173 [IMPORTANT: The comment above is to make my life easier when
2174 merging stuff across branches. If you make changes to gdk-pixbuf
2175 in either branch, please include a comment in the ChangeLog that
2176 indicates whether this should be merged into the other branch.
2179 2002-05-18 Matthias Clasen <maclas@gmx.de>
2181 * io-tiff.c (tiff_image_parse): fix packing order on bigendian
2184 Thu May 16 15:17:30 2002 Owen Taylor <otaylor@redhat.com>
2186 * pixops/pixops.c: Patch from Matthias Clasen to fix some typos
2189 Thu May 16 15:02:46 2002 Owen Taylor <otaylor@redhat.com>
2191 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix 64-bit warning.
2194 2002-05-07 Michael Natterer <mitch@gimp.org>
2196 * gdk-pixbuf/Makefile.am: build the static pixbuf loaders
2197 conditionally like the dynamic ones so --without-lib<foo> is
2198 honored when building with --disable-modules. (#66867)
2200 Sun May 5 02:27:01 2002 Soeren Sandmann <sandmann@daimi.au.dk>
2202 * Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
2204 * test-loaders.c, test-images.h: remove
2206 2002-04-24 Matthias Clasen <maclas@gmx.de>
2208 * gdk-pixbuf-io.c (gdk_pixbuf_save): Remove the ISO8859-1
2209 restriction from the description of png tEXt parameters.
2211 * io-png.c (png_text_to_pixbuf_option):
2212 (gdk_pixbuf__png_image_save): If libpng supports it,
2213 store and retrieve non-ISO8859-1 text as UTF-8. (#76172)
2215 2002-04-11 Matthias Clasen <maclas@gmx.de>
2217 More fixes for #77807:
2219 * io-tga.c (get_contiguous_pixbuf): Helper function to create
2220 a pixbuf with a contiguous pixel array while being careful about
2223 * io-tga.c (fill_in_context, get_image_pseudocolor,
2224 get_image_truecolor, get_image_grayscale): Use
2225 get_contiguous_pixbuf instead of manually allocating image
2228 * io-xpm.c (pixbuf_create_from_xpm):
2229 * io-pnm.c (gdk_pixbuf__pnm_image_load):
2230 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
2231 instead of manually allocating image storage.
2233 2002-04-09 Matthias Clasen <maclas@gmx.de>
2235 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use
2236 priv->image_module->module_name instead of image_type which may
2239 2002-04-06 Matthias Clasen <maclas@gmx.de>
2241 * io-png.c (gdk_pixbuf__png_image_load): Restructured to use
2242 gdk_pixbuf_new instead of manually allocating image storage. This
2243 gives us a good rowstride and overflow checks. (#77807)
2245 2002-04-05 Matthias Clasen <maclas@gmx.de>
2247 * io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
2248 the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
2249 put functions instead of TIFFRGBAImage. And check image dimensions
2252 2002-04-03 Matthias Clasen <maclas@gmx.de>
2254 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
2256 2002-03-29 Matthias Clasen <maclas@gmx.de>
2258 * io-png.c (png_simple_error_callback): libpng error handlers must
2259 not return to their callers, thus longjmp out. This prevents
2260 annoying stderr output from the default error handler.
2262 2002-03-27 Matthias Clasen <maclas@gmx.de>
2264 * io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.
2266 * io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
2267 end_info. Also call png_read_end to check proper ending of the png
2268 file and catch text chunks after the image data.
2270 2002-03-27 Matthias Clasen <maclas@gmx.de>
2272 * io-png.c (gdk_pixbuf__png_image_load,
2273 gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
2274 instead of system malloc.
2276 2002-03-26 Matthias Clasen <maclas@gmx.de>
2278 * io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.
2280 * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
2281 context->buf on error.
2283 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
2284 stop_load even for short images to prevent memleaks.
2286 2002-03-25 Matthias Clasen <maclas@gmx.de>
2288 * io-png.c (setup_png_transformations): Changed signature to
2289 return success and set a GError parameter, adjusted all callers.
2290 Also work around a possible FPE in libpng and always check that
2291 the new info is sane.
2293 2002-03-23 Matthias Clasen <maclas@gmx.de>
2295 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
2296 context->updated_func is NULL during a nonincremental load.
2297 (gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
2299 2002-03-18 Matthias Clasen <maclas@gmx.de>
2301 * io-tga.c: Fix assumptions on rowstride by manually allocating a
2302 contiguous pixel buffer. Catch buffer overruns in RLE-modi.
2303 Support grayscale + alpha (which can be written, but not read (!)
2306 2002-03-15 Matthias Clasen <maclas@gmx.de>
2308 * io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
2310 2002-03-13 Matthias Clasen <maclas@gmx.de>
2312 * test-images.h: Add valid_ras_test and invalid_bmp_1.
2314 * test-loaders.c (main): Add random tests for ras and pnm and an
2315 invalid bmp which was a crasher until my 2002-03-12 commit.
2317 * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
2320 * io-ras.c: Handle some errors.
2322 2002-03-12 Sven Neumann <sven@gimp.org>
2324 * gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
2325 calling memcpy(). Simpler and potentially faster. (#70332)
2327 2002-03-12 Matthias Clasen <maclas@gmx.de>
2329 * io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
2330 which could actually be reached by a proper error status return.
2332 2002-03-05 Matthias Clasen <maclas@gmx.de>
2334 * test-loaders.c, test-images.h: More random tests.
2336 * io-bmp.c (DecodeHeader): Fail gracefully on OOM here.
2338 Tue Mar 5 10:39:03 2002 Owen Taylor <otaylor@redhat.com>
2340 * Makefile.am (loaderdir): Put the modules into the
2341 GTK_BINARY_VERSION directory for consistency with
2342 immodules and theme engines.
2344 Sat Mar 2 22:11:10 2002 Owen Taylor <otaylor@redhat.com>
2346 * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
2347 can't load the module using the g_module_build_path()
2348 filename, try loading it as a .la file.
2350 * test-loaders.c: Look for modules in current directory
2351 rather than .libs, so we find the right .la files.
2353 * test-loaders.c: Back out some accidental commits.
2355 Sat Mar 2 21:28:03 2002 Owen Taylor <otaylor@redhat.com>
2357 * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
2360 2002-03-03 Tor Lillqvist <tml@iki.fi>
2362 * gtk-pixbuf.rc.in: Remove.
2364 * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
2367 * makefile.msc: Corresponding changes.
2369 * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
2371 2002-02-28 Matthias Clasen <maclas@gmx.de>
2373 * pixops/pixops.c (tile_make_weights): Move the call to
2374 correct_total() to the right spot. (#72732)
2376 Wed Feb 27 18:33:04 2002 Owen Taylor <otaylor@redhat.com>
2378 * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
2379 () to group around string assigned to char[]. (#72767,
2382 2002-02-21 Havoc Pennington <hp@pobox.com>
2384 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
2385 C++-commented debug spew, reported by David L. Cooper
2387 2002-02-15 Matthias Clasen <maclas@gmx.de>
2389 * pixops/pixops.c (correct_total): New function to make sure
2390 that the weights sum up to the correct total without introducing
2392 (tile_make_weights, bilinear_make_fast_weights,
2393 bilinear_make_weights): Use correct_total.
2395 2002-02-10 Matthias Clasen <maclas@gmx.de>
2397 * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
2398 (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory().
2400 * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
2402 * test-images.h (ico_test_2), test-loaders.c (main): Test the
2405 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write
2406 beyond the end of buffer if width % 8 != 0.
2408 * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
2409 the supported types, otherwise parse_data_for_row () will not make
2410 any progress, leading to an infinite loop.
2412 Mon Feb 11 14:31:53 2002 Owen Taylor <otaylor@redhat.com>
2414 * pixops/pixops.c (bilinear_make_weights): Fix handing of
2417 2002-02-10 Matthias Clasen <maclas@gmx.de>
2419 * test-loaders.c (main): Enable some tests which should work
2422 * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
2423 invalid image dimensions and insufficient memory.
2425 * io-tga.c (try_preload): Detect invalid image dimensions.
2426 (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
2428 * io-ico.c (DecodeHeader): Detect some invalid headers and
2431 Fri Feb 8 23:11:15 2002 Owen Taylor <otaylor@redhat.com>
2433 * pixops/pixops.c: Force all weight arrays to sum exactly
2434 to 65535. (Fixes #70971, reported by Federico Mena Quintero)
2436 * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
2439 2002-02-08 Federico Mena Quintero <federico@ximian.com>
2441 * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
2443 2002-02-08 Darin Adler <darin@bentspoon.com>
2445 * io-xbm.c: (next_int): Wean this from <ctype.h>.
2447 2002-02-01 Matthias Clasen <matthiasc@poet.de>
2449 * Makefile.am: Build the tga loader as a static library. (#70157)
2451 * io-ico.c: Merge 16- and 32-bit ico support from the stable
2454 * io-gif.c: Recomposite all images if the animation size changes
2455 while loading. (#70055)
2457 * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs.
2460 Sat Jan 19 20:49:20 2002 Manish Singh <yosh@gimp.org>
2462 * io-jpeg.c, io-png.c: Made sure all the error cases involving
2463 jpeg or png load/saves clean themselves up properly. Marked some
2464 variables needed for cleanup volatile so they aren't clobbered by
2467 Fri Jan 11 18:05:07 2002 Owen Taylor <otaylor@redhat.com>
2469 * pixops/pixops.c: Fix integer overflow for the values
2470 passed to the pixel functions. (#55148, fix from Michael Hore)
2472 Fri Jan 11 17:53:58 2002 Owen Taylor <otaylor@redhat.com>
2474 * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
2477 * pixops/pixops.c (pixops_process): Comment the computation
2478 of run_end_index and fix some edge cases.
2480 * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
2481 composite_line_color_22_4a4_mmx.S}: Handle the case where
2482 dest <= dest_end properly. (#52001, fix from Michael Hore)
2484 Thu Jan 10 16:48:30 2002 Owen Taylor <otaylor@redhat.com>
2486 * pixops/pixops.c: Replace some hardcoded values with the
2487 SUBSAMPLE constant used elsewhere. (#51033)
2489 Wed Jan 9 11:29:44 2002 Owen Taylor <otaylor@redhat.com>
2491 * Makefile.am (s-enum-types-h): Include glib-object.h,
2492 Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
2495 * *.h: G_BEGIN_DECLS cleanups.
2497 Tue Jan 8 10:58:04 2002 Owen Taylor <otaylor@redhat.com>
2499 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate):
2500 - Massive cleanup, make actually legible.
2501 - Fix some clamp-to-range bugs found by Jim Cape (#68231).
2502 - Add a g_return_if_fail() if src and dest alpha don't match.
2503 - Allow for src_rowstride != dest_rowstride.
2505 2002-01-04 Hans Breuer <hans@breuer.org>
2507 * gdk_pixbuf.def : don't export functions prefixed
2510 * makefile.msc : use -FImsvc_recommende_pragmas.h
2512 Thu Jan 3 19:31:58 2002 Owen Taylor <otaylor@redhat.com>
2514 * pixops/pixops.c (scale_line_22_33): Fix and uncomment
2517 * pixops/pixops.c (pixops_composite_nearest): Remove a
2520 * pixops/pixops.c (pixops_composite): Add some docs
2521 about the parameters.
2523 * pixops/README: Add notes about the correct algorithms
2524 for alpha compositing and how to implement them quickly.
2526 2001-12-29 Tor Lillqvist <tml@iki.fi>
2528 * Makefile.am (EXTRA_DIST): Add makefile.msc.
2530 Sat Dec 22 15:31:20 2001 Owen Taylor <otaylor@redhat.com>
2532 * gdk-pixdata.h: Fix trailing "," in enumeration.
2534 2001-12-17 Matthias Clasen <matthiasc@poet.de>
2536 * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c,
2537 gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c,
2538 gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
2540 2001-12-16 Havoc Pennington <hp@pobox.com>
2542 * gdk-pixbuf-scale.c: docs enhancements
2544 2001-12-14 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2546 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
2548 2001-12-13 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2550 * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
2551 io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
2552 assorted G_OBJECT casts where unnecessary.
2554 * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
2555 instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
2558 * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
2559 io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
2560 io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
2563 * Makefile.am, pixops/Makefile.am: Compile everything with
2564 -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
2566 * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
2568 * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
2570 2001-12-12 Matthias Clasen <matthiasc@poet.de>
2572 * gdk-pixbuf-io.c: Markup fixes.
2574 2001-12-12 Matthias Clasen <matthiasc@poet.de>
2576 * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
2578 * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
2580 2001-12-11 Michael Natterer <mitch@gimp.org>
2582 * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
2583 conversion stuff; don't copy RGB pixbufs' lines around before
2586 2001-12-05 Matthias Clasen <matthiasc@poet.de>
2588 * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
2589 gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
2592 Tue Dec 4 11:45:45 2001 Owen Taylor <otaylor@redhat.com>
2594 * io-xpm.c (pixbuf_create_from_xpm): Fill in color
2595 fields to black for transparent colors since we'll
2596 later initialize pixels from them. (Fixes purify
2597 errors, #66093, HideToshi Tajima)
2599 2001-11-30 Tor Lillqvist <tml@iki.fi>
2601 * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
2603 Fri Nov 30 15:55:34 2001 Owen Taylor <otaylor@redhat.com>
2605 * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
2606 alignment problem in deserialization, (#65785,
2607 reported by Hidetoshi Tajima)
2609 2001-11-28 Manish Singh <yosh@gimp.org>
2611 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
2612 in missing error parameters to DecodeHeader and DecodeColormap.
2614 2001-11-21 Federico Mena Quintero <federico@ximian.com>
2616 Fix Ximian bug #12125; merged from gdk-pixbuf stable.
2618 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
2619 a simple state machine instead of a scary if/else chain.
2620 (DecodeHeader): Set the reading state.
2621 (DecodeColormap): Set the reading state.
2622 (decode_bitmasks): New function, decodes the bitmasks for
2623 BI_BITFIELDS coding.
2624 (OneLine32): Handle BI_BITFIELDS coding.
2625 (OneLine16): Likewise.
2627 2001-11-18 Hans Breuer <hans@breuer.org>
2629 * io-xpm.c : use g_strcasecmp(), some poor platforms
2630 don't have strcasecmp()
2632 * makefile.msc : do INCLUDE_png etc. definition here to avoid
2633 my temporary 'gdk-pixbuf-io-include.h' hack
2635 Sun Nov 18 07:54:22 2001 Owen Taylor <otaylor@redhat.com>
2637 * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
2639 2001-11-03 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
2641 * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
2643 2001-10-29 Tor Lillqvist <tml@iki.fi>
2645 * Makefile.am: Use -no-undefined on Win32. Make
2646 libgdk_pixbuf_1_3_la_OBJECTS depend on
2647 gdk-pixbuf-marshal.c. Install import libraries.
2649 * gdk_pixbuf.def: Update.
2651 * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
2652 the actual DLL name of libgdk_pixbuf.
2653 (get_libdir): Use it instead of guessing.
2655 * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
2656 g_file_open_tmp() insread of mkstemp().
2658 2001-10-18 Matthias Clasen <matthiasc@poet.de>
2660 * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
2661 context when it may be NULL. (#62344)
2663 2001-10-16 Matthias Clasen <matthiasc@poet.de>
2665 * gdk-pixdata.c, gdk-pixdata.h: Documentation.
2667 * gdk-pixbuf-csource.1: Spelling fixes.
2669 Wed Oct 10 11:52:17 2001 Owen Taylor <otaylor@redhat.com>
2671 * gdk-pixdata.c gdk-pixbuf.h: Get rid of
2672 GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
2673 Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
2674 existing UKNOWN_TYPE error. (#58308)
2676 * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
2677 back to gdk_pixbuf_new_from_inline(). Rework docs to try
2678 and be helpful for the common case. (#58308)
2680 2001-10-05 Sven Neumann <sven@gimp.org>
2682 * gdk-pixbuf/gdk-pixbuf-io.c
2683 * gdk-pixbuf/gdk-pixbuf-private.h
2684 * gdk-pixbuf/gdk-pixbuf.c
2685 * gdk-pixbuf/gdk-pixbuf.h
2686 * gdk-pixbuf/io-jpeg.c
2687 * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
2688 GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
2689 new public API gdk_pixbuf_get_option() to retrieve key/value pairs
2690 set by an image loader. Added support for saving and reading PNG tEXt
2691 chunks in PNG images.
2693 Tue Oct 2 11:29:50 2001 Owen Taylor <otaylor@redhat.com>
2695 * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
2696 use a macro to make code a bit more readable.
2698 2001-10-02 Sven Neumann <sven@gimp.org>
2700 * gdk-pixdata.c: g_string_printfa => g_string_append_printf.
2702 Wed Sep 26 18:08:19 2001 Owen Taylor <otaylor@redhat.com>
2704 * Makefile.am (s-enum-types-h): Fix a typo in the include
2705 guards. (#61254, Skip Montaro)
2707 2001-09-21 Matthias Clasen <matthiasc@poet.de>
2709 * io-xpm.c (xpm_extract_color): Rewritten to handle
2710 xpm colormap entries more thoroughly. (#59939)
2712 2001-09-21 Hans Breuer <hans@breuer.org>
2714 * gdk-pixbuf.def : updated externals
2716 * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
2718 Thu Sep 20 17:22:48 2001 Owen Taylor <otaylor@redhat.com>
2720 * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
2721 works in some on-demand way, so the fseek
2722 gdk_pixbuf_new_from_file() doesn't work here since we are using
2723 the raw file descriptor. So, we call lseek() on the fileno(f)
2724 before using it. (#60840).
2726 2001-09-20 James Henstridge <james@daa.com.au>
2728 * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
2729 so that flags types are registered as flags rather than enums (not
2730 that there are any flags here at the moment).
2732 Wed Sep 19 00:28:24 2001 Owen Taylor <otaylor@redhat.com>
2734 * Makefile.am (gdk_pixbuf_headers): Don't include
2735 gkd-pixbuf-features.h here since is in builddir
2736 and confuses autogen rules.
2738 * Makefile.am: Don't += variables before they have values,
2739 automake-1.5 doesn't like it.
2741 * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
2743 * Makefile.am: The whitespace strikes back.
2745 2001-09-17 Matt Wilson <msw@redhat.com>
2747 * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
2748 LDFLAGS definition, use the -avoid-version one.
2749 (libpixbufloader_tga_la_LDFLAGS): likewise
2751 Mon Sep 17 11:49:02 2001 Owen Taylor <otaylor@redhat.com>
2753 * pixops/*: Mirror GdkInterpType to PixopsInterpType
2754 to avoid including gdk-pixbuf headers.
2756 2001-09-16 James Henstridge <james@daa.com.au>
2758 * .cvsignore: add generated files to ignore list.
2760 * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
2762 * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
2764 Fri Sep 14 23:22:12 2001 Matthias Clasen <matthiasc@poet.de>
2766 * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
2767 not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
2769 Fri Sep 14 22:53:45 2001 Matthias Clasen <matthiasc@poet.de>
2771 * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
2772 out-of-memory situation better.
2774 * io-pnm.c: Robustness fixes for pnm loader
2776 * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
2778 * io-xpm.c (parse_color): detect very long color strings
2780 All of the above from Matthias Clasen <matthiasc@poet.de>,
2781 the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
2783 * test-images.h: add tests:
2784 - four valid ppm's, eight invalid (matthiasc@poet.de)
2785 - one invalid xpm (matthiasc@poet.de)
2786 - one valid tga, one invalid (sandmann@daimi.au.dk)
2787 - one invalid tiff (sandmann@daimi.au.dk
2789 * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
2791 * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
2792 fail - detect it when it happens
2794 * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
2797 * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
2800 Fri Sep 14 00:30:48 2001 Tim Janik <timj@gtk.org>
2802 * Makefile.am: don't used BUILT_SOURCES to build marshal
2803 files, as in conjunction with stamp files, this can
2804 lead to endless rebuilding loops.
2806 Tue Sep 4 00:22:07 2001 Owen Taylor <otaylor@redhat.com>
2808 * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
2810 Tue Sep 4 03:09:52 2001 Tim Janik <timj@gtk.org>
2812 * gdk-pixbuf-csource.1: new file, manual page for
2813 the publically installed gdk-pixbuf-csource utility.
2815 Thu Aug 30 08:30:03 2001 Matthias Clasen <matthiasc@poet.de>
2817 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
2818 errors from gdk_pixbuf_loader_load_module.
2820 Thu Aug 30 08:27:37 2001 Matthias Clasen <matthiasc@poet.de>
2822 * io-png.c (png_row_callback): Check that row_num is valid.
2824 Tue Aug 28 21:05:26 2001 Matthias Clasen <matthiasc@poet.de>
2826 * io-bmp.c (OneLine): Emit area_updated signal with proper
2827 area information. (#52002)
2829 Tue Aug 28 20:03:43 2001 Matthias Clasen <matthiasc@poet.de>
2831 * test-loaders.c (test_loader): Catch errors at close time.
2832 * test-loaders.c (main): Remove C++ comments.
2834 2001-08-21 Matthias Clasen <matthiasc@poet.de>
2836 * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def,
2837 io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
2839 2001-08-20 Matthias Clasen <matthiasc@poet.de>
2841 * test-images.h, test-loaders.c: Add ico and wbmp tests.
2842 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
2843 error if buffer allocation fails.
2844 * io-ico.c: Make .ICO loader more robust.
2845 All of these are due to sandmann@daimi.au.dk (#50187)
2847 2001-08-19 Sven Neumann <sven@gimp.org>
2849 * pixops/pixops.c: applied some simple but effective optimizations
2850 to pixops_composite_nearest() and pixops_composite_color_nearest().
2852 2001-08-07 Sven Neumann <sven@gimp.org>
2854 * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
2855 function, so that's what I did.
2857 2001-08-06 Kjartan Maraas <kmaraas@gnome.org>
2859 * gdk-pixdata.c: Fix a typo.
2861 2001-07-30 Hans Breuer <hans@breuer.org>
2863 * pixops/makefile.msc : new file
2864 * makefile.msc : use it to complete the build
2866 2001-07-20 Hans Breuer <hans@breuer.org>
2868 * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
2869 pointer increment out of the macro, because at least one
2870 compiler (msvc 5.0) gets confused otherwise (applies the
2873 * gdk_pixbuf.def : updated exports
2875 * makefile.msc : reflect gdk-pixbuf-csource changes
2877 2001-07-17 Darin Adler <darin@bentspoon.com>
2879 * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
2880 * io-png.c: (setup_png_transformations): Add ifdef so we compile
2881 without warnings with G_DISABLE_CHECKS on.
2882 * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
2884 * io-wbmp.c: (getin), (get_mbi): Add a missing const.
2885 * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
2886 unused locals and add an initial value to quiet the compiler's
2887 unintialized variable warning.
2888 * pixops/pixops.c: Put an ifdef around some dead code.
2890 Thu Jul 5 10:17:15 2001 Owen Taylor <otaylor@redhat.com>
2892 * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
2893 over to the new include flags AC_SUBST(). (Problem
2894 pointed out by Mikael Hermansson.)
2896 2001-06-29 Havoc Pennington <hp@redhat.com>
2898 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
2901 Thu Jun 28 21:54:19 2001 Owen Taylor <otaylor@redhat.com>
2903 * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
2904 gdk-pixbuf-csource.c: Fix args to g_type_init ().
2906 2001-06-28 Havoc Pennington <hp@pobox.com>
2908 * gdk-pixdata.c: <string.h>
2910 * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
2911 also leaking memory here from g_strdup_printf?)
2913 Tue Jun 26 09:48:02 2001 Tim Janik <timj@gtk.org>
2915 * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
2917 * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
2918 instead from gdk_pixbuf_new_from_inline().
2920 * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
2921 installed API for applications that need to serialize/deserialize
2922 on their own (gimp, BEAST).
2924 * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
2925 program that can dump images in CSource format and Pixbuf
2926 stream format. supports RLE encoding, MACRO formatting etc...
2929 Mon Jun 25 00:28:11 2001 Owen Taylor <otaylor@redhat.com>
2931 * Makefile.am: Actually update timestamps, so rules don't
2934 2001-06-11 Havoc Pennington <hp@redhat.com>
2936 * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
2937 already includes top_builddir
2939 2001-06-08 Havoc Pennington <hp@redhat.com>
2941 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
2942 bogus g_return_if_fail
2944 * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
2945 likely timeout resolution, set it to an arbitrarily-chosen short
2947 Fixes bug #55953 from warmenhoven@yahoo.com
2949 2001-06-07 Havoc Pennington <hp@redhat.com>
2951 * Makefile.am: use Owen's new way of doing stampfiles/generated
2954 2001-06-07 Havoc Pennington <hp@redhat.com>
2956 * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
2958 2001-06-05 Havoc Pennington <hp@redhat.com>
2960 * test-loaders.c (main): use putenv not setenv, reported by
2963 2001-05-08 Havoc Pennington <hp@redhat.com>
2965 * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup,
2966 and fix behavior to still subst color if the original image
2969 2001-06-04 Havoc Pennington <hp@redhat.com>
2971 * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
2974 2001-06-01 Havoc Pennington <hp@redhat.com>
2976 Apply patch from sandmann@daimi.au.dk, with some tweaks.
2977 Makes things a bit more robust, and adds test-loaders.c
2978 which is good for finding further robustness bugs to fix.
2980 * io-tiff.c: Try to work around libtiff suckiness a bit;
2981 put a giant thread lock on the whole loader,
2982 paranoically check both whether error handlers were called and
2983 also whether functions return false. Handle case where width or
2984 height is 0. Various cleanups.
2986 * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
2988 (png_error_callback): apparently libpng expects you to longjmp out
2991 * io-gif.c (struct _GifContext): remove unused "pixbuf" field
2992 (lzw_read_byte): change "Mail jrb if this fails" g_warning
2994 (gif_get_lzw): check for out-of-memory
2995 (gif_prepare_lzw): catch/report an error
2996 (new_context): use try_malloc, since GifContext is nearly 70K
2997 (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
2998 so we don't crash later.
3000 * Makefile.am: Add test-loaders
3002 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
3005 2001-05-29 Darin Adler <darin@eazel.com>
3007 * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
3009 Mon May 28 14:21:35 2001 Jonathan Blandford <jrb@redhat.com>
3011 * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
3012 fix up bmp decoder to:
3013 - adds 16 bpp bmp support (bug #53884)
3014 - adds OS/2 1.x format bmp support (bug #54964)
3015 - adds 4 bpp RLE compressed bmp support
3016 - adds 1 bpp colormap support
3017 - fixes negative height (top down) bmp support
3019 2001-05-25 Hans Breuer <hans@breuer.org>
3021 * gdk_pixbuf.def : reflect Havoc's recent api change
3023 Sun May 20 12:53:49 2001 Owen Taylor <otaylor@redhat.com>
3025 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
3026 excess $(GLIB_LIBS).
3028 Sun May 13 11:59:11 2001 Owen Taylor <otaylor@redhat.com>
3030 * Makefile.am: Make modules depend on libgdk_pixbuf.la.
3032 2001-05-04 Havoc Pennington <hp@redhat.com>
3034 * pixops/pixops.c (pixops_process): merge fix from stable: Patch
3035 from hoshem@mel.comcen.com.au to fix nonzero X offsets. Fixes
3038 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
3039 from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
3040 confusion of using "src" instead of "p".
3041 (pixops_composite_color_nearest): Use a more accurate (and
3042 correct, to begin with) compositing method. This cures checks
3043 showing through on images with no alpha.
3045 * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
3048 * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
3050 * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
3051 area_updated signal to use signed ints. Removed animation-related
3054 * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
3057 * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
3058 all the pesky details. Remove old frame-based API. Make
3059 GdkPixbufAnimation an abstract base class, derived by the loaders.
3061 Sun Apr 22 15:51:32 2001 Owen Taylor <otaylor@redhat.com>
3063 * Makefile.am (LDADDS): Add $(MATH_LIB).
3065 2001-04-18 Havoc Pennington <hp@redhat.com>
3067 * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
3070 Wed Apr 4 01:41:02 2001 Tim Janik <timj@gtk.org>
3072 * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
3073 so we don't try to get <gtk/gtkobject.h> from standard search
3076 * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
3077 add gdk-pixbuf-marshal.list to EXTRA_DIST.
3078 take gdk-pixbuf-marshal.h out of _la sources.
3080 2001-03-19 Tor Lillqvist <tml@iki.fi>
3082 * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
3084 * gdk_pixbuf.def: Update.
3086 * pixbufloader_*.def: Just export the fill_vtable functions now.
3088 2001-03-18 Mike Kestner <mkestner@ameritech.net>
3090 * make-inline-pixbuf.c (main): Added logic to remove output when
3093 2001-03-14 Havoc Pennington <hp@redhat.com>
3095 * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
3096 from gdk-pixbuf-marshal.h, fixes parallel makes.
3098 Thu Mar 1 04:01:57 2001 Tim Janik <timj@gtk.org>
3100 * test-gdk-pixbuf.c: fixed includes.
3102 2001-02-18 Havoc Pennington <hp@pobox.com>
3104 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
3105 (gdk_pixbuf_get_named_module): prepend underscore
3106 (gdk_pixbuf_get_module): prepend underscore
3108 2001-02-19 Havoc Pennington <hp@redhat.com>
3110 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
3112 2001-02-17 Havoc Pennington <hp@pobox.com>
3114 * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
3116 2001-02-07 Alexander Larsson <alexl@redhat.com>
3118 * io-xpm.c (free_buffer):
3119 Use g_free, since the buffer is allocated with g_try_alloc().
3121 2001-02-06 Christophe Merlet <redfox@eikonex.org>
3123 * gdk-pixbuf-data.c: Fixes a minor typo.
3125 Sun Feb 4 07:59:57 2001 Tim Janik <timj@gtk.org>
3127 * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
3128 we finally need the gobject->gruntime rename.
3130 * *.c: scratched calls to g_type_init(), there's simply no point in
3131 doing that, use gtk_init().
3133 2001-02-01 Havoc Pennington <hp@pobox.com>
3135 * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
3136 in struct to "priv" for C++
3138 2001-01-31 Havoc Pennington <hp@pobox.com>
3140 * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
3142 2001-01-26 Havoc Pennington <hp@redhat.com>
3144 * gdk-pixbuf-io.c (mname): fix included modules case.
3146 2001-01-22 Havoc Pennington <hp@redhat.com>
3148 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors
3149 from gdk_pixbuf_load_module
3151 2001-01-22 Havoc Pennington <hp@redhat.com>
3153 * Makefile.am: Add built marshaller files to support
3154 GdkPixbufLoader signals
3156 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
3157 GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
3158 module location, rather than acting as a fallback, because we are
3159 using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
3161 * gdk-pixbuf.h: include gdk-pixbuf-loader.h
3163 * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
3164 from gtk, and add error to close(), because stop_load may do
3165 parsing of the image.
3167 * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
3169 * io-*.c: make individual operations static, and add fill_vtable
3170 functions which are exported. Fix the collection of type warnings
3171 that surfaced, including a number of functions that didn't
3172 properly take a GError and some that weren't
3173 const-correct. Involved adding error handling for a few loaders.
3175 * gdk-pixbuf-io.h: Add error reporting to stop_load function
3177 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
3178 a function that fills in the GdkPixbufModule vtable, instead of
3179 looking up all the image functions individually; this means we
3180 can get type safety within modules for the loader functions.
3181 Also it means you don't have to keep the statically compiled and
3182 GModule versions in sync.
3184 * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
3186 * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
3188 * gdk-pixbuf.h: nuke gdk_pixbuf_init()
3190 * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
3193 * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
3195 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
3198 2001-01-20 John Harper <jsh@eazel.com>
3200 * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
3201 collision between Xlib's RdBitF.c and io-tiff.c
3203 * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
3206 [ merged from stable gdk-pixbuf module. Untested, but it
3207 compiles, and works fine in the stable module ]
3209 2001-01-18 Tor Lillqvist <tml@iki.fi>
3211 * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
3212 g_win32_get_package_installation_subdirectory() function. No need
3213 to include windows.h.
3214 (gtk_win32_get_installation_directory): Remove this then.
3216 2001-01-01 Havoc Pennington <hp@redhat.com>
3218 * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
3219 @LIBTOOL_EXPORT_OPTIONS@
3221 2000-12-30 Tor Lillqvist <tml@iki.fi>
3223 * gdk_pixbuf.def: Update.
3225 2000-12-16 Havoc Pennington <hp@pobox.com>
3227 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
3228 the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
3229 (gdk_pixbuf_frame_copy): new function
3230 (gdk_pixbuf_frame_free): new function
3231 (gdk_pixbuf_frame_get_type): new function
3232 (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
3234 Tue Nov 14 11:51:26 2000 Owen Taylor <otaylor@redhat.com>
3236 * Makefile.am: Add -avoid-version for all modules.
3238 2000-11-13 Havoc Pennington <hp@redhat.com>
3240 * io-png.c (png_simple_error_callback): fix error message to not
3241 say "save" since it's used for loading
3243 2000-11-11 Hans Breuer <Hans@Breuer.Org>
3245 * gdk-pixbuf-io.c : Fix all function prototype macros for self
3246 contained image handlers (!USE_G_MODULE). Files to save should
3247 be opened in binary mode, fopen(s, "wb").
3249 * io-xpm.c : added HAVE_UNISTD_H condition
3251 2000-11-11 Tor Lillqvist <tml@iki.fi>
3253 * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
3255 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
3256 g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
3257 mktemp() and open()).
3259 * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
3261 2000-11-01 Havoc Pennington <hp@pobox.com>
3263 * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create
3264 a pixbuf pointing to a subregion of another pixbuf.
3266 2000-10-16 Tor Lillqvist <tml@iki.fi>
3268 * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
3270 2000-10-16 Havoc Pennington <hp@redhat.com>
3272 * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
3273 (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module):
3274 add error reporting here also
3276 * make-inline-pixbuf.c (main): use GError
3278 * io-xpm.c: include unistd.h
3280 * gdk-pixbuf-util.c: include string.h
3282 * io-*.c: add error reporting
3284 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
3287 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
3289 * gdk-pixbuf-io.h: Add GError** to load_increment and load
3292 * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return
3293 a G_FILE_ERROR if we fail to write or close the file.
3295 * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
3296 G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
3297 the GError naming rules. Add GError** to load functions.
3299 2000-10-06 Havoc Pennington <hp@redhat.com>
3301 * gdk-pixbuf.h: add GdkPixbufAlphaMode
3303 2000-10-06 Havoc Pennington <hp@redhat.com>
3305 This entry is a summary of the merged-in changes from 1.0.
3306 Relevant original ChangeLog entries are spliced in after
3307 this entry; the files they refer to are from the 1.0
3310 * pixops/pixops.c (pixops_composite_nearest): sync a small fix
3313 * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
3314 Add progressive loader from 1.0
3316 * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
3319 * io-pnm.c: new version from 1.0 tree
3321 * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use
3324 * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
3326 (gif_get_next_step): return 0 here, sync from 1.0
3328 * gdk-pixbuf-util.c: sync email address change for Cody
3331 2000-09-11 Jeffrey Stedfast <fejj@helixcode.com>
3333 * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
3334 last nights code was still "broken". Should now properly handle
3335 all error conditions gracefully.
3337 2000-09-10 Jeffrey Stedfast <fejj@helixcode.com>
3339 * gdk-pixbuf/io-pnm.c: Rewrote.
3341 2000-09-09 Federico Mena Quintero <federico@helixcode.com>
3343 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
3344 the correct dest offset.
3346 2000-08-25 Federico Mena Quintero <federico@helixcode.com>
3348 * gdk-pixbuf/io-xpm.c: #include <unistd.h>
3350 2000-08-05 Larry Ewing <lewing@helixcode.com>
3352 * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
3354 * gdk-pixbuf/io-xpm.c: same as above.
3356 2000-07-26 Michael Meeks <michael@helixcode.com>
3358 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
3361 2000-07-21 Larry Ewing <lewing@helixcode.com>
3363 * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
3364 xpm at least supports the progressive interface like the one in
3365 io-tiff.c. This should be reimplemented as an actual progressive
3368 2000-07-19 Jonathan Blandford <jrb@redhat.com>
3370 * demo/pixbuf-demo.c (update_timeout): changed scaling level to
3371 make it look better.
3372 * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
3373 meeks to handle errors better.
3375 2000-10-07 Tor Lillqvist <tml@iki.fi>
3378 * pixbufloader_jpeg.def
3379 * pixbufloader_png.def: Add new entry points.
3381 * makefile.mingw.in: Use libintl.
3383 2000-10-06 Havoc Pennington <hp@redhat.com>
3385 * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
3386 consistent with gdk_pixbuf_loader_new_with_type().
3387 Return runtime error if a module is missing.
3389 * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
3391 2000-10-05 Havoc Pennington <hp@redhat.com>
3393 Pixbuf saving, patch from David Welton.
3395 * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
3396 (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
3398 * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
3400 * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
3402 * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
3404 * gdk-pixbuf-io.c (gdk_pixbuf_save):
3405 (gdk_pixbuf_savev): Implement pixbuf saving routines
3407 * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
3410 * gdk-pixbuf.h: Add public save routines; add pixbuf error
3413 * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
3415 2000-10-05 Dan Winship <danw@helixcode.com>
3417 * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
3418 all three of these files are the JPEG image loader. (From
3421 2000-10-03 Tor Lillqvist <tml@iki.fi>
3423 * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
3424 gdk-pixbuf's version number in the rule for makefile.mingw itself.
3426 * gdk_pixbuf.def: Add new entry points.
3428 2000-09-26 Havoc Pennington <hp@redhat.com>
3430 * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
3431 function here, instead of putting it in a private GTK+ file.
3433 * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an
3434 enum here for the known formats of inlined pixbufs.
3435 Also, #define our file magic here.
3437 2000-06-23 Havoc Pennington <hp@redhat.com>
3439 * make-inline-pixbuf.c: Small program that creates C variable
3440 declarations of inline pixbuf data. This can be read
3441 by gdk_pixbuf_new_from_inline.
3443 * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
3444 inline pixbuf data and create a pixbuf from it.
3446 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
3448 2000-09-07 Tor Lillqvist <tml@iki.fi>
3450 * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
3453 2000-08-12 Tor Lillqvist <tml@iki.fi>
3455 * gdk_pixbuf.def: Add missing entry point.
3457 2000-08-10 Havoc Pennington <hp@redhat.com>
3459 * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
3460 (s/pixbuf_/pixbufloader_)
3462 2000-08-02 Tor Lillqvist <tml@iki.fi>
3468 * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
3470 * makefile.mingw.in: List loaders alphabetically. Add the wbmp
3471 one. Fix names of DLLs to have '-' instead of '_'.
3473 2000-07-31 Elliot Lee <sopwith@redhat.com>
3474 * io-wbmp.c: Some bug fixes - now tested to work.
3476 2000-07-27 Elliot Lee <sopwith@redhat.com>
3478 * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
3479 gdk_pixbuf_get_named_module() function to facilitate above change
3480 * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
3481 Implement loader for WBMP format.
3482 * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
3484 2000-07-23 Tor Lillqvist <tml@iki.fi>
3489 * pixops/makefile.mingw.in
3490 * pixbuf_*.def: New files.
3493 * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
3495 * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
3496 New function, to get the GTK+ installation directory from
3497 the Windows Registry, where the installation program
3498 for whatever software includes GTK+ has stored it.
3500 Used to avoid having hardcoding the directory where to look for
3501 loaders. This function is needed by gtk, too, so it should
3502 really be just in one place. Maybe a small static library
3503 one level up from here?
3505 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
3506 * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
3507 Open file in binary mode. This *is* standard C. (No-op on Unix,
3510 * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
3512 * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
3513 mktemp() and open().
3514 (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
3516 * pixops/*.S: The Gas from mingw32 doesn't like the .type
3517 pseudo-op. Conditionalise on __MINGW32__, but probably
3518 should conditionalise on Gas version instead? Or could we
3519 do without .type on all systems?
3521 * pixops/timescale.c: Use g_get_current_time()
3522 instead of gettimeofday().
3524 Sat Jul 22 10:57:22 2000 Owen Taylor <otaylor@redhat.com>
3526 * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
3528 Tue Jul 11 11:26:42 2000 Owen Taylor <otaylor@redhat.com>
3530 * gdk-pixbuf.c: Add <string.h> include.
3532 Tue Jul 11 06:20:14 2000 Tim Janik <timj@gtk.org>
3534 * io-gif.c (gdk_pixbuf__gif_image_load_animation):
3535 * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
3536 * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file):
3537 use g_object_new() instead of g_type_create_instance() which
3538 is a private function for fundamental type implementations.
3540 Thu Jul 6 11:49:47 2000 Owen Taylor <otaylor@redhat.com>
3542 * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
3543 soname scheme for gdk-pixbuf.
3545 2000-06-21 Havoc Pennington <hp@pobox.com>
3547 * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
3548 (i.e. derivation is not allowed, and there are no virtual methods
3550 (gdk_pixbuf_preinit): Call g_type_init() here.
3551 (gdk_pixbuf_init): Add a user-friendly init function, for users
3552 of standalone gdk-pixbuf
3554 * gdk-pixbuf-animation.c: Convert to GObject, in the same
3555 way GdkPixbufAnimation was done.
3557 * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
3558 gdk_pixbuf_finalize() from API, since these are broken and don't
3559 make sense with new GObject stuff.
3561 Wed Jun 21 16:02:48 2000 Owen Taylor <otaylor@redhat.com>
3563 * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
3564 support a GDK_PIXBUF_MODULEDIR env variable as a secondary
3567 2000-06-10 Federico Mena Quintero <federico@helixcode.com>
3569 * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
3570 so I needed something to warm my thighs. Running plain infinite
3571 loops on your laptop to make it hot is not very much fun. A demo
3572 of the gdk-pixbuf scaling functions is way better, and looks
3575 * configure.in (AC_OUTPUT): Added the demo Makefile.
3577 * Makefile.am (SUBDIRS): Added the demo directory.
3579 2000-06-09 Larry Ewing <lewing@helixcode.com>
3581 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
3582 setjmp for the png error handler. It seems setting the error
3583 handling functions does not avoid the jump, and so not calling
3584 setjmp was causing the incremental loader to jump into lala land.
3585 (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
3586 not sure this one is actually required but the docs say it must be
3587 set for every call to a png_* function.
3588 Also changed the comment to reflect the fact that setting the
3589 error handlers does _not_ avoid the longjmp.
3591 2000-06-06 Larry Ewing <lewing@helixcode.com>
3593 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3594 take frame offest into account when trying to calculate the
3595 animation bbox. Also set the width to the width not the height.
3596 (gdk_pixbuf_loader_animation_done): cycle over the frames to
3597 calculate bbox because now we finally have all the offset
3598 information for each frame.
3600 2000-06-05 Mathieu Lacage <mathieu@gnome.org>
3602 * configure.in: add some gtk parameters to the
3603 GDK_PIXBUF_LIB?�?S and GDK_PIXBUG_INCLUDEDIR vars. One more
3604 fight in my crusade for strange prefix compile...
3606 2000-05-30 Not Zed <NotZed@HelixCode.com>
3608 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
3609 Initialise the error handler exit routine to our own. Note this
3610 means that every function that accesses the jpeg lib on this
3611 object MUST do a setjmp.
3612 (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
3613 lib for handling fatal error.
3614 (gdk_pixbuf__jpeg_image_load_increment): And here too. So now
3615 your applications dont quit if there's a jpeg error!
3617 2000-05-30 Federico Mena Quintero <federico@helixcode.com>
3619 * gdk-pixbuf.spec.in: Include all the loader libraries. Patch
3620 from Frank de Lange <frank@unternet.org>.
3622 2000-05-09 Darin Adler <darin@eazel.com>
3624 * gdk-pixbuf/test-gdk-pixbuf.c:
3625 Fixed includes to get rid of accidental GNOME dependency.
3627 2000-05-26 Cody Russell <car0969@gamma2.uta.edu>
3628 * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
3630 2000-05-22 Federico Mena Quintero <federico@helixcode.com>
3632 * configure.in: Bumped version number to 0.8.0.
3634 * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
3635 file was not being distributed.
3637 * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
3639 2000-05-09 Darin Adler <darin@eazel.com>
3641 * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
3642 (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
3643 (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
3644 formats to 32-bit formats to re-use the high bits of the color values
3645 so that white maps to full white.
3647 Fri May 5 12:16:32 2000 Owen Taylor <otaylor@redhat.com>
3649 * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with
3650 detailed information about the structure and algorithms
3651 of pixops so people can fix it instead of breaking it.
3653 2000-05-04 Darin Adler <darin@eazel.com>
3655 * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
3656 (composite_pixel), (composite_line):
3657 * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
3658 Now that Owen explained the algorithm, I think I implemented it
3659 right for the cases where the destination pixbuf is not opaque.
3660 The test does seem to confirm it.
3662 2000-05-04 Darin Adler <darin@eazel.com>
3664 * gdk-pixbuf/.cvsignore:
3665 * gdk-pixbuf/Makefile.am:
3666 * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
3667 (load_pixel), (simple_composite_test_one),
3668 (simple_composite_test_one_type), (simple_composite_test), (main):
3669 Added some tests of composite to highlight problems in the old
3670 implementation. These tests run without any user interaction.
3671 Just do "make check".
3673 * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
3674 (composite_pixel), (composite_line): Fix composite to do a textbook
3675 "A over B" composite. This was clearly the intent, and it was easy
3676 to fix the code to do it. (Note to those that read my earlier tries
3677 at a patch; this version fixes typos that were present in all
3678 my patch attempts. I checked the final version by adding more tests.)
3680 2000-04-22 05:27:43 2000 Owen Taylor <otaylor@redhat.com>
3682 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
3683 offset y coordinate accordining to render_y0.
3685 * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
3688 2000-04-22 James Henstridge <james@daa.com.au>
3690 * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
3691 package to the devel package. The only file installed in bin is
3692 gdk-pixbuf-config, which belongs in -devel. This should allow having
3693 multiple versions of the main gdk-pixbuf package installed.
3695 2000-04-17 Karl Eichwalder <ke@suse.de>
3697 * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
3698 Reported by Jens Finke.
3700 2000-04-14 Tomasz K?�?opczko <kloczek@pld.org.pl>
3702 * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by
3703 $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
3705 2000-04-13 James Henstridge <james@daa.com.au>
3707 * configure.in: when performing the configure check to see if
3708 gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
3709 rather than the other way round. Also, call AC_MSG_RESULT in the
3710 even that dynamic modules were not supported.
3712 2000-04-12 Federico Mena Quintero <federico@helixcode.com>
3714 This comes from an excellent idea by Tim Janik (timj@gtk.org) to
3715 hook to the last unref operation.
3717 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
3718 function to set the last unref handler for a pixbuf.
3719 (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
3720 It calls the pixbuf's destroy notification function and frees the
3721 GdkPixbuf structure itself.
3722 (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
3725 * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
3726 for the last unref handler and its user data.
3728 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
3729 g_new0() to allocate the pixbuf.
3731 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
3732 Fixed the call to gtk_signal_new() for the "frame_done" signal; it
3733 was not specifying the `frame' argument.
3735 * gdk-pixbuf/gdk-pixbuf-animation.c
3736 (gdk_pixbuf_animation_get_width): Fixed docstring.
3737 (gdk_pixbuf_animation_get_height): Likewise.
3738 (gdk_pixbuf_animation_get_num_frames): Likewise.
3739 (gdk_pixbuf_animation_get_frames): Likewise.
3741 * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
3744 * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
3746 * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
3748 * doc/tmpl/refcounting.sgml: Updated with the information about
3749 the last unref handler.
3751 * doc/tmpl/*.sgml: Markup tweaks.
3753 * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
3754 update the libtool version number for libgnomecanvaspixbuf as
3756 (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
3757 as well, or the old ones won't work with the new stuff. Also,
3758 renamed the modules as follows.
3760 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
3761 modules are called "libpixbufloader-<format>.so" instead of
3762 "libpixbuf-<format>.so". They needed renaming so that the new
3763 loaders won't overwrite the old ones; even with the versioning
3764 stuff, the new .so symlink to the .so.1.0.0 would overwrite the
3767 2000-04-12 Paolo Molaro <lupus@debian.org>
3769 * .cvsignore, src/.cvsignore: shut up cvs.
3771 2000-04-11 Federico Mena Quintero <federico@helixcode.com>
3773 Most of this patch is based on a patch by Havoc Pennington
3774 (hp@redhat.com) to make GdkPixbuf's structures opaque and to
3775 remove the libart dependency.
3777 * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
3778 (GdkColorspace): New enum that for now only contains
3780 (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
3781 notification function.
3782 (GdkInterpType): New num with interpolation types.
3784 * *.[ch]: Replace the libart stuff with our own stuff.
3786 * pixops/*.[ch]: Likewise.
3788 * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
3789 declarations of the GdkPixbuf structures.
3791 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
3793 (gdk_pixbuf_get_format): Constify.
3794 (gdk_pixbuf_get_n_channels): Constify.
3795 (gdk_pixbuf_get_has_alpha): Constify.
3796 (gdk_pixbuf_get_bits_per_sample): Constify.
3797 (gdk_pixbuf_get_pixels): Constify.
3798 (gdk_pixbuf_get_width): Constify.
3799 (gdk_pixbuf_get_height): Constify.
3800 (gdk_pixbuf_get_rowstride): Constify.
3802 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
3805 * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
3806 bits_per_sample argument; currently only 8 bits per sample are
3809 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
3811 (gdk_pixbuf_frame_get_x_offset): New accessor.
3812 (gdk_pixbuf_frame_get_y_offset): New accessor.
3813 (gdk_pixbuf_frame_get_delay_time): New accessor.
3814 (gdk_pixbuf_frame_get_action): New accessor.
3816 * gdk-pixbuf/gdk-pixbuf-render.c
3817 (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
3818 mask rectangle for pixbufs without an alpha channel, set the
3819 *mask_return to NULL.
3821 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
3823 * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
3825 * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
3826 preconditions. Maybe we should also check for the colorspace,
3827 bits per pixel, and such.
3828 (gdk_pixbuf_composite): Likewise.
3829 (gdk_pixbuf_composite_color): Likewise.
3830 (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
3831 cannot allocate the new pixbuf.
3832 (gdk_pixbuf_composite_color_simple): Likewise.
3834 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
3835 Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
3838 * gdk-pixbuf/io-bmp.c: Fix includes.
3840 * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
3845 * configure.in: Removed checks for libart.
3847 * gdk-pixbuf/Makefile.am: Removed references to libart.
3848 (noinst_HEADERS): Added gdk-pixbuf-private.h.
3850 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
3851 the version number of the libtool library to indicate that this
3852 definitely is not compatible with the old usage. I know you love
3855 * configure.in: Bumped version number to 0.7.0.
3859 * gdk-pixbuf-config.in (--libs): We no longer require libart.
3861 * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
3863 * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
3865 2000-04-06 Jonathan Blandford <jrb@redhat.com>
3867 * gdk-pixbuf/testanimation.c (main): add more info to the
3868 testanimation frames.
3870 2000-04-04 Ettore Perazzoli <ettore@helixcode.com>
3872 * gdk-pixbuf/gdk-pixbuf-animation.c
3873 (gdk_pixbuf_animation_get_width): New accessor function.
3874 (gdk_pixbuf_animation_get_height): New accessor function.
3875 (gdk_pixbuf_animation_get_num_frames): New accessor function.
3876 (gdk_pixbuf_animation_get_frames): New accessor function.
3878 2000-04-01 Federico Mena Quintero <federico@helixcode.com>
3880 * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change. The refcount
3881 is private information, and the art_pixbuf will go away soon.
3883 2000-03-31 Mark Crichton <crichton@gimp.org>
3885 * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
3886 and gdk_pixbuf_get_artpixbuf accessor functions.
3888 2000-03-29 Federico Mena Quintero <federico@helixcode.com>
3890 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
3891 gboolean instead of int.
3893 2000-03-29 Radek Doulik <rodo@helixcode.com>
3895 * gdk-pixbuf/gdk-pixbuf-animation.c
3896 (gdk_pixbuf_animation_new_from_file): same as below
3898 * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
3899 height in GdkPixbufAnimation
3901 2000-03-28 Radek Doulik <rodo@helixcode.com>
3903 * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
3904 context->frame_done_func and context->anim_done_func to make
3905 progressive animation loading work
3907 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3908 added priv->pixbuf = NULL as pixbuf is now in frame (and to make
3909 gdk_pixbuf_loader_prepare happy)
3910 (gdk_pixbuf_loader_frame_done): update animation bbox
3912 * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
3915 2000-03-27 Radek Doulik <rodo@helixcode.com>
3917 * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
3918 instead of width and height
3920 2000-03-27 Owen Taylor <otaylor@redhat.com>
3922 * gdk-pixbuf/pixops/pixops.c: Fix problem with
3923 precendence of >> and & which was keeping composite_color
3924 from working with non-gray images.
3926 2000-03-08 Jonathan Blandford <jrb@redhat.com>
3928 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
3929 (gdk_pixbuf__gif_image_load_animation): free the context.
3931 2000-03-06 Arjan van de Ven <arjan@fenrus.demon.nl>
3933 * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a
3934 mis-interpretation of the Microsoft documentation. Now
3935 it can load .BMP files that are not generated by The Gimp
3938 2000-03-01 Mark Crichton <crichton@gimp.org>
3940 * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
3941 fix the last auto* build bug (where we have libart, but no
3944 * gdk-pixbuf/Makefile.am: Same.
3946 2000-02-28 Matt Wilson <msw@redhat.com>
3948 * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
3949 s/unsigned short/guint16/g, s/unsigned char/guint8/g
3951 2000-02-26 Federico Mena Quintero <federico@helixcode.com>
3953 * README: We don't require libgif/ungif nor libXpm.
3955 * NEWS: This was outdated, so updated it.
3957 2000-02-25 Federico Mena Quintero <federico@helixcode.com>
3959 * gdk-pixbuf.m4: Use the correct name for
3960 gdk-pixbuf/gdk-pixbuf.h. Thanks to Jacob Berkman for pointing
3963 2000-02-21 Federico Mena Quintero <federico@helixcode.com>
3965 * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
3967 * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
3968 library's particular options to configure.in.
3970 * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
3973 * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
3975 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
3976 Fixed typo in prototype name.
3978 * configure.in: Changed duplicated AC_MSG_CHECKING message to
3979 something more meaningful; now it is "checking whether dynamic
3982 * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
3983 the timescale program.
3985 Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
3986 creating a single static library with all the image format modules
3989 2000-02-20 Miguel de Icaza <miguel@gnu.org>
3991 * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
3992 (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
3994 * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
3995 (gdk_pixbuf__tiff_image_stop_load): Add prefix.
3996 (gdk_pixbuf__tiff_image_load_increment): Add prefix.
3997 (gdk_pixbuf__tiff_image_load): Add prefix.
3998 (gdk_pixbuf__tiff_image_stop_load): Update invocation.
3999 (gdk_pixbuf__tiff_image_begin_load): Add prefix.
4001 * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
4002 (gdk_pixbuf__ras_image_load): Updated invocation.
4003 (gdk_pixbuf__ras_image_begin_load): Add prefix.
4004 (gdk_pixbuf__ras_image_stop_load): Add prefix.
4005 (gdk_pixbuf__ras_image_load_increment): Add prefix.
4007 * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
4008 (gdk_pixbuf__pnm_image_stop_load): Add prefix.
4009 (gdk_pixbuf__pnm_image_load_increment): Add prefix
4010 (gdk_pixbuf__pnm_image_load): Add prefix.
4012 * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
4013 (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
4014 (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
4015 (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
4017 * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
4018 (gdk_pixbuf__ico_image_load): update invocation.
4019 (gdk_pixbuf__ico_image_load_increment): Add prefix.
4020 (gdk_pixbuf__ico_image_load): update invocation.
4021 (gdk_pixbuf__ico_image_begin_load): Add prefix.
4022 (gdk_pixbuf__ico_image_load): update invocation.
4023 (gdk_pixbuf__ico_image_stop_load): Add prefix.
4025 * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
4026 (gdk_pixbuf__gif_image_load): Add prefix.
4027 (gdk_pixbuf__gif_image_begin_load): Add prefix.
4028 (gdk_pixbuf__gif_image_load_increment): Add prefix.
4029 (gdk_pixbuf__gif_image_load_animation): Add prefix.
4030 (gdk_pixbuf__gif_image_stop_load): Add prefix.
4032 * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
4033 (gdk_pixbuf__bmp_image_load): Rename function called.
4034 (gdk_pixbuf__bmp_image_load_increment): Add prefix
4036 * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
4037 (gdk_pixbuf__png_image_begin_load): Add prefix.
4038 (gdk_pixbuf__png_image_stop_load): Add prefix.
4039 (gdk_pixbuf__png_image_load_increment): Add prefix.
4041 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
4042 (gdk_pixbuf_load_module): Load the shared library entry points
4043 using a "gdk_pixbuf__$module_name" prefix.
4044 (pixbuf_module_symbol): Wrapper routine that uses the module
4045 prefix for the modules to load the information.
4047 * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
4048 lets the user specify that gdk-pixbuf should link all image loader
4049 code into the library instaed of creating shared library modules.
4051 (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
4052 to BUILD_DYNAMIC_MODULES.
4054 2000-02-19 Jonathan Blandford <jrb@redhat.com>
4056 * gdk-pixbuf/io-gif.c (new_context): fix case where initial
4057 colormap entry is Transparent.
4059 2000-02-19 Owen Taylor <otaylor@redhat.com>
4061 * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
4062 scale factors for non-alpha case.
4064 2000-02-14 Mark Crichton <crichton@gimp.org>
4066 * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g"
4067 color type. Imlib/libXpm handle this, but we didn't.
4069 2000-02-14 Darin Adler <darin@eazel.com>
4071 * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
4072 * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
4074 2000-02-14 Elliot Lee <sopwith@redhat.com>
4075 * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make
4076 passed-in argument 'const'.
4078 2000-02-04 Michael Meeks <mmeeks@gnu.org>
4080 * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
4081 (gif_get_frame_info): put the offsets on the context.
4082 (gif_get_lzw): copy them off into the frame.
4083 (new_context): no change required; will 0 offsets by default.
4085 2000-01-28 Michael Meeks <michael@mejm2.dow.cam.ac.uk>
4087 * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
4090 * gdk-pixbuf/pixops/pixops.h: const.
4092 * gdk-pixbuf/gdk-pixbuf-util.c: const.
4094 * gdk-pixbuf/gdk-pixbuf-scale.c: const.
4096 * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
4098 2000-02-03 Federico Mena Quintero <federico@helixcode.com>
4100 * gdk-pixbuf/gdk-pixbuf-render.c
4101 (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
4102 and height being >= 0. Also, do nothing if either of them is
4103 zero. Thanks to Ettore for pointing this out.
4104 (gdk_pixbuf_render_to_drawable): Likewise.
4105 (gdk_pixbuf_render_to_drawable_alpha): Likewise.
4107 2000-02-02 Federico Mena Quintero <federico@helixcode.com>
4109 * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
4110 Thanks to John Sullivan <sullivan@eazel.com> for the patch.
4112 * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
4113 of the screen when the window is resized. Thanks to David
4114 N. Welton <davidw@linuxcare.com> for pointing this out.
4115 Misc. cleanups to the rest of the file.
4117 2000-02-01 Federico Mena Quintero <federico@helixcode.com>
4119 * doc/tmpl/rendering.sgml: gnome_init() does not call
4120 gdk_rgb_init(), so don't mention that it does in the
4121 documentation. Thanks to Alexander Kruuse <kruuse@home.se> for
4124 2000-01-31 Havoc Pennington <hp@redhat.com>
4126 * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
4128 Mon Jan 31 12:38:50 2000 Owen Taylor <otaylor@redhat.com>
4130 * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
4131 Wainwright to fix 4a => 4a scaling.
4133 2000-01-29 Mark Crichton <crichton@gimp.org>
4135 * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
4136 put `libart-config --libs` in instead of -lart_lgpl.
4138 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
4140 * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
4142 (pnm_read_ascii_scanline): Initialize data and mask.
4144 * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
4145 fallbackcolor to keep gcc happy.
4147 * configure.in: Bumped version number to 0.5.0.
4149 * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
4152 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
4153 parentheses around + in a shift to remove a compiler warning.
4154 (pixops_process): Likewise.
4156 Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
4159 * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
4161 * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
4163 2000-01-22 Federico Mena Quintero <federico@helixcode.com>
4165 * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
4166 x_set and y_set arguments. Now they are always on and start with
4167 defaults of 0.0 in units.
4168 (gnome_canvas_pixbuf_class_init): Likewise.
4169 (gnome_canvas_pixbuf_set_arg): Likewise.
4170 (gnome_canvas_pixbuf_get_arg): Likewise.
4171 (compute_viewport_affine): Likewise; always use the priv->x and
4174 * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
4175 removal of the x_set/y_set arguments.
4177 2000-01-21 Federico Mena Quintero <federico@helixcode.com>
4179 * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
4180 as the input parameter.
4182 * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
4183 Return the same animation as the input parameter.
4185 2000-01-16 Elliot Lee <sopwith@redhat.com>
4187 * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
4189 2000-01-16 Federico Mena Quintero <federico@helixcode.com>
4191 * configure.in: Removed the broken --enable-canvas-pixbuf option.
4192 Added the stuff necessary to substitute the variables in
4193 gnomecanvaspixbufConf.sh.in.
4195 * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
4196 tiny gnomecanvaspixbuf library.
4198 * Makefile.am: Build gnomecanvaspixbufConf.sh.
4200 * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
4201 build it if gdk-pixbuf is being built outside of gnome-libs.
4203 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
4205 * gdk-pixbuf/gdk-pixbuf-render.c
4206 (gdk_pixbuf_render_pixmap_and_mask): Renamed from
4207 gdk_pixbuf_render_pixmap(). Do not create the mask if it is not
4208 needed, and do not use a clipping mask when rendering the pixmap.
4209 Tweaked documentation a little.
4211 * HACKING: New file with hacking policies for the gdk-pixbuf
4214 * doc/Makefile.am (tmpl_sources): Added missing backslash.
4216 * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
4217 scanning for docstrings.
4219 * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
4220 checks more stringent. Removed "gint" abominations. Made
4221 documentation consistent with the rest of the functions.
4223 * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
4226 2000-01-14 Jonathan Blandford <jrb@redhat.com>
4228 * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
4229 function to let you create a gdk_pixmap from a gdk_pixbuf.
4231 2000-01-11 Jacob Berkman <jacob@helixcode.com>
4233 * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
4234 $LIBART_CFLAGS to $INCLUDES
4236 2000-01-10 Elliot Lee <sopwith@redhat.com>
4238 * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
4240 * configure.in: Define version macros. Generate
4241 gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
4243 * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
4245 * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
4246 gdk-pixbuf-features.h declarations, plus some initialization
4249 2000-01-05 Owen Taylor <otaylor@redhat.com>
4251 * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
4252 confusion. (Again caught by Tomas Ogren's Purify)
4254 2000-01-07 Jonathan Blandford <jrb@redhat.com>
4256 * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
4259 * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
4260 * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
4261 * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
4263 * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
4265 * gdk-pixbuf/io-gif.c (image_load_increment): I think the
4266 ref-counting mess is finally fixed. Added progressive animation
4268 (gif_get_lzw): remove memory_leak
4270 * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
4273 2000-01-05 Owen Taylor <otaylor@redhat.com>
4275 * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of
4278 * gdk-pixbuf/pixops/pixops.c: Fix double increments when
4279 dest_channels == 4. (Pointed out by Tomas Ogren)
4281 2000-01-05 Mark Crichton <crichton@gimp.org>
4283 * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
4284 Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
4286 2000-01-05 Elliot Lee <sopwith@redhat.com>
4288 * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
4290 2000-01-05 Owen Taylor <otaylor@redhat.com>
4292 * doc/Makefile.am doc/gdk-pixbuf-sections.txt
4293 doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
4294 Added scaling functions into gtk-doc framework.
4296 * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
4298 * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
4300 * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
4301 immediately if scale_x or scale_y is 0.
4303 2000-01-05 Owen Taylor <otaylor@redhat.com>
4305 * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
4306 arrays in benchmark.
4308 2000-01-05 Jonathan Blandford <jrb@redhat.com>
4310 * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
4311 to make it more compatible with the rest of GTK. Added animation
4312 framework for progressive loading.
4314 * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
4316 * gdk-pixbuf/io-ico.c (image_begin_load): ditto
4317 * gdk-pixbuf/io-png.c (image_begin_load): ditto
4318 * gdk-pixbuf/io-ras.c (image_begin_load): ditto
4319 * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
4320 * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
4321 * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
4322 * gdk-pixbuf/io-gif.c (image_begin_load): ditto
4324 2000-01-05 Owen Taylor <otaylor@redhat.com>
4326 * gdk-pixbuf/pixops/README: Added a README with a TODO
4327 and some explainations of the algorithms.
4329 * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
4330 to reduce flashing when resizing.
4332 2000-01-05 Owen Taylor <otaylor@redhat.com>
4334 * gdk-pixbuf/pixops/: Directory full of pixel data scaling
4335 code that will eventually migrate into libart.
4337 * configure.in acconfig.h: Add checks for MMX compiler support
4339 * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
4340 Nice wrapper routines for the code in pixops that operate
4341 on pixbufs instead of raw data.
4343 * gdk-pixbuf/testpixbuf-scale: Test program for scaling
4346 2000-01-05 Jonathan Blandford <jrb@redhat.com>
4348 * doc/tmpl/animation.sgml: Documentation changes.
4350 2000-01-01 Federico Mena Quintero <federico@helixcode.com>
4352 * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
4353 counting to animations. A web browser may want to share a single
4354 copy of an animated GIF if it appears multiple times in a web
4357 * gdk-pixbuf/gdk-pixbuf-animation.c: New file. Moved the
4358 animation functions here.
4359 (gdk_pixbuf_animation_new_from_file): Prettified. Return a NULL
4360 animation if the loader does not support multiframe loading and
4361 the single-frame load returned NULL. Check that the filename is
4362 not NULL. Updated inline documentation.
4363 (gdk_pixbuf_animation_ref): New function.
4364 (gdk_pixbuf_animation_unref): New function.
4365 Removed gdk_pixbuf_animation_destroy() in favor of reference
4368 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
4369 Prettified. Made ref_count assertion more paranoid. Check that
4370 the filename is not NULL.
4371 (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
4373 (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
4376 * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
4377 with a reference count of 1.
4379 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
4380 gdk-pixbuf-animation.c.
4382 * doc/tmpl/animation.sgml: Populated. It is still missing a
4383 description of the overlay modes.
4385 * doc/gdk-pixbuf-sections.txt: Added the animation section. Moved
4386 the canvas item section to the end, as it will be moved later to
4389 * doc/gdk-pixbuf.sgml: Added the animation section.
4391 * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
4393 1999-12-26 Peter Teichman <pat@gnu.org>
4395 * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
4396 $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
4397 This closes bug #4676.
4399 1999-12-23 Havoc Pennington <hp@pobox.com>
4401 * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
4402 set to NULL here (specifically context->animation) was not being
4403 set to NULL. use g_new0() to alloc the struct.
4405 1999-12-20 Jonathan Blandford <jrb@redhat.com>
4407 * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
4408 correctly. Progressive loading needs some work, but that all
4409 needs doing from the gdk-pixbuf-loader end, not here.
4411 1999-12-17 Jonathan Blandford <jrb@redhat.com>
4413 * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
4414 moved the file here. It seems natural to put this function here,
4415 as that's where the gdk_pixbuf_new_from_file function is, but it's
4416 still a little convoluted. The source files might be played with
4419 1999-12-14 Jonathan Blandford <jrb@redhat.com>
4421 * gdk-pixbuf/gdk-pixbuf-loader.c
4422 (gdk_pixbuf_loader_get_animation): Gets the animation from the
4425 1999-12-16 Federico Mena Quintero <federico@redhat.com>
4427 * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
4428 before using the GdkPixbuf rendering functions. Thanks to Joe
4429 Shaw <joe@off.net> for pointing this out.
4431 1999-12-13 Federico Mena Quintero <federico@redhat.com>
4433 * gdk-pixbuf/gnome-canvas-pixbuf.c
4434 (gnome_canvas_pixbuf_class_init): Renamed arguments to
4435 width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
4436 consistency with the new canvas.
4437 (PixbufPrivate): Do the same renaming in the structure fields, for
4440 * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
4442 1999-12-12 Federico Mena Quintero <federico@redhat.com>
4444 * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
4445 conditional to see whether to link $(GNOME_LIBS) or not.
4447 1999-12-10 Jonathan Blandford <jrb@redhat.com>
4449 * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
4451 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
4452 make a warning go away.
4454 * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
4456 * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
4459 1999-12-09 Michael Zucchi <zucchi@zedzone.mmc.com.au>
4461 * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
4464 * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
4465 Filled in body of function.
4466 (rgbconvert): Added GdkColormap parameter, and to all conversion
4468 (convert_real_slow): New function - should convert ANY visual/data
4469 format properly, but it aint fast. Used as a fallback when an
4470 optimised routine wont match.
4471 (rgbconvert): Do very specific tests on the data format to verify
4472 properly if the optimised version will do, otherwise use the
4473 fallback function for all other data formats.
4475 * gdk-pixbuf/Makefile.am: Re-enabled building of
4476 textpixbuf-drawable.
4478 * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
4479 gdk_pixbuf_get_from_drawable().
4481 1999-12-08 Arjan van de Ven <arjan@fenrus.demon.nl>
4483 * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
4484 bug on two occasions.
4485 * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
4486 function to the generic glib one.
4488 1999-12-08 Federico Mena Quintero <federico@redhat.com>
4490 * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
4491 (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
4492 checks and API definition. The body needs filling in and it needs
4493 to do the Right Thing(tm) for pixmaps plus the given colormap and
4494 windows and their own colormaps.
4496 * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
4497 gdk_pixbuf_get_from_drawable(). Killed gdk-pixbuf-drawable.h.
4499 * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
4501 * doc/tmpl/from-drawables.sgml: Populated.
4503 * doc/gdk-pixbuf.sgml: Added the from-drawables section.
4505 * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
4507 * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
4510 1999-12-07 Federico Mena Quintero <federico@redhat.com>
4512 * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
4513 reference counting for GdkPixbuf structures.
4515 1999-12-07 Martin Baulig <martin@home-of-linux.org>
4517 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
4518 include $(GNOME_LIBS) here.
4520 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
4522 Added missing "include <string.h>" to:
4523 * gdk-pixbuf/io-ras.c
4524 * gdk-pixbuf/io-bmp.c
4525 * gdk-pixbuf/io-ico.c
4527 1999-12-06 Federico Mena Quintero <federico@redhat.com>
4529 * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
4532 1999-12-05 Federico Mena Quintero <federico@redhat.com>
4534 * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
4535 $(GNOME_LIBS). This must compile outside of gnome-libs. If you
4536 want, send me a patch to do the conditional stuff properly.
4537 Otherwise, please read the GNOME Programming Guidelines,
4538 especially the "CVS policies" section.
4540 1999-12-05 Jaka Mocnik <jaka.mocnik@kiss.uni-lj.si>
4542 * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
4544 1999-12-05 Arjan van de Ven <arjan@fenrus.demon.nl>
4546 * gdk-pixbuf/io-ico.c: Bug in palet-size
4549 1999-12-04 Arjan van de Ven <arjan@fenrus.demon.nl>
4551 * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
4552 32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
4554 * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
4556 * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
4559 * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
4560 (Windows Cursor files). These are identical to .ICO files,
4561 except for the signature and 2 extra fields for the hotspot.
4563 1999-12-03 Federico Mena Quintero <federico@redhat.com>
4565 * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
4566 Removed unused variable `item'.
4568 1999-12-03 Jonathan Blandford <jrb@redhat.com>
4570 * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
4571 explain this function better.
4573 1999-12-02 Federico Mena Quintero <federico@redhat.com>
4575 Source files moved from src/ to gdk-pixbuf/, to be consistent with
4578 * doc/Makefile.am: Modified for the new source directory.
4580 * configure.in: Likewise.
4582 * Makefile.am: Likewise.
4584 * autogen.sh: Likewise.
4586 * gdk-pixbuf/Makefile.am: Likewise.
4588 1999-12-02 Federico Mena Quintero <federico@redhat.com>
4590 * src/testpixbuf.c: #include <config.h>, and fix includes.
4592 * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
4594 * src/io-xpm.c: Fix includes.
4596 * src/io-tiff.c: Fix includes.
4598 * src/io-ras.c: Fix includes, and do not include more stuff than needed.
4600 * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
4602 * src/io-png.c: Fix includes.
4604 * src/io-ico.c: Fix includes, and do not include more stuff than needed.
4606 * src/io-gif.c: Fix includes, and do not include more stuff than needed.
4608 * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
4610 * src/gnome-canvas-pixbuf.c: Fix includes.
4612 * src/gdk-pixbuf.c: Fix includes.
4614 * src/gdk-pixbuf-util.c: Fix includes.
4616 * src/gdk-pixbuf-render.c: Fix includes.
4618 * src/gdk-pixbuf-io.h: Fix includes.
4620 * src/gdk-pixbuf-drawable.c: Fix includes.
4622 * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
4625 * src/gdk-pixbuf-data.c: Fix includes.
4627 * src/gdk-pixbuf-loader.c: #include <config.h>
4629 * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
4632 * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
4633 since it is not finished.
4635 * src/gdk-pixbuf.h: Removed unused transformation prototypes.
4637 * src/gdk-pixbuf-util.c: New file with utility and convenience
4638 functions for pixbufs.
4640 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
4642 * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
4644 * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
4646 * doc/gdk-pixbuf.sgml: Added the utilities section.
4648 * doc/tmpl/util.sgml: Documentation for the utility functions.
4650 1999-11-29 Owen Taylor <otaylor@redhat.com>
4652 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4653 Keep the mask around until after we draw ... since
4654 the GC changes aren't flushed to the X server until we
4655 draw, destroying it before that may result in BadPixmap
4658 1999-11-30 Havoc Pennington <hp@pobox.com>
4660 * configure.in: Add AM_CONDITIONAL for inside gnome-libs
4662 * src/Makefile.am: conditionalize GnomeCanvasPixbuf
4664 1999-11-29 Federico Mena Quintero <federico@redhat.com>
4666 * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources. This
4667 should be made conditional, not blindly commented out.
4669 1999-11-29 Jonathan Blandford <jrb@redhat.com>
4671 * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
4672 handle .ico files. Cool.
4674 1999-11-24 Jonathan Blandford <jrb@redhat.com>
4676 * src/io-bmp.c (OneLine24): new patch from Arjan to handle
4679 1999-11-24 James Henstridge <james@daa.com.au>
4681 * configure.in (AC_OUTPUT): altered hack to place the symlink in the
4682 top builddir rather than src. This still builds fine, and does not
4683 get gtk-doc into an infinite loop when trying to find all the source
4686 1999-11-23 Jonathan Blandford <jrb@redhat.com>
4688 * Removed #PRAGMA } from headers. Also, make compile if you don't
4689 have it installed, already.
4691 1999-11-22 Federico Mena Quintero <federico@redhat.com>
4693 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
4694 temporary buffer to the size of the interesction of the bounding
4695 box and the expose area, not the whole expose area. This speeds
4698 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
4699 not paint black on the mask, since we already cleared it in a
4700 single gdk_draw_rectangle() operation.
4702 1999-11-22 Raja R Harinath <harinath@cs.umn.edu>
4704 * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
4706 1999-11-22 Havoc Pennington <hp@pobox.com>
4708 * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
4709 <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
4710 dependencies to LIBADD variables for loadable modules. Necessary
4711 for a Java dynamic loading thing to be able to figure it out.
4713 1999-11-22 Havoc Pennington <hp@pobox.com>
4715 * src/io-png.c (image_load_increment): Call the update_area
4716 callback depending on the number of rows loaded in this increment.
4718 * src/testpixbuf.c (main): slow down the progressive load demo
4720 1999-11-16 Havoc Pennington <hp@pobox.com>
4722 * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
4724 1999-11-22 Jonathan Blandford <jrb@redhat.com>
4726 * configure.in (GDK_PIXBUF_DIR): make the symlink. Does not work
4727 for srcdir != buildir != . Beats me why; I can't figure it out.
4728 AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
4730 1999-11-21 Jonathan Blandford <jrb@redhat.com>
4732 * src/gdk-pixbuf-io.c: added io-bmp from Arjan
4733 <arjan@fenrus.demon.nl>
4735 1999-11-20 Michael Zucchi <zucchi@zedzone.mmc.com.au>
4737 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
4738 Rework/reorder of the code. Each case has been separated into
4739 another function; its big but it should be quick.
4740 gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
4741 opaque alpha information. Not all depths/formats have been
4742 tested, but 8, 15/16 and 24 (alinged 32) should work ok.
4744 1999-11-17 Larry Ewing <lewing@gimp.org>
4746 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
4747 implement the bounds method correctly.
4748 (compute_viewport_affine): compute the affine need to fit the
4749 image within the viewport given by the args.
4750 (compute_render_affine): call compute_viewport_affine.
4752 1999-11-16 Havoc Pennington <hp@pobox.com>
4754 * src/gdk-pixbuf-drawable.h: Use includes from the current
4755 directory, not the system directory.
4757 Mon Nov 15 17:18:28 1999 George Lebl <jirka@5z.com>
4759 * src/testpixbuf-drawable.c: use includes from the current directory
4760 rather then from the system include directory as gdk-pixbuf
4761 includes are not yet installed when this is compiled.
4763 1999-11-13 Cody Russell <bratsche@dfw.net>
4764 * src/testpixbuf-drawable.c: Added a test program for drawable
4767 * src/Makefile.am: Build testpixbuf-drawable.
4769 1999-11-12 Cody Russell <bratsche@dfw.net>
4771 * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
4773 1999-11-10 Federico Mena Quintero <federico@redhat.com>
4775 * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
4777 * doc/gdk-pixbuf.signals: Put in the real names of signal
4780 * src/gdk-pixbuf-loader.c: Improved documentation comments.
4782 1999-11-10 Jonathan Blandford <jrb@redhat.com>
4784 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
4787 * src/io-ras.c (OneLineMapped_file): Now can handle indexing
4788 correctly. Patch from Arjan to do so.
4790 1999-11-10 Michael Fulbright <drmike@redhat.com>
4792 * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
4795 * src/testpixbuf.c: Added final queued draw when done loading image.
4797 1999-11-10 Jonathan Blandford <jrb@redhat.com>
4799 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
4802 1999-11-10 Federico Mena Quintero <federico@redhat.com>
4804 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
4807 1999-11-09 Federico Mena Quintero <federico@redhat.com>
4809 * src/io-png.c: Fixed some incompatible pointer initializations.
4811 * src/io-jpeg.c (image_load_increment): Remove unused variable.
4813 1999-11-09 Michael Fulbright <drmike@redhat.com>
4815 * src/testpixbuf.c: Fixed it to use timeout to read from file
4816 for progressive loading. Set TBF_KBPS=n, where n is the number of
4817 kilobytes/second to simulate in downloading. n has to be an integer.
4819 * src/io-jpeg.c: Slight cosmetic cleanup.
4821 * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
4822 PBM loading has a similar problem and will address tomorrow.
4824 1999-11-09 Havoc Pennington <hp@pobox.com>
4826 * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
4827 gdk-pixbuf-drawable stuff.
4829 1999-11-09 Federico Mena Quintero <federico@redhat.com>
4831 * configure.in: Bumped version number to 0.4.
4833 1999-11-09 Michael Fulbright <drmike@redhat.com>
4835 * src/io-pnm.c : Finished progressive PNM loading code. Should handle
4836 all types of PNM files now.
4838 * src/io-jpeg.c (image_load_increment): Figured out problem with
4839 loading Progressive JPEG's progressively (say that 10 times fast).
4840 Currently for Progressive JPEG's the entire image is loaded before
4841 it is displayed. libjpeg supports a fancier mechanism which I may
4844 With these changes all JPEG formats appear to load properly for me.
4846 1999-11-08 Jonathan Blandford <jrb@redhat.com>
4848 * src/io-ras.c (image_load_increment): Final patch from Arjan.
4849 Seems to do progressive loading.
4851 1999-11-08 Michael Fulbright <drmike@redhat.com>
4853 * src/io-pnm.c image_load (): Fixed so we do not create a separate
4854 pixel buffer when reading in image - we reuse the pixel data in
4855 the GdkPixbuf structure instead.
4857 1999-11-08 Michael Fulbright <drmike@redhat.com>
4859 * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
4860 ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
4861 I can't seem to find a utility to convert into this format.
4862 Next is to add progressive loading support for the PNM format.
4864 1999-11-07 Federico Mena Quintero <federico@redhat.com>
4866 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
4867 of the width, height, x, and y setting and pixels arguments.
4869 1999-11-05 Jonathan Blandford <jrb@redhat.com>
4871 * src/io-ras.c (image_load): third patch. Now it seems to load.
4873 * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
4874 <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
4876 * src/io-ras.c (image_load): new file from Arjan van de Ven
4877 <arjan@fenrus.demon.nl> to begin the ras loader.
4879 1999-11-05 Federico Mena Quintero <federico@redhat.com>
4881 * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
4882 for internal use only.
4884 * doc/gdk-pixbuf.sgml: Likewise.
4886 * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
4888 1999-11-05 Michael Fulbright <drmike@redhat.com>
4890 * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
4891 files from a file. Next step is support for ASCII files, and
4892 then incremental loading.
4894 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4896 * Makefile.am: Added doc to SUBDIRS.
4898 1999-11-04 Michael Fulbright <drmike@redhat.com>
4900 * src/io-jpeg.c: Prettied up code slightly.
4901 * src/io-pnm.c: Start of pnm loader (from file and progressively).
4902 Doesn't do much yet (will finish tomorrow).
4903 * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
4905 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4907 * doc/tmpl/rendering.sgml: Populated.
4909 * doc/Makefile.am: Added the template files.
4911 1999-11-04 Havoc Pennington <hp@pobox.com>
4913 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
4914 docs, explain what a dither offset is for.
4915 (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
4916 this function vs. gdk_pixbuf_render_to_drawable().
4918 1999-11-04 Havoc Pennington <hp@pobox.com>
4920 * configure.in: Use libart-config correctly; find gnome-config
4921 separately. Fix GNOME_LIBS to be correct in "no gnome installed
4924 * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
4927 Patch untested in the inside-gnome-libs case, I need to commit
4928 then check out to the gnome-libs I'm using.
4930 1999-11-04 Michael Fulbright <drmike@redhat.com>
4932 * src/io-jpeg.c (image_begin_load): Add update_func callback.
4933 * src/io-jpeg.c (image_load_increment): Call updated callback when
4934 new graphic data decoded.
4936 1999-11-04 Jonathan Blandford <jrb@redhat.com>
4938 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
4940 * src/io-png.c (image_begin_load): add a update_func callback.
4941 * src/io-gif.c (image_begin_load): add a update_func callback.
4942 (gif_get_lzw): added the update_func ability
4944 * src/io-tiff.c (image_begin_load): add a update_func callback.
4946 1999-11-04 Federico Mena Quintero <federico@redhat.com>
4948 * doc/tmpl/gdk-pixbuf.sgml: Populated.
4950 * doc/tmpl/refcounting.sgml: Populated.
4952 * doc/tmpl/file-loading.sgml: Populated.
4954 * src/gdk-pixbuf.c: Added documentation comments.
4956 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
4957 documentation comments.
4959 * doc/: Finished integrating the documentation framework.
4961 1999-11-03 Federico Mena Quintero <federico@redhat.com>
4963 * configure.in: Removed libgif stuff now that we do not depend on it.
4964 Added the necessary cruft for gtk-doc.
4966 * src/Makefile.am: Unconditionally build the GIF loader.
4968 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4970 * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
4971 Added a lot of comments to the file.
4973 * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
4976 1999-11-03 Michael Fulbright <drmike@redhat.com>
4978 * src/io-jpeg.c (image_load_increment): Further removal of
4979 bugginess in local buffering code. Handles grayscale jpegs
4982 * src/io-jpeg.c (image_load_stop): Was freeing local context
4983 for jpeg library before calling jpeg_decompres_finish ().
4985 1999-11-03 Jonathan Blandford <jrb@redhat.com>
4987 * src/io-gif.c (image_load_increment): now handle arbitrary buffer
4989 (gif_get_lzw): set the transparency to the right val.
4991 1999-11-03 Federico Mena Quintero <federico@redhat.com>
4993 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
4994 Initiailize the x and y fields.
4995 (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
4996 (PixbufPrivate): Renamed need_size_update to need_xform_update.
4997 (recompute_bounding_box): Do not use temporary values.
4999 1999-11-03 Jonathan Blandford <jrb@redhat.com>
5001 * src/io-gif.c (set_gif_lzw_clear_code): new state. Fixes
5004 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
5005 unneeded x,y,h,w vars.
5007 1999-11-03 Larry Ewing <lewing@gimp.org>
5009 * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
5010 render_affine calculation for x,y offsets.
5011 (gnome_canvas_pixbuf_set_arg): add x,y args.
5012 (gnome_canvas_pixbuf_get_arg): add x,y args.
5013 (recompute_bounding_box): simply code using ArtDrect and the
5014 render_affine. Removed compute_xform_vectors as it was no longer
5017 1999-11-03 Federico Mena Quintero <federico@redhat.com>
5019 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
5020 doofus. Return a distance, not a boolean, for opaque images.
5022 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
5023 rounding of bounding box coordinates.
5024 (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
5025 (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
5027 1999-11-03 Jonathan Blandford <jrb@redhat.com>
5029 * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
5031 1999-11-03 Michael Fulbright <drmike@redhat.com>
5033 * src/io-jpg.c (image_load_increment): Fixed code which moved
5034 buffer around as new data comes in to work properly. JPEG progressive
5035 loading should be working now except for grayscale JPEG's, which I
5036 will look into next.
5038 1999-11-03 <sopwith@redhat.com>
5039 * src/testpixbuf.c: A GtkFunction needs to return a value for
5040 deterministic behaviour. Also put dot printing back in.
5042 1999-11-03 <jrb@redhat.com>
5044 * src/io-gif.c (gif_get_extension): Read 'til the next empty block
5047 1999-11-02 Cody Russell <bratsche@dfw.net>
5048 * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
5049 if part of the requested image is offscreen, rather than clipping
5052 1999-11-02 Jonathan Blandford <jrb@redhat.com>
5054 * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
5055 for interlacing and progressive loading.
5057 1999-11-02 Cody Russell <bratsche@dfw.net>
5058 * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
5059 calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
5061 1999-11-02 Jonathan Blandford <jrb@redhat.com>
5063 * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
5064 It's a little slow though. )-:
5066 1999-11-02 Elliot Lee <sopwith@redhat.com>
5067 * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the
5068 arguments to the write/load_increment operations const-correct.
5070 1999-11-02 Federico Mena Quintero <federico@redhat.com>
5072 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
5073 Implemented the ::point() method. We do a simple containment test
5074 instead of a full distance calculation since the canvas is going
5075 to change to that scheme, anyways.
5077 1999-11-02 Elliot Lee <sopwith@redhat.com>
5079 * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size
5080 of the chunks that are read from the input file.
5082 1999-11-02 Larry Ewing <lewing@gimp.org>
5084 * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
5086 (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
5089 1999-11-02 Federico Mena Quintero <federico@redhat.com>
5091 * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
5092 affine computation code from ::draw() to here, since it is needed
5093 by ::point() as well.
5095 1999-11-02 Elliot Lee <sopwith@redhat.com>
5097 * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
5098 three functions, and eliminate duplication of code from write()
5099 and close(). Also fix bug where the 128-byte header was being
5102 1999-11-01 Federico Mena Quintero <federico@redhat.com>
5103 * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
5104 bounding box computation.
5106 1999-11-01 Federico Mena Quintero <federico@redhat.com>
5108 * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
5109 Drawing affines seem to work. Bounding box is fubared. ::point()
5110 is not implemented. This is a work in progress.
5112 * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
5115 * configure.in: Sigh. We need to link in libgnomeui for the
5116 canvas stuff. This mess will disappear when gdk-pixbuf gets
5117 folded into gnome-libs.
5119 1999-10-30 Jonathan Blandford <jrb@redhat.com>
5121 * src/io-gif.c: Some more work. Now it generates a gdk_pixbuf of
5122 the right size, at a minimum, even if the image is squished and
5124 (ReadImage): lets get the offset right. This will let transparent
5127 1999-10-29 Michael Fulbright <drmike@redhat.com>
5129 * src/io-jpeg.c: image_load_increment(): Fixed bug when
5130 image width was not a multiple of 4 - always use the
5131 gdk_pixbuf rowstride to increment pointers!
5133 1999-10-29 Michael Fulbright <drmike@redhat.com>
5135 * src/io-jpeg.c: Added first cut at progressive jpeg loading.
5136 Currently does not handle either progressive jpeg files (jpeg
5137 files with multiple scans at different quality settings), but
5138 I plan on adding this support soon. These are fairly rare in
5139 my experience, so it shouldn't slow people down too much.
5140 Grayscale jpegs also don't work but that should be easy to fix.
5142 1999-10-29 Michael Fulbright <drmike@redhat.com>
5144 * src/testpixbuf.c: Added title to windows so you can identify
5145 progressive and file windows.
5147 1999-10-29 Michael Fulbright <drmike@redhat.com>
5149 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
5150 load the image handler when we determine the image type.
5152 * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
5153 previously static function load_image_handler () to
5154 a public function gdk_pixbuf_load_module (). It is needed in
5155 gdk-pixbuf-loader.c to load image handler modules. This function
5156 is different from gdk_pixbuf_get_module (), which only returns
5157 a reference to the required handler, because it actually loads
5158 the handler into memory. Both actions should possibly be combined
5159 in a convenience function since one w/o the other doesn't seem to
5162 1999-10-28 Jonathan Blandford <jrb@redhat.com>
5164 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
5167 1999-10-28 Federico Mena Quintero <federico@redhat.com>
5169 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
5170 function to render a portion of a pixbuf to a drawable. Ignores
5171 alpha information and takes in a GC.
5172 (gdk_pixbuf_render_to_drawable_alpha): New function to render a
5173 portion of a pixbuf to a drawable. It automatically creates a GC
5174 and a clipping mask for alpha pixbufs.
5176 1999-10-28 Jonathan Blandford <jrb@redhat.com>
5178 * src/gdk-pixbuf.h: turned convenience macros into convenience
5179 functions so some error checking could be added.
5181 * src/io-tiff.c (image_load_increment): started work on the tiff
5182 non-incremental loader.
5183 (image_begin_load): Finished the incremental loader.
5185 * src/io-gif.c (image_load_increment): started work on the gif
5188 * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
5190 1999-10-27 Federico Mena Quintero <federico@redhat.com>
5192 * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
5193 function to threshold a pixbuf's alpha channel into a bitmap.
5195 * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
5196 contemplate future extensions to ArtPixBuf's formats.
5198 * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
5200 * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
5201 macros to fetch the ArtPixBuf's fields.
5203 1999-10-27 Havoc Pennington <hp@pobox.com>
5205 * src/testpixbuf.c (main): Display the progressive load
5207 * src/io-png.c (setup_png_transformations): Break transformation
5208 code into separate function
5209 (png_info_callback): Use setup_png_transformations
5211 1999-10-27 Havoc Pennington <hp@pobox.com>
5213 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
5214 properly whether the XPM module has already been loaded
5215 (gdk_pixbuf_new_from_file): Check properly if loader module
5216 was already loaded (was checking if load symbol was present
5217 in order to decide whether to re-load; should check module !=
5218 NULL, then load != NULL)
5219 (image_handler_load): Check in present working directory,
5220 makes it easier to debug for now
5221 (file_formats): This array initializer was seriously on crack,
5222 was assigning a function pointer to a GModule*
5224 * src/testpixbuf.c (main): Change type of pixbuf_loader to
5227 1999-10-27 Havoc Pennington <hp@pobox.com>
5229 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
5230 Fix typo that prevented compilation
5231 (gdk_pixbuf_loader_destroy): ditto
5233 1999-10-27 Federico Mena Quintero <federico@redhat.com>
5235 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
5236 GdkPixbufLoader, not a GtkObject.
5237 (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
5238 (gdk_pixbuf_loader_get_type): Documented.
5239 (gdk_pixbuf_loader_class_init): Initialize the parent class
5241 (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
5242 class destroy function.
5243 (gdk_pixbuf_loader_new): Documented.
5244 (gdk_pixbuf_loader_finalize): Call the parent class finalize
5246 (gdk_pixbuf_loader_write): Use size_t for count.
5248 1999-10-27 Michael Fulbright <drmike@redhat.com>
5250 * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
5251 logic so we only try to close loader if it wasn't previously closed.
5253 1999-10-27 Michael Fulbright <drmike@redhat.com>
5255 * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
5256 pixbuf_loader properly initialized.
5258 * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
5261 1999-10-26 Jonathan Blandford <jrb@redhat.com>
5263 * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
5265 * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
5267 1999-10-26 Havoc Pennington <hp@pobox.com>
5269 * src/gdk-pixbuf-loader.h: fix signals
5271 * src/gdk-pixbuf-io.h: add new vtable fields
5274 1999-10-26 Jonathan Blandford <jrb@redhat.com>
5276 * src/gdk-pixbuf-loader.h: New Class. Beginning of progrssive
5279 1999-10-25 Federico Mena Quintero <federico@redhat.com>
5281 * configure.in (CFLAGS): Patch from Uwe Koloska
5282 <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
5284 1999-10-22 Havoc Pennington <hp@pobox.com>
5286 * src/io-xpm.c (mem_buffer): Clean up stupid
5287 increment-inside-array-dereference thing
5289 * src/testpixbuf.c: Add XPM data tests.
5291 * src/io-xpm.c: Make the XPM data buffer const, fix const
5292 correctness throughout the code.
5294 1999-10-22 Havoc Pennington <hp@pobox.com>
5296 * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
5298 1999-10-22 Havoc Pennington <hp@pobox.com>
5300 * src/io-xpm.c (image_load_xpm_data): Export this symbol for
5301 loading an XPM from memory.
5303 * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
5304 function, loads pixbuf from xpm data
5305 (image_handler_load): Add g_return_if_fail() to ensure the same
5306 module isn't loaded twice. Add g_module_symbol() to scan for XPM
5309 1999-10-22 Federico Mena Quintero <federico@redhat.com>
5311 * src/io-png.c (image_load): Patch from Kristian Hogsberg
5312 Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
5313 buffers; the rows can be read in directly into the main pixel
5316 1999-10-20 Federico Mena Quintero <federico@redhat.com>
5318 * src/gdk-pixbuf-io.c (image_handler_load): Free path.
5320 1999-10-20 Federico Mena Quintero <federico@redhat.com>
5322 * configure.in: Bumped version number to 0.3.
5324 * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
5325 version number for the library.
5327 1999-10-20 Federico Mena Quintero <federico@redhat.com>
5329 * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field. Now
5330 all memory management of the buffer is done by libart.
5332 * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
5333 Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
5335 * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
5336 terms of the libart functions. Removed the old code.
5338 * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
5339 symbols. Saving will not be implemented in GdkPixbuf.
5341 * src/io-gif.c: Removed the saving stub.
5342 (image_load): Fixed memory management to fail gracefully if we run
5343 out of memory while loading the image. Close the gif file when we
5344 are done. This still needs more error handling for the DGif
5347 * src/io-jpeg.c (image_load): Some robustness fixes.
5349 * src/io-png.c: Removed the saving stuff.
5350 (image_load): Some memory management fixes.
5352 * src/io-tiff.c (image_load): Ditto.
5354 * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
5356 1999-10-18 Havoc Pennington <hp@pobox.com>
5358 * subautogen.sh: New name for macros/autogen.sh
5360 * autogen.sh: use subautogen.sh
5362 1999-10-18 Federico Mena Quintero <federico@redhat.com>
5364 * src/*: Reindented to use the GNOME Indentation. Renamed
5365 GdkPixBuf to GdkPixbuf, for consistency with the function names
5366 (and it is also easier to type) :-)
5368 1999-10-18 Havoc Pennington <hp@pobox.com>
5370 * configure.in: Use AM_PATH_GLIB instead of glib-config directly
5372 * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
5374 1999-10-18 Havoc Pennington <hp@pobox.com>
5376 * Makefile.am (SUBDIRS): Remove "macros"
5378 * configure.in: Don't use GNOME_INIT, handle case where we are
5379 inside gnome-libs. AM_PATH_GTK for the GIF test
5381 * src/Makefile.am: Change flags to work without libgnomeui,
5382 comment out testpixbuf for now
5384 1999-10-18 Federico Mena Quintero <federico@redhat.com>
5386 * configure.in: Use $GTK_LIBS as the extra libs when checking for
5387 libgif/libungif, as they need the X libraries. Fixes bug #2472.
5389 1999-10-10 Cody Russell <bratsche@dfw.net>
5390 * src/gdk-pixbuf-drawable.c: core function now determines whether
5391 the requested geometry is on screen or not, and if some is not
5392 then the request is clamped to geometry that is on the screen.
5394 Changed 'pixbuf' to 'art_pixbuf' in core function.
5396 1999-10-08 Michael Fulbright <drmike@redhat.com>
5398 * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
5400 * src/testpifbuf: Changed test program to display cdrom from rgb data
5401 if no filename given to test program.
5403 1999-10-07 Cody Russell <bratsche@dfw.net>
5404 * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
5405 them, but I wrote them).
5407 * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
5410 * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
5411 libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
5413 * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
5416 * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
5417 GdkPixBuf* instead of ArtPixBuf*.
5419 1999-09-22 Michael Meeks <michael@nuclecu.unam.mx>
5421 * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
5422 (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
5424 * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
5425 GdkPixBufUnrefFunc + gdk_pixbuf_new.
5427 * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
5429 * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
5431 * src/io-tiff.c (image_load): ditto + fix leak
5433 * src/io-png.c (image_load): ditto + add more exit points; monitor.png
5434 crashes this module ( add warning :-)
5436 * src/io-bmp.c (image_load): ditto.
5438 * src/io-gif.c (image_load): ditto.
5440 1999-09-18 Michael Meeks <michael@nuclecu.unam.mx>
5442 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
5443 it doesn't crash scaling with alpha.
5445 1999-09-17 Federico Mena Quintero <federico@redhat.com>
5447 * src/io-bmp.c (image_load): Set the initial ref_count to 1.
5449 * src/io-gif.c (image_load): Likewise.
5451 * src/io-jpeg.c (image_load): Likewise.
5453 * src/io-png.c (image_load): Likewise.
5455 * src/io-tiff.c (image_load): Likewise.
5457 * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
5459 * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
5460 for the ref_count to be != 0.
5462 * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
5464 (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
5466 1999-08-09 Federico Mena Quintero <federico@nuclecu.unam.mx>
5468 * src/io-png.c (image_save): Fixed compiler warnings. Fixed write
5469 to unallocated memory (row_ptr), and fixed its type as well. Take
5470 into account the ArtPixbuf's rowstride when assigning the row
5473 * src/gdk-pixbuf.c: Fixup includes.
5475 * src/gdk-pixbuf-io.c: Likewise.
5477 Sat Jul 31 19:19:47 CEST 1999
5479 * src/gdk-pixbuf-io.c:
5480 * src/io-png.c: Fixed two obvious C syntax bugs
5482 1999-07-29 Mark Crichton <crichton@gimp.org>
5484 * src/io-png.c (image_save): Added PNG saving function
5486 * src/gdk-pixbuf-io.c: Changed image_save function format. Now it's
5487 image_save(GdkPixBuf *p, FILE *f, ...)
5490 1999-07-26 Michael Zucchi <mzucchi@denr.sa.gov.au>
5492 * src/Makefile.am (*_LIB): Only build the relevant loaders which
5493 require extra libraries if we actually have those libraries.
5495 1999-07-23 Richard Hestilow <hestgray@ionet.net>
5497 * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
5498 * gdk_pixbufConf.sh.in: Added for gnome-config
5500 * configure.in: Modified to generate gdk_pixbufConf.sh
5502 1999-07-20 Mark Crichton <crichton@gimp.org>
5504 * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation. Now a bbox
5505 calculation needs to be done.
5507 1999-07-18 Larry Ewing <lewing@gimp.org>
5512 * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
5513 error cases but one or two in the common case. There are probably
5514 a few small ones left.
5516 1999-07-18 Mark Crichton <crichton@gimp.org>
5518 * configure.in: removed version.h.
5520 * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
5523 1999-07-17 Mark Crichton <crichton@gimp.org>
5525 * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
5526 (gdk_pixbuf_rotate): Added pixbuf rotation code.
5527 (gdk_pixbuf_scale): Changed // comments to /* */
5529 * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
5532 1999-07-16 Larry Ewing <lewing@gimp.org>
5534 * src/testpixbuf.c (expose_func): reverted the expose everything
5535 changes, I'm not sure why these went in.
5536 (config_func): bring this up to date with the new pixbuf_scale
5539 * src/gdk-pixbuf-io.c: added a couple of warnings to the module
5540 loading code so that poeple can diagnose problems better.
5542 * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
5543 no longer allocates a new pixbuf, which make things nicer for the
5544 rest of the code. Unfortunately there is still a problem with
5545 scaling rgba images.
5547 1999-07-16 Mark Crichton <crichton@gimp.org>
5549 * src/testpixbuf.c (config_func): ConfigureEvent handler. This
5550 calls gdk_pixbuf_scale. However, something is not working.
5551 N.B.: current pixmap is now stored in user_data with a key of
5554 * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
5555 Something is still borked, however.
5557 1999-07-15 Larry Ewing <lewing@gimp.org>
5559 * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
5562 * src/testpixbuf.c (main): fix up the file routines a little so
5563 that you can load multiple files given the file names
5565 1999-07-14 Larry Ewing <lewing@gimp.org>
5567 * src/testpixbuf.c (expose_func): added an almost proper expose
5568 handler for testpixbuf
5570 1999-07-13 Mark Crichton <crichton@gimp.org>
5572 * configure.in: Fixed GIF check. Replaced " with '
5573 * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
5575 1999-07-13 Mark Crichton <crichton@gimp.org>
5577 * configure.in: I am a bonehead. Added gif-lib check.