]> Pileus Git - ~andy/gtk/blob - gdk-pixbuf/ChangeLog
Add support for 512x512 Leopard icons, using the ic09 iconType
[~andy/gtk] / gdk-pixbuf / ChangeLog
1 2007-11-20  Bastien Nocera  <hadess@hadess.net>
2
3         * io-icns.c: (load_resources): Add support for 512x512 Leopard
4         icons, using the ic09 iconType
5
6 2007-11-20  Bastien Nocera  <hadess@hadess.net>
7
8         * Makefile.am:
9         * io-icns.c: Add icns (MacOS X icons) loader, based on work by
10         Lyonel Vincent <lyonel@ezix.org> (Closes: #395738)
11
12 2007-11-10  Matthias Clasen <mclasen@redhat.com>
13
14         * io-jpeg.c: Avoid unaligned accesses that cause
15         problems on some architectures.  (patch by David Miller)
16
17 2007-10-16  Matthias Clasen <mclasen@redhat.com>
18
19         * === Released 2.12.1 ===
20
21 2007-10-16  Matthias Clasen  <mclasen@redhat.com>
22
23         * io-wbmp.c: Use better magic.  (#339877, Bastien Nocera)
24
25 2007-09-13  Matthias Clasen  <mclasen@redhat.com>
26
27         * === Released 2.12.0 ===
28
29 2007-09-13  Matthias Clasen  <mclasen@redhat.com>
30
31         * gdk-pixbuf-scaled-anim.c (get_scaled_pixbuf): Don't leak 
32         options.  
33
34 2007-09-08  Matthias Clasen  <mclasen@redhat.com>
35
36         * io-ani.c: Fix some possible crashes.  (#468832, Michal Luczaj)
37
38 2007-09-07  Matthias Clasen  <mclasen@redhat.com>
39
40         * io-tga.c (gdk_pixbuf__tga_stop_load): Handle pbuf 
41         being NULL.  (#468801, Sebastien Bacher)
42
43 2007-07-21  Matthias Clasen  <mclasen@redhat.com>
44
45         * === Released 2.11.6 ===
46
47 Sat Jul  7 17:34:33 2007  Tim Janik  <timj@gtk.org>
48
49         * gdk-pixbuf-scale.c: docu fixes from Guillaume Cottenceau, #454596.
50
51 2007-07-06  Michael J. Chudobiak  <mjc@cvs.gnome.org>
52
53         * io-tiff.c: (tiff_image_parse): Added a comment to explain
54         the signal used to stop parsing early.
55
56 2007-07-05  Matthias Clasen  <mclasen@redhat.com>
57
58         * io-tiff.c: Revert the last change, it was wrong
59         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Redo the last
60         change in a different way.
61
62 2007-07-04  Tor Lillqvist  <tml@novell.com>
63
64         * pixops/Makefile.am (timescale_LDADD): Use GDK_PIXBUF_DEP_LIBS
65         instead of GDK_PIXBUF_EXTRA_LIBS here, too. 
66
67 2007-07-03  Matthias Clasen  <mclasen@redhat.com>
68
69         * io-tiff.c (tiff_image_parse): Always set an error
70         when returning NULL.  (453365, Michael Chudobiak)
71
72 2007-07-03  Matthias Clasen  <mclasen@redhat.com>
73
74         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Be
75         more careful when calling g_propagate_error().  (#453365,
76         Michael Chudobiak)
77
78 2007-07-02  Matthias Clasen  <mclasen@redhat.com>
79
80         * === Released 2.11.5 ===
81
82 2007-07-02  Matthias Clasen <mclasen@redhat.com>
83
84         * gdk-pixbuf.c (gdk_pixbuf_get_option): Document the
85         "orientation" option.
86
87         * gdk-pixbuf.symbols:
88         * gdk-pixbuf-core.h:
89         * gdk-pixbuf-util.c (gdk_pixbuf_apply_embedded_orientation):
90         New function to handle Exif orientation information in 
91         tiff and jpeg images.  (#439567, Michael Chudobiak)
92
93 2007-06-19  Matthias Clasen <mclasen@redhat.com>
94
95         * === Released 2.11.4 ===
96
97 2007-06-15  Matthias Clasen  <mclasen@redhat.com>
98
99         * === Released 2.11.3 ===
100
101 2007-06-15  Hans Breuer  <hans@breuer.org>
102
103         * makefile.msc : updated
104         * io-jpeg.c : use g_snprintf
105
106 2007-06-12  Behdad Esfahbod  <behdad@gnome.org>
107
108         * io-pnm.c (explode_bitmap_into_buf): Fix out-of-bound access.
109         (#440918, Matthias Kilian)
110
111 2007-06-06  Matthias Clasen  <mclasen@redhat.com>
112
113         * === Released 2.11.2 ===
114
115 2007-06-04  Matthias Clasen  <mclasen@redhat.com>
116
117         * === Released 2.11.1 ===
118
119 2007-05-30  Chris Wilson  <chris@chris-wilson.co.uk>
120
121         * io-jpeg.c (gdk_pixbuf__jpeg_image_stop_load):
122         Supply the current GError for fatal_error_handler(). (#441443)
123
124 2007-05-24   Matthias Clasen  <mclasen@redhat.com>
125
126         * === Released 2.11.0 ===
127
128 2007-05-23  Matthias Clasen  <mclasen@redhat.com>
129
130         * gdk-pixbuf.symbols: Add missing scaled-anim entries.
131
132 2007-05-18  Michael J. Chudobiak  <mjc@cvs.gnome.org>
133
134         * gdk-pixbuf-scaled-anim.c: (get_scaled_pixbuf):
135         Preserve pixbuf options when generating a new scaled pixbuf.
136
137         * io-jpeg.c: (get_orientation), (gdk_pixbuf__jpeg_image_load),
138         (gdk_pixbuf__jpeg_image_load_increment): Read the exif
139         orientation tag and associate it with the "orientation" pixbuf
140         option. Renders libexif unnecessary in some applications.
141
142         * io-tiff.c: (tiff_image_parse): Read the tiff orientation tag,
143         compensate for the partial rotations performed by libtiff,
144         and generate an "orientation" option for the pixbuf.
145
146 2007-04-29  Matthias Clasen <mclasen@redhat.com>
147
148         * io-jpeg.c: Remove a pointless check from the previous
149         commit that added a new string.
150
151 2007-04-28  Matthias Clasen <mclasen@redhat.com>
152
153         * io-png.c:
154         * io-jpeg.c: Accept unknown parameters with a warning 
155         when saving.  (#405539, Daniel Atallah)
156
157 2007-04-25  Matthias Clasen <mclasen@redhat.com>
158
159         * gdk-pixbuf-simple-anim.c (gdk_pixbuf_simple_anim_add_frame):
160         Don't double the delay time of the first frame.  (#431997,
161         Bj?rn Lindqvist)
162
163 2007-04-25  Matthias Clasen <mclasen@redhat.com>
164
165         * gdk-pixbuf-scaled-anim.c (gdk_pixbuf_scaled_anim_iter_finalize):
166         Chain up.  (#433125, Christian Persch)
167
168 Wed Mar 28 15:27:35 2007  Tim Janik  <timj@imendio.com>
169
170         * io-jpeg.c: applied JPEG loader fix from maemo. this fix makes sure
171         stop_load() doesn't forget about its return value, and it pulls the
172         check for infinite looping out of an else branch in load_increment()
173         so it runs unconditionally, fixes #397643.
174
175 2007-03-08  Matthias Clasen <mclasen@redhat.com>
176
177         * gdk-pixbuf-scaled-anim.[hc]: Implement an animation
178         wrapper for scaling animations.  
179
180         * gdk-pixbuf-loader.c: Use GdkPixbufScaledAnim to scale
181         animations.  (#335752, Mike Morrison)
182
183         * Makefile.am: Glue.
184
185 2007-03-06  Tor Lillqvist  <tml@novell.com>
186
187         * Makefile.am: Further fixes for building on Win32 outside
188         srcdir. (#413492, Mathias Hasselmann)
189
190 2007-03-05  Matthias Clasen <mclasen@redhat.com>
191
192         * io-tga.c: (gdk_pixbuf__tga_stop_load): Flip rle-encoded
193         images even if they haven't been completely loaded.  (#347106)
194
195 2007-02-27  Felix Riemann  <friemann@svn.gnome.org>
196
197         * io-ico.c: (fill_info): Add image/x-ico to supported mime types.
198         Fixes bug #393599.
199
200 2007-02-16  Matthias Clasen  <mclasen@redhat.com>
201
202         * io-png.c: Don't leak in the error path.  (#405539, Daniel Atallah)
203
204 2007-02-07  Chris Wilson  <chris@chris-wilson.co.uk>
205
206         * io-jpeg.c: (gdk_pixbuf__jpeg_image_load),
207         (gdk_pixbuf__jpeg_image_load_increment): Set the GError
208         if the image is zero length. (#405327)
209
210 2007-02-06  Matthias Clasen  <mclasen@redhat.com>
211
212         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Protect
213         against stop_load begin broken.  (#403255, Lucas Mazzardo Veloso)
214
215 2007-01-21  Matthias Clasen  <mclasen@redhat.com>
216
217         * io-gif.c (gdk_pixbuf__gif_image_stop_load): Return an
218         error if we didn't successfully load a frame.  (#394190,
219         Felix Riemann)
220
221 2007-01-17  Michael Natterer  <mitch@imendio.com>
222
223         Patch taken from maemo-gtk:
224
225         * io-png.c (png_text_to_pixbuf_option): don't call g_convert() on
226         ASCII strings.
227
228         (png_info_callback): set an error when the size_func would scale
229         the pixbuf away completely.
230
231 2007-01-16  Matthias Clasen  <mclasen@redhat.com>
232
233         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Just
234         call gdk_pixbuf_loader_close to close the loader in
235         the error case. Fixes memory leaks in the error case,
236         pointed out by David Necas.
237
238 2007-01-04  Matthias Clasen  <mclasen@redhat.com>
239
240         * io-bmp.c (OneLine32): Fix a warning
241
242 2006-12-22  Matthias Clasen  <mclasen@redhat.com>
243
244         * io-bmp.c (decode_bitmasks): Handle bmps
245         with more than 8 bits per channel.  (#172584,
246         David Costanzo)
247
248         * io-bmp.c: Handle offsets more carefully. (#172188,
249         David Costanzo)
250
251         * io-bmp.c: Handle v5 and OS/2 v2 bmps.
252
253         * io-bmp.c: Handle alpha masks in v4 and v5 bmps.
254
255 2006-12-21  Matthias Clasen  <mclasen@redhat.com>
256
257         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Emit
258         the closed signal when closing the loader, pointed out
259         by David Necas.
260
261 2006-12-21  Matthias Clasen  <mclasen@redhat.com>
262
263         * io-gif.c (gif_get_lzw): Handle invalid gif animations
264         a little bit more robustly.  (#357974, Vassilis Pandis,
265         patch by Felix Riemann)
266
267         * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data):
268         * gdk-pixbuf.c (gdk_pixbuf_new): Remove redundant size
269         checks, and document that width, height must be > 0.
270         (#343330, Felix Riemann)
271
272         * Makefile.am: Link against GLib.  (#341158, Alexey Rusakov)
273
274 2006-12-19  Matthias Clasen  <mclasen@redhat.com>
275
276         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Don't
277         spew a warning if the printer is already closed.
278
279 2006-12-09  Matthias Clasen  <mclasen@redhat.com>
280
281         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Behave as
282         documented and close the loader when returning FALSE.
283
284 2006-10-29  Tor Lillqvist  <tml@novell.com>
285
286         * pixbufloader_*.def
287         * Makefile.am (EXTRA_DIST): Remove pixbufloader_*.def, they are
288         not used. (#365388) They were all identical, and exported just two
289         symbols, so if somebody needs them for a MSVC build that doesn't
290         use built-in modules it's trivial to hack makefile.msc to produce
291         a common .def file for the loaders. The two symbols that need to
292         be exported are fill_info and fill_vtable.
293
294 2006-10-11  Tor Lillqvist  <tml@novell.com>
295
296         Enable having some loaders built-in even if loading the others
297         dynamically. Have loaders in the same order as in configure.in in
298         all places where they are handled/listed.
299
300         * Makefile.am: Define the STATIC_FOO_LIB and FOO_LIB macros
301         conditionally depending on whether said loader is built-in or
302         not. Use the names libstatic-pixbufloader-foo.la instead of
303         libpixbufloader-static-foo.la for the built-in ones so that the
304         "echo libpixbufloader-*.la" won't match them.
305         
306         * gdk-pixbuf-io.c: Reorganize code as to plumb the built-in
307         loaders also if USE_GMODULE. Don't warn about a missing
308         gdk-pixbuf.loaders file if we have at least one included loader.
309         
310         * gdk-pixbuf-private.h
311         * io-*.c: Don't define a generic MODULE_ENTRY, as we can't use it
312         in the loaders anyway. Each loader needs to check if INCLUDE_foo
313         is defined.
314
315 2006-10-08  Matthias Clasen  <mclasen@redhat.com>
316
317         * Apply a cleanup patch by Kjartan Maraas  (#341812) 
318
319 2006-09-06  Matthias Clasen  <mclasen@redhat.com>
320
321         * io-pnm.c: Simplify and fix reading of ASCII images. 
322
323 2006-08-17  Matthias Clasen  <mclasen@redhat.com>
324
325         * === Released 2.10.2 ===
326
327 2006-08-16  Matthias Clasen  <mclasen@redhat.com>
328
329         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale): 
330         Stop loading an animation if the first frame is complete.
331         (#350911, Christian Neumair)
332
333 2006-07-23  Matthias Clasen  <mclasen@redhat.com>
334         
335         * === Released 2.10.1 ===
336
337 2006-07-16  Matthias Clasen  <mclasen@redhat.com>
338
339         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module) 
340         (gdk_pixbuf_loader_write, gdk_pixbuf_loader_close) 
341         (gdk_pixbuf_loader_ensure_error): Put the code to protect
342         against broken loaders that forget to set error in an
343         auxiliary function and call it in more places.  (#346428,
344          Catmur)
345
346         * io-xbm.c: Fix incremental loading of 
347         xbms.  (#346427, Ed Catmur)
348         Also make the xbm loader accept const variations.
349
350 2006-07-02  Matthias Clasen  <mclasen@redhat.com>
351         
352         * === Released 2.10.0 ===
353
354 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
355         
356         * pixops/*.S: NetBSD portability fixes.  (#346374,
357         Thomas Klausner)
358         
359         * === Released 2.9.4 ===
360
361 2006-06-12  Matthias Clasen  <mclasen@redhat.com>
362
363         * === Released 2.9.3 ===
364
365 2006-06-05  Matthias Clasen  <mclasen@redhat.com>
366
367         * === Released 2.9.2 ===
368
369 2006-05-16  Matthias Clasen  <mclasen@redhat.com>
370
371         * === Released 2.9.1 ====
372
373 2006-05-04  Matthias Clasen  <mclasen@redhat.com>
374
375         * === Released 2.9.0 ===
376
377 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
378
379         * gdk-pixbuf-loader.c:
380         * gdk-pixbuf.c: Use G_DEFINE_TYPE.
381
382         * gdk-pixbuf.c: No point in making the error path fast by 
383         caching quarks.
384
385 2006-03-24  Matthias Clasen  <mclasen@redhat.com>
386
387         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Remove a
388         pointless check, pointed out by Kjartan Maraas.
389
390 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
391
392         * gdk-pixbuf-loader.c: Add some documentation about
393         supported image formats, and how to find out about them.
394         (#335536, Murray Cumming)
395
396 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
397
398         * gdk-pixbuf-animation.c: 
399         * gdk-pixbuf-io.c: 
400         * io-xpm.c: 
401         * io-xbm.c: 
402         * io-gif.c: Always save errno to a temporary before making
403         other calls.  (#335179, Morten Welinder)
404
405 2006-03-14  Matthias Clasen  <mclasen@redhat.com>
406
407         * io-gif.c (gdk_pixbuf__gif_image_load): Add a shortcut
408         to stop the gif mainloop after the first frame, if that
409         is all we are interested in.  (#334538)
410
411 2006-03-03  Matthias Clasen  <mclasen@redhat.com>
412
413         * io-pnm.c: Support pnm files with maxval > 255.
414         (#327560, Matthijs Douze)
415
416 2006-03-03  Matthias Clasen  <mclasen@redhat.com>
417
418         * io-pcx.c (pcx_load_palette_8): Fix incremental loading
419         of 8-bit pcx files.  (#148518, Magnus Bergmann)
420
421 2006-02-28  Anders Carlsson  <andersca@imendio.com>
422
423         * gdk-pixbuf-io.c:
424         Update documentation now that tiff supports saving.
425         
426         * io-tiff.c:
427         (tiff_load_read):
428         (tiff_load_write):
429         (tiff_load_seek):
430         (tiff_load_close):
431         (tiff_load_size):
432         (tiff_load_map_file):
433         (tiff_load_unmap_file):
434         (gdk_pixbuf__tiff_image_stop_load):
435         Rename callback functions that are used during loading.
436         
437         (tiff_save_read):
438         (tiff_save_write):
439         (tiff_save_seek):
440         (tiff_save_close):
441         (tiff_save_size):
442         (create_save_context):
443         (free_save_context):
444         New callback functions which operate on a memory buffer.
445         
446         (gdk_pixbuf__tiff_image_save_to_callback):
447         Implement saving of pixbufs to tiffs.
448         
449         (save_to_file_cb):
450         (gdk_pixbuf__tiff_image_save):
451         New function that saves a pixbuf to a FILE handle. Uses
452         save_to_callback.
453         
454         (fill_vtable):
455         Add new functions.
456         
457         (fill_info):
458         Change flags since this module supports writing now.
459         
460 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
461
462         * io-jpeg.c:
463         * io-png.c:
464         * io-pnm.c:
465         * io-tiff.c:
466         * io-xbm.c:
467         * io-xpm.c: Always check for NULL when using callbacks.
468         (#330563, Benjamin Otte)
469
470 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
471
472         * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't cast
473         the results of g_new().  (#327423, Morten Welinder)
474
475 2006-01-12  Federico Mena Quintero  <federico@ximian.com>
476
477         * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Clarify
478         the docs ("darkened/brightened" is not "saturation").
479
480 Fri Dec 30 00:59:21 2005  Jonathan Blandford  <jrb@redhat.com>
481
482         * gdk-pixbuf-io.c (gdk_pixbuf_format_get_license): minor doc edit.
483
484 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
485
486         * gdk-pixbuf-io.c (_gdk_pixbuf_load_module_unlocked): Use
487         G_MODULE_BIND_LOCAL when opening modules.
488
489 2005-12-14  Michael Natterer  <mitch@imendio.com>
490
491         * io-jpeg.c (gdk_pixbuf__jpeg_image_load_lines): new utility
492         function which factors out massive code duplication from the
493         commit below.
494
495 2005-12-14  Michael Natterer  <mitch@imendio.com>
496
497         * io-jpeg.c: applied patch from maemo-gtk which avoids the
498         allocation of an intermediate buffer for non-progressive
499         jpegs. Fixed bug #305894.
500
501 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
502
503         * io-xpm.c: Fix several integer overflows which have been
504         reported as CVE-2005-3186 and CVE-2005-2975.
505
506 2005-10-12  Matthias Clasen  <mclasen@redhat.com>
507
508         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Only call
509         gdk_pixbuf_loader_eat_header_write() when count > 0.  (#318589,
510         Bogdan Nicula)
511
512 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
513
514         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): 
515         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): 
516         * gdk-pixbuf-loader.c: Use a 1k buffer for sniffing image formats,
517         instead of 128 or 256 bytes.  (#317225, Sebastien Bacher, 
518         Dom Lachowicz)
519
520 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
521
522         * io-tga.c (parse_rle_data): Remove unused variable
523         pbuf_count.  (#315282, Kjartan Maraas)
524
525 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
526
527         * Makefile.am (gdk-pixbuf-enum-types.c): Intern type
528         names in code generated by glib-mkenums, too.
529
530         * io-ani-animation.c (gdk_pixbuf_ani_anim_iter_get_type) 
531         (gdk_pixbuf_ani_anim_get_type): 
532         * io-gif-animation.c (gdk_pixbuf_gif_anim_get_type) 
533         (gdk_pixbuf_gif_anim_iter_get_type): 
534         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): 
535         * gdk-pixbuf.c (gdk_pixbuf_get_type): 
536         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type): 
537         Intern type names before registering the type to avoid 
538         unnecessary copies.
539
540 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
541
542         * gdk-pixbuf-io.c (format_check): Make this work again.
543
544         * io-png.c (png_save_to_callback_write_func): Add a cast
545         to avoid compiler warnings.
546
547         * pixops/timescale.c (main): Declare src_buf, dest_buf as
548         unsigned to avoid compiler warnings.
549
550         * gdk-pixbuf-io.h: Declare the prefix and mask members of
551         GdkPixbufModulePattern as char*, to avoid compiler warnings.
552
553         * io-ani.c (ani_load_chunk): Use g_try_new() in some places.
554
555 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
556
557         * === Released 2.8.2 ===
558
559         * === Released 2.8.1 ===
560
561 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
562
563         * io-ico.c (DecodeHeader): Check for overflow in one more
564         place.  (#313818, Tommi Komulainen)
565
566 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
567
568         * io-jpeg.c (fatal_error_handler): Pay attention to the 
569         libjpeg error code and report OOM errors as such.  (#312674,
570         Tommi Komulainen)
571
572 2005-08-13  Matthias Clasen  <mclasen@redhat.com>
573
574         * === Released 2.8.0 ===
575
576 2005-08-07  Matthias Clasen  <mclasen@redhat.com>
577
578         * abicheck.sh: Also check exported variables.
579
580 2005-08-02  Matthias Clasen  <mclasen@redhat.com>
581
582         * === Released 2.7.5 ===
583
584 2005-07-22  Matthias Clasen  <mclasen@redhat.com>
585
586         * === Released 2.7.4 === 
587
588 2005-07-22  Matthias Clasen  <mclasen@redhat.com>
589                 
590         * queryloaders.c: Accept '*' in masks. (pointed out
591         by William Jon McCann)
592
593         * gdk-pixbuf-io.c (format_check): Make anchored patterns work 
594         as they did before.  (#311011, William Jon McCann)
595
596 2005-07-22  Matthias Clasen  <mclasen@redhat.com>
597
598         * gdk-pixbuf-io.c (format_check): Interpret patterns where
599         the first byte of the mask is '*' as unanchored.  (#311011)
600         (gdk_pixbuf_new_from_file): Use the first 256 bytes for
601         sniffing the file format.
602
603 2005-07-15  Matthias Clasen  <mclasen@redhat.com>
604
605         * === Released 2.7.3 ===
606         
607 2005-07-12  Matthias Clasen  <mclasen@redhat.com>
608
609         * gdk-pixbuf-i18n.h: 
610         * pixops/*: Add copyright and license information.
611
612 2005-07-09  Tor Lillqvist  <tml@novell.com>
613
614         * Makefile.am: Don't use the scripts in build/win32 to compile the
615         rc file into a resource object file. (This means we lose the
616         build number increment magic, but I doubt it was that useful
617         anyway.) Instead use windres directly. To pass the normal .o file
618         produced by windres through libtool, which would want a .lo file,
619         pass it directly to the linker using a -Wl option.
620
621         * gdk_pixbuf.rc.in: Replace BUILDNUMBER with 0.
622
623 2005-07-08  Matthias Clasen  <mclasen@redhat.com>
624         
625         * === Released 2.7.2 ===
626
627 2005-07-01  Matthias Clasen  <mclasen@redhat.com>
628
629         * === Released 2.7.1 ===
630         
631 2005-07-01  Matthias Clasen  <mclasen@redhat.com>
632
633         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale): Allow
634         -1 for width/height and interpret them as "not constrained".
635         (#309258, Mark McLoughlin)
636
637 2005-06-26  Tor Lillqvist  <tml@novell.com>
638
639         * Makefile.am: Current GNU tools do understand the PRIVATE
640         keyword, so no need to remove those entries from the import
641         library. libtool installs the .dll.a import library itself, so no
642         need to do it here. Do install the .def file.
643
644 2005-06-22  Matthias Clasen  <mclasen@redhat.com>
645
646         * gdk-pixbuf-i18n.h: Use glib-i18n.h
647
648 2005-06-20  Matthias Clasen  <mclasen@redhat.com>
649
650         * === Released 2.7.0 ===
651
652 2005-06-15  Matthias Clasen  <mclasen@redhat.com>
653
654         * gdk-pixbuf.symbols:
655         * gdk-pixbuf-simple-anim.h: Add 
656         gdk_pixbuf_simple_anim_iter_get_type()
657
658 2005-06-08  Matthias Clasen  <mclasen@redhat.com>
659
660         * io-pnm.c (pnm_read_next_value): Check for overflow.
661         (#306394, Morten Welinder)
662
663 2005-05-27  Matthias Clasen  <mclasen@redhat.com>
664
665         * io-bmp.c: Accept the 108 byte header of BMP v4.  (#168799)
666
667 2005-05-25  Matthias Clasen  <mclasen@redhat.com>
668
669         * gdk-pixbuf.symbols: 
670         * gdk-pixbuf-simple-anim.[hc]: No need to expose the iter
671         subclass at all in the headers.
672
673         * Makefile.am: Add new files. 
674
675         * gdk-pixbuf.symbols: Add new api.
676
677         * gdk-pixbuf.h: Include gdk-pixbuf-simple-anim.h here.
678
679         * gdk-pixbuf-simple-anim.[hc]: Add a way to construct
680         simple animations out of pixbufs.  (#135161, Dom Lachowicz)
681
682 2005-05-24  Sven Neumann  <sven@gimp.org>
683
684         * io-png.c: allow to specify the PNG compression level by passing
685         a "compression" parameter to the PNG save function (bug #305337).
686
687         * gdk-pixbuf-io.c (gdk_pixbuf_save): document the new parameter.
688
689 2005-04-09  Matthias Clasen  <mclasen@redhat.com>
690         
691         * Makefile.am: Use $(NM), not nm directly. (#301299, 
692         Nguyen Thai Ngoc Duy)
693
694         * io-bmp.c (gdk_pixbuf__bmp_image_save_to_callback): 
695         Don't overflow the stack.  (Jakub Jelinek, Arjan van de Ven)
696
697 2005-04-08  Matthias Clasen  <mclasen@redhat.com>
698
699         * io-pcx.c: No debugging output, please. (#173107,
700         John Ellis)
701
702 2005-04-07  Matthias Clasen  <mclasen@redhat.com>
703
704         * io-bmp.c (DecodeColormap): Initialize the colormap to 
705         zero.  (#171762, David Costanzo)
706
707 2005-03-30  Matthias Clasen  <mclasen@redhat.com>
708
709         * io-bmp.c: Avoid bus errors due to unaligned access. (#168173,
710         Morten Welinder, Ivan Wong)
711
712 2005-03-29  Matthias Clasen  <mclasen@redhat.com>
713
714         * io-tga.c (parse_rle_data): Fix the update areas for incremental
715         loading of compressed tgas.  (#171883, David Costanzo)
716
717 2005-03-27  Matthias Clasen  <mclasen@redhat.com>
718
719         * io-bmp.c (DoCompressed): Use the correct update regions for
720         compressed bmps.  (#150664, Owen Taylor, test images provided
721         by David Costanzo)
722
723 Sun Mar 27 19:59:52 2005  Manish Singh  <yosh@gimp.org>
724
725         * io-bmp.c (grow_buffer): reject 0-sized buffers as corrupt header
726         data. Fixes bug #171707.
727
728 2005-03-25  Matthias Clasen  <mclasen@redhat.com>
729
730         * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use canonical
731         property names.
732
733 2005-03-21  Matthias Clasen  <mclasen@redhat.com>
734
735         * gdk-pixbuf.c (gdk_pixbuf_class_init): Mark param spec strings
736         as static.
737
738 2005-03-14  Matthias Clasen  <mclasen@redhat.com>
739
740         Make PLT-reduction work with gcc4, and don't include
741         everything in gdk-pixbuf-alias.h:
742         
743         * gdk-pixbuf.symbols: Group symbols by header and source file.
744         * /makegdkpixbufalias.pl: Protect definitions by the same 
745         preprocessor symbols used to guard the headers. Move
746         the alias declarations to a separate file which is 
747         produced when calling makegdkpixbufalias.pl -def
748         * Makefile.am (gdk-pixbuf-aliasdef.c): Add a rule to generate 
749         this file.
750         * *.c: Include gdk-pixbuf-alias.h after the other headers,
751         include gdk-pixbuf-aliasdef.c at the bottom.
752
753 2005-03-10  Tor Lillqvist  <tml@novell.com>
754
755         * gdk-pixbuf-core.h
756         * gdk-pixbuf-io.c
757         * gdk-pixbuf.symbols: Implement DLL ABI stablility for
758         gdk_pixbuf_save() and gdk_pixbuf_savev(). (#167973)
759
760 2005-03-09  Matthias Clasen  <mclasen@redhat.com>
761
762         * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Fix 
763         a C99ism.  (#169741, Morten Welinder)
764
765 2005-03-08  Matthias Clasen  <mclasen@redhat.com>
766
767         * gdk-pixbuf.c (gdk_pixbuf_class_init): Use canonical
768         form of the name when registering properties. 
769
770         * gdk-pixbuf.symbols: Add the new attributes here, too.
771         
772         * gdk-pixbuf-core.h: Use G_GNUC_NULL_TERMINATED where
773         appropriate.  (#165682, Marc Meissner)
774
775 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
776
777         * io-xpm.c: Use a generated table of offsets
778         into a big const string to avoid relocations
779         in the rgb color table. (#168901, Tommi Komulainen)
780         
781         * gen-color-table.pl: Script to generate the table,
782         copied from Owen Taylors script by the same name
783         in Pango.
784         
785         * xpm-color-table.h: The generated table.
786
787 2005-03-03  Matthias Clasen  <mclasen@redhat.com>
788
789         * io-xpm.c (pixbuf_create_from_xpm): Check the number
790         of scanned items.  (#168906, Morten Welinder)
791
792         Make the gif loader handle oom when loading 
793         animations.  (#168857, Tommi Komulainen)
794         
795         * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): 
796         Handle oom by returning NULL.
797
798         * io-gif.c (gif_get_lzw): Return an error if composite 
799         returns NULL.
800
801 2005-02-28  Matthias Clasen  <mclasen@redhat.com>
802
803         * pixops/*.S: Add .note.GNU-stack sections to Mark these as not 
804         requiring an executable stack.
805         
806 2005-02-23  Matthias Clasen  <mclasen@redhat.com>
807
808         * gdk-pixbuf-io.c: Document BMP saving support.
809
810         * io-bmp.c: Support saving as BMP. (168173, Ivan Wong)
811
812         * io-ico.c: Fix a typo.  (#168173, Ivan Wong)
813
814 2005-02-15  Matthias Clasen  <mclasen@redhat.com>
815
816         * io-pnm.c (pnm_skip_whitespace): Don't read over the end of
817         the buffer if '#' appears at the very end.  (#167141, Doug Morgan)
818
819 2005-02-05  Hans Breuer  <hans@breuer.org>
820
821         * makefile.msc : rule for gdk_pixbuf.def
822
823 2005-02-07  Matthias Clasen  <mclasen@redhat.com>
824
825         * io-pnm.c (pnm_read_next_value): Pass in the max number 
826         of bytes to read.
827         (pnm_read_ascii_scanline): And use it here to enable 
828         parsing of pbm images without whitespace between the 
829         pixels.  (#165803, Samuel Hym)
830
831 2005-01-22  Matthias Clasen  <mclasen@redhat.com>
832
833         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type) 
834         (gdk_pixbuf_loader_new_with_mime_type): Close the loader
835         before unreffing it in the error case.  (#164915, Crispin 
836         Flowerday)
837
838 2005-01-12  Owen Taylor <otaylor@redhat.com>
839
840         * Makefile.am:  Use grep | head -n 1 instead of grep -m 1 
841         which doesn't work
842         with slightly older versions of GNU grep in 
843         install-libtool-import-lib rule.
844
845 2005-01-08  Matthias Clasen  <mclasen@redhat.com>
846
847         * === Released 2.6.1 ===
848         
849 2005-01-04  Matthias Clasen  <mclasen@redhat.com>
850
851         * io-bmp.c (DecodeHeader): Error on compressed images with 
852         negative height. Also make uncompressed images with data_offset
853         != header_size work.  (#150664, Owen Taylor)
854
855 2005-01-02  Matthias Clasen  <mclasen@redhat.com>
856
857         * pixops/pixops.c (bilinear_box_make_weights): Really fix the
858         math to make the vectors sum up to 1, making GDK_INTERP_HYPER
859         work again. (#162703, Dennis Nezic)
860
861 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
862
863         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file) 
864         Avoid deadlock. Pointed out by Callum McKenzie.
865         
866 Wed Dec 22 01:17:44 2004  Jonathan Blandford  <jrb@redhat.com>
867
868         * queryloaders.c (main): print out the version and binary name in
869         the header comment.  Problem reported by Seth Nickell.
870
871 2004-12-16  Matthias Clasen  <mclasen@redhat.com>
872
873         * === Released 2.6.0 ===
874
875 Fri Dec 10 13:57:44 2004  Manish Singh  <yosh@gimp.org>
876
877         * abicheck.sh: filter out PRIVATE.
878
879 2004-12-05  Tor Lillqvist  <tml@iki.fi>
880
881         * gdk-pixbuf-animation.c
882         * gdk-pixbuf-io.c
883         * io-xbm.c
884         * io-xpm.c
885         * make-inline-pixbuf.c
886         * queryloaders.c: Use gstdio wrappers. Document that file names
887         are in the GLib file name encoding.
888
889         * gdk-pixbuf-csource.c
890         * queryloaders.c: On Windows, convert command line arguments and
891         environment variable values from locale encoding to UTF-8.
892
893         * queryloaders.c: On Windows, use wide character API when
894         available.
895
896         * Makefile.am
897         * gdk-pixbuf-core.h
898         * gdk-pixbuf-io.c
899         * gdk-pixbuf-animation.h
900         * gdk-pixbuf-animation.c: Like in GLib, for DLL ABI stability on
901         Windows, add binary compatibility versions of functions that take
902         file names as arguments. They use the system codepage, not GLib
903         file name encoding (which is UTF-8 on Windows). Use #defines to
904         make newly compiled code use the "real" functions that use the
905         GLib file name encoding scheme.
906
907 2004-12-02  Matthias Clasen  <mclasen@redhat.com>
908
909         * === Released 2.5.6 ===
910
911 2004-11-30  Matthias Clasen  <mclasen@redhat.com>
912
913         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_iter_get_pixbuf): 
914         Fix a typo in the docs.  (#159955, Masao Mutoh)
915
916 2004-11-29  Matthias Clasen  <mclasen@redhat.com>
917
918         * Makefile.am (gdk-pixbuf-alias.h): Use the perl found by 
919         configure.  (#149826, Morten Welinder)
920
921 Sun Nov 28 12:11:21 2004  Manish Singh  <yosh@gimp.org>
922
923         * makegdkpixbufalias.pl: Typo fix, so attributes are really
924         propagated.
925
926 2004-11-28  Matthias Clasen  <mclasen@redhat.com>
927
928         * gdk-pixbuf.symbols: 
929         * Makefile.am: Mark get_type() functions generated by glib-mkenums 
930         as const.
931
932 Thu Nov 25 14:21:37 2004  Manish Singh  <yosh@gi,p.org>
933
934         * abicheck.sh: filter out G_GNUC stuff when doing the compare.
935
936 2004-11-23  Matthias Clasen  <mclasen@redhat.com>
937
938         * gdk-pixbuf-core.h: Don't mark gdk_pixbuf_error_quark() as const,
939         to be consistent with all the other error_quark functions. 
940         (technically they are const, but since these are called only
941         in error paths, giving the compiler better optimization 
942         opportunities doesn't matter much)
943
944         * gdk-pixbuf.symbols: Add attribute annotations.
945         * makegdkpixbufalias.pl: Keep attribute annotations, but strip PRIVATE.
946         * Makefile.am (gdk_pixbuf.def): Strip attribute annotations, but keep 
947         PRIVATE.
948
949 Mon Nov 15 18:58:22 2004  Manish Singh  <yosh@gimp.org>
950
951         * gdk-pixbuf-private.h: _gdk_pixbuf_lock now returns a gboolean.
952
953         * abicheck.sh: don't hardcode lengths for cut, instead split on
954         the third field.
955
956 2004-11-15  Matthias Clasen  <mclasen@redhat.com>
957
958         * gdk-pixbuf-animation.c: 
959         * gdk-pixbuf-loader.c: 
960         * gdk-pixbuf-io.c: Be extra careful when locking and handle
961         the case that the module may initialize the thread system.
962
963         * gdk-pixbuf-io.[hc] (_gdk_pixbuf_lock): Return whether the
964         lock was actually taken.
965
966         * queryloaders.c (query_module): Set vtable->module before
967         calling fill_vtable(), since gdk-pixbuf-io.c does does the
968         same and modules may rely on it.  (#158177, Dan Winship)
969
970 2004-11-12  Matthias Clasen  <mclasen@redhat.com>
971
972         * gdk-pixbuf-io.c (gdk_pixbuf_io_init): Don't use 
973         _gdk_pixbuf_load_module_unlocked() in the !USE_GMODULE case.
974
975         * === Released 2.5.5 ===
976         
977 2004-11-12  Matthias Clasen  <mclasen@redhat.com>
978
979         Changes to make gdk-pixbuf threadsafe  (#157310, #157306, 
980         Colin Walters):
981         
982         * gdk-pixbuf-io.h (enum GdkPixbufFormatFlags): Add 
983         GDK_PIXBUF_FORMAT_THREADSAFE to indicate that an image loader
984         is threadsafe.
985
986         * gdk-pixbuf-io.c (get_file_formats, _gdk_pixbuf_load_module): 
987         Use a lock to make initialization of global data structures 
988         threadsafe.
989         * gdk-pixbuf-private.h: 
990         * gdk-pixbuf-io.c (_gdk_pixbuf_lock, _gdk_pixbuf_unlock): 
991         Auxiliary functions which use another lock to protect 
992         threadunsafe image loaders.
993         
994         * gdk-pixbuf-io.c (gdk_pixbuf_real_save): 
995         (save_to_callback_with_tmp_file): 
996         (gdk_pixbuf_real_save_to_callback): 
997         (gdk_pixbuf_new_from_xpm_data): 
998         (_gdk_pixbuf_generic_image_load): 
999         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): 
1000         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): 
1001         (gdk_pixbuf_loader_close): 
1002         (gdk_pixbuf_loader_finalize): 
1003         Use _gdk_pixbuf_lock() and _gdk_pixbuf_unlock().
1004
1005         * io-ani.c, io-bmp.c, io-gif.c, io-ico.c:
1006         * io-jpeg.c, io-pcx.c, io-png.c, io-pnm.c:
1007         * io-ras.c, io-tga.c, io-wbmp.c, io-xbm.c:
1008         * io-xpm.c: Mark as threadsafe.
1009         
1010         * io-tiff.c: Remove pointless locking, mark as 
1011         threadunsafe.
1012
1013 2004-11-10  Matthias Clasen  <mclasen@redhat.com>
1014
1015         * gdk-pixbuf-animation.c: 
1016         * gdk-pixbuf-io.c: Use g_filename_display_name() instead of
1017         g_filename_to_utf8() when putting filenames in error messages.
1018
1019 2004-11-04  Matthias Clasen  <mclasen@redhat.com>
1020
1021         * gdk-pixbuf.c (gdk_pixbuf_class_init): Document current
1022         restrictions for property values.  (#157409, Matthew H. Plough)
1023
1024 2004-11-01  Matthias Clasen  <mclasen@redhat.com>
1025
1026         * gdk-pixbuf-features.h.in: Break the declaration of the three 
1027         version variables, so that gtk-doc can grok it.
1028
1029 2004-10-29  Hans Breuer  <hans@breuer.org>
1030
1031         * makefile.msc : updated
1032
1033 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
1034
1035         * === Released 2.5.4 ===
1036
1037 2004-10-27  Matthias Clasen  <mclasen@redhat.com>
1038
1039         * Makefile.am (gdk-pixbuf-alias.h): Fix srcdir != builddir
1040         builds.
1041
1042 2004-09-19  Matthias Clasen  <mclasen@redhat.com>
1043
1044         * === Released 2.5.3 ===
1045
1046 2004-09-15  Matthias Clasen  <mclasen@redhat.com>
1047
1048         * io-ico.c: 
1049         * io-xpm.c: Fix some security issues discovered by Chris Evans. 
1050
1051 Mon Sep 13 19:31:34 2004  Matthias Clasen  <maclas@gmx.de>
1052
1053         * io-jpeg.c (real_save_jpeg): Drop the alpha channel 
1054         when saving 4-channel pixbufs.  (#152450, Emmanuel Pacaud)
1055
1056 2004-09-09  Matthias Clasen  <mclasen@redhat.com>
1057
1058         * makegdkpixbufalias.pl: Use the short prefix "IA__" for 
1059         aliases instead of the long suffix "__internal_alias". 
1060         
1061 2004-09-01  Matthias Clasen  <mclasen@redhat.com>
1062
1063         * gdk-pixbuf-core.h: Align argument names with source.
1064
1065 Thu Aug 26 01:23:16 2004  Matthias Clasen  <maclas@gmx.de>
1066
1067         * gdk-pixbuf-core.h: 
1068         * gdk-pixbuf.symbols: 
1069         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_scale): 
1070         Add gdk_pixbuf_new_from_file_at_scale(), which is just
1071         like gdk_pixbuf_new_from_file_at_size(), but optionally
1072         ignores the aspect ratio.  (#136395, Dom  Lachowicz)
1073
1074 Wed Aug 25 17:23:23 2004  Manish Singh  <yosh@gimp.org>
1075
1076         * io-gif.c: remove unused set_need_recomposite() function.
1077
1078 2004-08-25  Matthias Clasen  <mclasen@redhat.com>
1079
1080         * === Released 2.5.2 ===
1081
1082         * abicheck.sh: Make work in make distcheck.
1083
1084 2004-08-25  Matthias Clasen  <mclasen@redhat.com>
1085
1086         * Makefile.am: Use the same prefix when creating 
1087         gdk-pixbuf-marshal.c and gdk-pixbuf-marshal.h
1088
1089         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): _-prefix
1090         the marshalers.
1091
1092 2004-08-24  Matthias Clasen  <mclasen@redhat.com>
1093
1094         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_mime_type): Use
1095         the correct index and compare correctly, reported by Tommi Komulainen.
1096         (gdk_pixbuf_loader_new_with_mime_type): 
1097
1098         * gdk-pixdata.c (gdk_pixdata_from_pixbuf): Work around bugs in
1099         the runlength encoder by forcing rowstride * height to be 
1100         divisible by bpp.  (#150882)
1101
1102 Sun Aug 22 03:20:56 2004  Matthias Clasen  <maclas@gmx.de>
1103
1104         * pixops/pixops.c (pixops_scale_nearest): Fix a mixup in the handling
1105         of dest_channels.  (#111922, Christophe Fergeau)
1106
1107 Fri Aug 20 11:59:10 2004  Owen Taylor  <otaylor@redhat.com>
1108
1109         * io-bmp.c: Fix infinite loop that can occur for bad
1110         image data (#150601, Chris Evans, Manish Singh)
1111
1112 2004-08-17  Matthias Clasen  <mclasen@redhat.com>
1113
1114         * abicheck.sh: No need for INCLUDE_INTERNAL_SYMBOLS any more.
1115
1116         * Makefile.am (gdk-pixbuf-alias.h): Don't use cpp to filter the symbols.
1117
1118         * makegdkpixbufalias.pl: Move the #ifdef processing into the perl script,
1119         and keep the #ifdefs which differentiate between platforms.
1120
1121         * gdk-pixbuf.symbols: Remove the marshalers.
1122
1123         * Makefile.am (stamp-gdk-pixbuf-marshal.h): _-prefix the marshalers.
1124
1125 Thu Aug 12 22:19:12 2004  Matthias Clasen  <maclas@gmx.de>
1126
1127         * io-bmp.c (DecodeHeader): Properly determine the number of 
1128         colors in an OS/2 BMP file.  (#150003, Jon-Kare Hellan)
1129
1130 2004-08-12  Matthias Clasen  <mclasen@redhat.com>
1131
1132         * pixops/pixops.c: Remove C99-isms.  (#149967, Vincent Noel)
1133
1134 Wed Aug 11 22:56:55 2004  Matthias Clasen  <maclas@gmx.de>
1135
1136         * abicheck.sh: Check all symbols.
1137
1138 2004-08-11  Matthias Clasen  <mclasen@redhat.com>
1139
1140         * pixops/pixops.c: Make scaling and compositing functions handle
1141         edge pixels consistently.  (#111922, Brian Cameron)
1142
1143         * pixops/pixops-internal.h: 
1144         * pixops/pixops.c:
1145         * pixops/*.S: underscore prefix the mmx implementations, in order
1146         to not export them.
1147
1148         * gdk-pixbuf.symbols: Remove the mmx pixops implementations.
1149
1150         * abicheck.sh: No need to define INCLUDE_MMX_SYMBOLS any more.
1151
1152 Tue Aug 10 23:53:59 2004  Matthias Clasen  <maclas@gmx.de>
1153
1154         Add hidden aliases for exported symbols which are
1155         used internally in order to get rid of many PLT 
1156         entries.  (#145519, Arjan van de Ven)
1157         
1158         * gdk/Makefile.am: Add rules to generate gdk_pixbuf.def and 
1159         gdk-pixbuf-alias.h from gdk-pixbuf.symbols, and make make 
1160         check check the abi with abicheck.sh.
1161
1162         * gdk/gdk-pixbuf.symbols: New file. Definition of the gdk-pixbuf 
1163         ABI. The file can be processed by cpp to filter out certain 
1164         subsets of symbols.
1165
1166         * gdk/abicheck.sh: New file. Script to check the actually 
1167         symbols exported from libgdk_pibuf.2.0.so against the symbols
1168         found in gdk-pixbuf.symbols.
1169
1170         * gdk/makegdkpixbufalias.pl: New file. Perl script to generate the 
1171         header containing the alias definitions for internally used 
1172         exported symbols from a list of symbols.
1173
1174         * *.c: Include gdk-pixbuf-alias.h
1175
1176 2004-08-06  Hans Breuer  <hans@breuer.org>
1177
1178         * gdk_pixbuf.def makefile.msc : updated
1179
1180 Sun Aug  1 23:57:06 2004  Matthias Clasen  <maclas@gmx.de>
1181
1182         * io-pcx.c (pcx_increment_load_data_1): Fix progressive
1183         loading of 8bit pcx files. (#148518, Magnus Bergman)
1184
1185 2004-08-01  Matthias Clasen  <mclasen@redhat.com>
1186                                                                                 
1187         * === Released 2.5.1 ===
1188                                                                                 
1189 Tue Jul 20 22:23:26 2004  Matthias Clasen  <maclas@gmx.de>
1190
1191         * gdk-pixbuf-io.h: Remove trailing commas from 
1192         enumerations.  (#148035)
1193
1194 Sun Jul 18 20:17:41 2004  Soeren Sandmann  <sandmann@daimi.au.dk>
1195
1196         * === released 2.5.0 ==
1197
1198 Thu Jul 15 19:19:21 2004  Matthias Clasen  <maclas@gmx.de>
1199
1200         * io-png.c (real_save_png): 
1201         * gdk-pixbuf-io.c (gdk_pixbuf_io_init): Use 'cannot' instead
1202         of 'can not' in messages.   (#144226, Morten Welinder)
1203
1204 Fri Jul  9 15:38:06 2004  Manish Singh  <yosh@gimp.org>
1205
1206         * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled): function doesn't
1207         return a value, so don't use g_return_val_if_fail()
1208
1209         * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple): initialize dest in
1210         the can't happen case, to quiet gcc.
1211
1212         * io-tiff.c (tifflibversion): enclose in #if TIFFLIB_VERSION >=
1213         20031226.
1214
1215 Wed Jul  7 23:53:58 2004  Matthias Clasen  <maclas@gmx.de>
1216
1217         * gdk-pixbuf-io.h: 
1218         * gdk-pixbuf-io.c (gdk_pixbuf_format_is_disabled): 
1219         * gdk-pixbuf-io.c (gdk_pixbuf_format_set_disabled): 
1220         * gdk-pixbuf-io.c (gdk_pixbuf_format_get_license): 
1221         New functions to disable/enable individual loaders and to
1222         obtain license information about loaders.
1223         
1224         * gdk-pixbuf-io.h (GdkPixbufFormat): Add disabled and 
1225         license fields.
1226
1227         * gdk-pixbuf-io.c (_gdk_pixbuf_get_module): 
1228         * gdk-pixbuf-io.c (_gdk_pixbuf_get_named_module): Skip
1229         disabled loaders.
1230
1231         * io-*.c: Add license information in the fill_info
1232         functions.
1233         
1234 2004-07-07  Matthias Clasen  <mclasen@redhat.com>
1235
1236         * gdk-pixbuf-features.h.in: Fix the build.
1237
1238 2004-07-06  Tor Lillqvist  <tml@iki.fi>
1239
1240         * gdk-pixbuf-features.h.in
1241         * gdk-pixbuf.c: Mark the version variables for proper import and
1242         export from Windows DLLs. Thanks to Laurent Sansonetti for
1243         reporting the problem.
1244
1245 Sat Jul  3 00:41:44 2004  Matthias Clasen  <maclas@gmx.de>
1246
1247         * pixops/pixops.c (bilinear_box_make_weights): Correct the
1248         math to calculate bilinear weights. (#112412, Brian Cameron)
1249
1250 Mon Jun 21 00:44:51 2004  Matthias Clasen  <maclas@gmx.de>
1251
1252         * gdk-pixbuf-transform.h: 
1253         * gdk-pixbuf-scale.c (gdk_pixbuf_rotate_simple): 
1254         * gdk-pixbuf-scale.c (gdk_pixbuf_flip): New functions to
1255         rotate pixbufs by multiples of 90 degrees and to flip them
1256         horizontally or vertically.
1257
1258 Sun Jun 20 01:06:48 2004  Matthias Clasen  <maclas@gmx.de>
1259
1260         Header reorganization.  (#51999, Jeff Franks, reorganization
1261         proposed by Havoc Pennington)
1262         
1263         * gdk-pixbuf.h: This is now an include-only header, and the only
1264         one which applications should directly use.
1265         
1266         * gdk-pixbuf-animation.h: Add animation api from gdk-pixbuf.h.
1267         * gdk-pixbuf-io.h: Add io api from gdk-pixbuf.h.
1268         * gdk-pixbuf-loader.h: Add loader api from gdk-pixbuf.h.
1269         * gdk-pixbuf-transform.h: New header.
1270         * gdk-pixbuf-core.h: New header.
1271
1272 Sat Jun 19 01:44:12 2004  Matthias Clasen  <maclas@gmx.de>
1273
1274         * gdk-pixbuf-scale.c (gdk_pixbuf_composite): Add a figure which
1275         explains pixbuf compositing.
1276
1277 2004-06-16  Matthias Clasen  <mclasen@redhat.com>
1278
1279         * io-tiff.c: Make the tiff loader work with both 
1280         libtiff 3.5.7 and libtiff 3.6.1.  (#135541, Marco Ghirlanda)
1281
1282 Fri Jun 11 22:02:56 2004  Matthias Clasen  <maclas@gmx.de>
1283
1284         * io-gif.c, io-pnm.c, io-tga.c, io-xpm.c: Don't use
1285         contractions like "don't" or "isn't" in error messages.
1286         It isn't nice to use them in log entries either...
1287         (#137774, Morten Welinder, patch by Alexander Winston)
1288
1289 Sat Jun  5 00:59:12 2004  Matthias Clasen  <maclas@gmx.de>
1290  
1291         Merged from 2.4
1292
1293         * gdk-pixbuf-animation.c: 
1294         * gdk-pixbuf-io.c: Convert filenames to UTF-8 when embedding
1295         them in error messages.  (#143654, Sven Neumann)
1296  
1297 Sun May 16 22:53:47 2004  Matthias Clasen  <maclas@gmx.de>
1298
1299         Merged from 2.4
1300
1301         * io-pnm.c (pnm_read_next_value): Don't read integers 
1302         partially.  (#142584, Kouichirou Hiratsuka) 
1303
1304 2004-05-10  Matthias Clasen  <mclasen@redhat.com>
1305
1306         Merged from 2.4:
1307         
1308         * pixops/timescale.c: 
1309         * pixops/pixops.c: 
1310         * pixops/pixops.h: 
1311         * gdk-pixbuf-scale.c: _-prefix the nonstatic pixops_... 
1312         functions.  (#142233, Morten Welinder)
1313         
1314 Wed May  5 23:09:48 2004  Matthias Clasen  <maclas@gmx.de>
1315
1316         * gdk-pixbuf-io.h (GdkPixbufFormatFlags): New format flag
1317         GDK_PIXBUF_FORMAT_SCALABLE to mark scalable formats.
1318
1319         * gdk-pixbuf.h: 
1320         * gdk-pixbuf-io.c (gdk_pixbuf_format_is_scalable): New function.
1321         (#137995, Dom Lachowicz)
1322
1323 2004-04-30  Matthias Clasen  <mclasen@redhat.com>
1324
1325         * === Released 2.4.1 ===
1326
1327 2004-04-13  Matthias Clasen  <mclasen@redhat.com>
1328
1329         * io-ani.c (gdk_pixbuf__ani_image_load_animation): 
1330         * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info) 
1331         (_gdk_pixbuf_generic_image_load) 
1332         (gdk_pixbuf_new_from_file_at_size): When calling fread()
1333         in a loop, check for ferror() as well as for feof() to
1334         avoid infinite loops on directories.  (#137804, Alex Converse)
1335
1336 Mon Mar 15 15:01:59 2004  Owen Taylor  <otaylor@redhat.com>
1337
1338         * === Released 2.4.0 ===
1339
1340 2004-03-15  Tor Lillqvist  <tml@iki.fi>
1341
1342         * queryloaders.c (main): [Win32] Look up installation prefix at
1343         run-time, replace prefix in PIXBUF_LIBDIR with that. (#106141)
1344
1345         Merges from stable branch that had been left out. (#136282, J. Ali
1346         Harlow):
1347
1348         Changes for run-time lookup of installation location on Win32:
1349         
1350         * Makefile.am (INCLUDES): Define GTK_PREFIX as $(prefix).
1351
1352         * gdk-pixbuf-io.c (get_sysconfdir): New function, look up
1353         installation location at runtime and deduce GTK_SYSCONFDIR
1354         from it.
1355         (get_toplevel): Similar, for the top-level installation directory.
1356         (correct_prefix): Replace compile-time prefix with run-time
1357         prefix.
1358         (get_libdir): Remove, not used any longer.
1359         (gdk_pixbuf_io_init): Call correct_prefix() on Win32.
1360
1361         * queryloaders.c (query_module): [Win32] Change backslahses into
1362         slashes in path.
1363
1364 Tue Mar  9 09:33:28 2004  Owen Taylor  <otaylor@redhat.com>
1365
1366         * === Released 2.3.6 ===
1367
1368 2004-03-05  Tor Lillqvist  <tml@iki.fi>
1369
1370         * gdk_pixbuf.def: Add missing entries. Thanks to J. Ali Harlow.
1371
1372 Fri Mar  5 22:22:25 2004  Matthias Clasen  <maclas@gmx.de>
1373
1374         * io-bmp.c (OneLine32): Don't try to load an alpha channel
1375         from the BMP, since there is no evidence that even 32bit
1376         BMPs have an alpha channel.  (#135502)
1377
1378 Mon Mar  1 19:47:48 2004  Owen Taylor  <otaylor@redhat.com>
1379
1380          * === Released 2.3.5 ====
1381
1382 2004-02-28  Hans Breuer  <hans@breuer.org>
1383
1384         * io-tiff.c : include <io.h> for lseek()
1385         * io-xbm.c : use HAVE_UNISTD_H
1386
1387 Tue Feb 24 14:45:03 2004  Owen Taylor  <otaylor@redhat.com>
1388
1389         * === Released 2.3.3 ===
1390
1391 Sun Feb 22 01:09:55 2004  Matthias Clasen  <maclas@gmx.de>
1392
1393         * io-bmp.c (gdk_pixbuf__bmp_image_begin_load): Remove debugging
1394         code.
1395
1396 Fri Feb 20 22:25:32 2004  Matthias Clasen  <maclas@gmx.de>
1397
1398         * io-bmp.c (DecodeHeader): Store and sanity-check the clrUsed field 
1399         from the header for use in DecodeColormap.
1400         * io-bmp.c (DecodeColormap): Don't read more colormap entries than
1401         the header says are there.  (#134235, Kazuho Okui)
1402
1403 Sun Feb  8 01:07:20 2004  Manish Singh  <yosh@gimp.org>
1404
1405         * gdk-pixbuf-io.c: removed unnecessary G_OBJECT() cast checks.
1406
1407         * io-jpeg.c: make the return type for to_callback_empty_output_buffer
1408         "boolean", which should be defined by the jpeg headers. The right
1409         return type for this function depends on how the jpeg library
1410         was built (one wonders what happens if different compilers are used).
1411
1412 2004-01-28  Hans Breuer  <hans@breuer.org>
1413
1414         * gdk_pixbuf.def : updated externals
1415
1416 Sat Jan 17 23:02:55 2004  Matthias Clasen  <maclas@gmx.de>
1417
1418         The second part of the fix for #114351 (see also 
1419         ../Changelog)
1420         
1421         * gdk-pixbuf-i18n.h (P_): Use translation domain gtk20-properties.
1422
1423 Sat Jan 17 00:01:51 2004  Matthias Clasen  <maclas@gmx.de>
1424
1425         The first part of the fix for #114351 (see also
1426         ../ChangeLog): 
1427
1428         * gdk-pixbuf-i18n.h: Define P_() for property blurbs and nicks.
1429
1430         * gdk-pixbuf.c:  Mark property blurbs and nicks with P_().
1431
1432 Thu Jan  8 22:01:14 2004  Matthias Clasen  <maclas@gmx.de>
1433
1434         * queryloaders.c (loader_sanity_check): Don't use bitwise operators
1435         on booleans.  (#130923, reported by Telsa Gwynne, fix by Dave Jones)
1436
1437 2004-01-06  Federico Mena Quintero  <federico@ximian.com>
1438
1439         * gdk-pixbuf-io.c (gdk_pixbuf_save): Escape an ampersand in the
1440         documentation comment, and hack around an empty line in the code
1441         example so that gtk-doc won't put a <para> due to it.
1442
1443         * gdk-pixbuf.c (gdk_pixbuf_get_pixels): Link to the documentation
1444         section on image data.
1445
1446 2004-01-06  Federico Mena Quintero  <federico@ximian.com>
1447
1448         * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Fix example in
1449         documentation comment.  Fixes #130701.
1450
1451 Wed Jan  7 02:41:14 2004  Matthias Clasen  <maclas@gmx.de>
1452
1453         * gdk-pixbuf-io.c (gdk_pixbuf_save_to_bufferv): 
1454         * gdk-pixbuf-io.c (gdk_pixbuf_save_to_buffer): 
1455         * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callbackv): 
1456         * gdk-pixbuf-io.c (gdk_pixbuf_save_to_callback): New public API
1457         to save pixbufs to non-file locations.  (#82203, Tim Evans)
1458
1459         * gdk-pixbuf.h:
1460         * gdk-pixbuf.def: Declare the new public API.
1461
1462         * gdk-pixbuf-io.h: Add save_to_callback to the module interface.
1463         
1464         * io-jpeg.c: 
1465         * io-png.c: Implement save_to_callback.
1466
1467         * gdk-pixbuf-io.c (gdk_pixbuf_savev): 
1468         * gdk-pixbuf-io.c (gdk_pixbuf_save): Update documentation. 
1469
1470         * gdk-pixbuf-io.c (gdk_pixbuf_real_save): Support saving via
1471         image_module->save_to_callback.
1472
1473         * gdk-pixbuf-io.c (gdk_pixbuf_real_save_to_callback): New generic
1474         save_to_callback function which falls back to image_module->save 
1475         on a temp file.
1476         
1477 Wed Jan  7 01:17:36 2004  Matthias Clasen  <maclas@gmx.de>
1478
1479         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_size_func): 
1480         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_set_size): 
1481         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_init): Make it possible
1482         to call gdk_pixbuf_loader_set_size (loader, 0, 0) by changing
1483         the initial values of priv->width/height to -1.
1484         
1485         * io-tiff.c (tiff_image_parse): 
1486         * io-ras.c (RAS2State): 
1487         * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): 
1488         * io-pcx.c (gdk_pixbuf__pcx_load_increment): 
1489         * io-jpeg.c (gdk_pixbuf__jpeg_image_load_increment): 
1490         * io-png.c (png_info_callback): 
1491         * io-ico.c (DecodeHeader): 
1492         * io-bmp.c (DecodeHeader): Call size_func once the size is known,
1493         even if the module can't make use of the scaling information. If
1494         size_func returns 0, don't allocate a pixbuf and return, if 
1495         necessary with an error.
1496
1497         * gdk-pixbuf.h: 
1498         * gdk-pixbuf-io.c (gdk_pixbuf_get_file_info): A new function 
1499         to determine the type and size of an image file without loading
1500         it completely.  (#53725)
1501
1502 Sun Jan  4 00:44:57 2004  Matthias Clasen  <maclas@gmx.de>
1503
1504         * gdk-pixbuf.c (gdk_pixbuf_class_init): Turn the pixbuf 
1505         attributes into (construct-only, but always readable) 
1506         properties.  (#130196)
1507
1508         * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Set properties
1509         in g_object_new().
1510
1511 Mon Dec 22 01:35:36 2003  Matthias Clasen  <maclas@gmx.de>
1512
1513         * Makefile.am (gdk-pixbuf.loaders): Fix building with
1514         --disable-modules --with-included-loaders, create an 
1515         empty gdk-pixbuf.loaders file.  (#124496, Arno Charlet, fix 
1516         proposed by Owen Taylor)
1517
1518 Thu Dec 11 01:57:05 2003  Matthias Clasen  <maclas@gmx.de>
1519
1520         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
1521         the documentation for signals inline, to get proper parameter
1522         documentation.  (#128977)       
1523
1524 Sat Nov 15 00:26:19 2003  Matthias Clasen  <maclas@gmx.de>
1525
1526         * queryloaders.c (loader_sanity_check): Check that the mask
1527         is NULL or a string of the same length consisting entirely of
1528         ' ', '!', 'x', 'z', 'n'. 
1529
1530 Mon Nov 10 00:17:52 2003  Matthias Clasen  <maclas@gmx.de>
1531
1532         * Makefile.am (install-data-local): Typo fix in warning.
1533
1534 Sun Nov  9 23:07:05 2003  Matthias Clasen  <maclas@gmx.de>
1535
1536         * gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): If neither
1537         load nor begin_load are available fall back to load_animation 
1538         and use gdk_pixbuf_animation_get_static_image() to obtain a 
1539         pixbuf. Inefficient, but at least doesn't crash.
1540
1541 Sun Nov  9 21:56:20 2003  Matthias Clasen  <maclas@gmx.de>
1542
1543         * queryloaders.c (write_loader_info): New function to write 
1544         out the information for a single loader, factored out of 
1545         query_module().
1546         (loader_sanity_check): New function to perform
1547         sanity checks on a loader.
1548         (query_module): Use the new functions.
1549
1550 Thu Nov  6 00:27:27 2003  Matthias Clasen  <maclas@gmx.de>
1551
1552         * io-pcx.c (gdk_pixbuf__pcx_load_increment): Fold two similar
1553         strings into on.  (#126204, Danilo Segan)
1554
1555 2003-09-19  Matthias Clasen  <maclas@gmx.de>
1556
1557         * io-tga.c (try_preload): Remove a pointless check.  
1558         (#122710, Kjartan Maraas)
1559
1560 Mon Aug 18 10:25:29 2003  Owen Taylor  <otaylor@redhat.com>
1561
1562         * gdk-pixdata.c (gdk_pixdata_to_csource): Add the correct
1563         alignment magic for Sun compiler and for GCC to get
1564         the strings aligned. (Patch from Brian Cameron, #117217)
1565
1566 2003-08-14  Matthias Clasen  <maclas@gmx.de>
1567
1568         * gdk-pixdata.c (gdk_pixdata_to_csource): Improve doc comment
1569         wording. (#119754, Doug Quale)
1570
1571 2003-08-03  Matthias Clasen  <maclas@gmx.de>
1572
1573         * gdk-pixbuf.c (gdk_pixbuf_get_rowstride): 
1574         * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading
1575         explanation of rowstride.  (#119000)
1576
1577 2003-07-24  Matthias Clasen  <maclas@gmx.de>
1578
1579         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the
1580         aspect ratio.  (#118145, Owen Taylor) 
1581
1582 2003-07-23  Matthias Clasen  <maclas@gmx.de>
1583
1584         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader
1585         before unref'ing it.  (#118146, Owen Taylor)
1586
1587 2003-03-01  Hans Breuer  <hans@breuer.org>
1588
1589         * makefile.msc : updated
1590
1591         * gdk_pixbuf.def : export a bunch of new functions
1592
1593 2003-07-18  Matthias Clasen  <maclas@gmx.de>
1594
1595         * pixops/pixops.c (correct_total): Split correction into multiple
1596         pieces if no single weight is large enough to apply the unsplit
1597         correction.  (#117431, problem reported by Tomas ?gren) 
1598
1599 2003-07-13  Matthias Clasen  <maclas@gmx.de>
1600
1601         * gdk-pixbuf.h: 
1602         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function
1603         to load an image from a file at a  specified size.  (#105326, Dom
1604         Lachowicz) 
1605
1606 2003-07-11  Matthias Clasen  <maclas@gmx.de>
1607
1608         * queryloaders.c (query_module): Handle absolute filenames
1609         properly. (#117170, Jens Elkner) 
1610
1611         * gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by 
1612         gdk_pixbuf_format_get_mime_types() and
1613         gdk_pixbuf_format_get_extensions() must be freed with g_strfreev().
1614
1615 2003-07-04  Matthias Clasen  <maclas@gmx.de>
1616
1617         * gdk-pixbuf-io.c: Document ICO save parameters.
1618
1619         * io-ico.c: Support saving of ICOs and CURs. Currently, only
1620         single-image ICOs are produced, but the code for multi-image ICOs
1621         is already in place. The saver understands the options "depth"
1622         (can be "32", "24" or "16") and "x_hot"/"y_hot" for hotspot
1623         coordinates of CURs. 
1624
1625 2003-06-28  Matthias Clasen  <maclas@gmx.de>
1626
1627         * io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs
1628         a): Use the byte size of the image as a heuristic when selecting
1629         the bitmap  to load - this lets us select 32bpp bitmaps which come
1630         after a 8bpp bitmap. 
1631         (OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't
1632         overwrite the alpha channel of 32bpp ICOs. 
1633         (gdk_pixbuf__ico_image_load_increment): Stop decoding the header
1634         unnecessarily. 
1635
1636 Fri Jun 27 03:56:59 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1637
1638         * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
1639         it compile with C89 compilers.
1640
1641 2003-06-23  Matthias Clasen  <maclas@gmx.de>
1642
1643         * io-gif.c (gif_get_frame_info): Remove the pointless refusal to
1644         load images with dubious disposal mode on the first frame. Just
1645         ignore it, as everybody else does. 
1646
1647 2003-06-22  Matthias Clasen  <maclas@gmx.de>
1648
1649         * gdk-pixbuf-loader.[hc] (gdk_pixbuf_loader_new_with_mime_type):
1650         New function to obtain a loader for a specific mime type.
1651         (#105324, Dom Lachowicz) 
1652
1653         * io-gif.c (gif_get_extension): Reset block_count to 0 for all
1654         application extensions, otherwise the data blocks of unknown
1655         extensions are not propertly skipped.  
1656
1657         Second half of the fix for #106962, handle frames extending beyond
1658         the logical screen: 
1659         
1660         * io-gif.c (clip_frame): New helper function to clip a rectangle
1661         to the logical screen size of the gif. 
1662         (maybe_update): New helper function to call update_func only if
1663         the rectangle is not completely off-bounds. 
1664         (gif_get_lzw): Read frames extending outside the logical screen
1665         size, but be careful clip to the logical screen size 
1666         when operating on the composite pixbuf and when calling update_func.
1667         (gif_init): Set the animation size to the logical screen size.
1668         (gif_get_frame_info): Don't refuse to load images with frames
1669         extending beyond the logical screen size. 
1670
1671         * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be
1672         careful to clip all rectangles to the logical screen size, also
1673         handle the fact that frames may be completely off-bounds. 
1674
1675 2003-06-21  Matthias Clasen  <maclas@gmx.de>
1676
1677         * io-gif.c: Merge from 2.2: Fix update_func() arguments and accept
1678         empty frames.  (#106962)
1679
1680 2003-06-17  Matthias Clasen  <maclas@gmx.de>
1681
1682         * Makefile.am (man_MANS): Removed, man pages are now installed
1683         from docs/reference/gdk-pixbuf.
1684
1685 2003-06-03  Matthias Clasen  <maclas@gmx.de>
1686
1687         * gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
1688         data_length == -1, add an example.  (#97290)
1689
1690 2003-06-01  Matthias Clasen  <maclas@gmx.de>
1691
1692         * gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
1693         of rowstride.  (#113924, Noah Levitt)
1694
1695 2003-05-27  Matthias Clasen  <maclas@gmx.de>
1696
1697         * io-wbmp.c: Remove dubious bitfields of
1698         unspecified signedness.  (#112919, Morten Welinder)gdk-p
1699
1700         * gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
1701         of g_string_new ("") by g_string_new (NULL). (#106975, Morten
1702         Welinder) 
1703
1704 2003-05-21  Matthias Clasen  <maclas@gmx.de>
1705
1706         * pixbufloader_pcx.def: 
1707         * io-pcx.c: A loader for PCX files.  (#113035, Josh Beam)
1708
1709         * gdk-pixbuf-io.c: 
1710         * Makefile.am: Add PCX loader.
1711
1712 2003-05-19  Matthias Clasen  <maclas@gmx.de>
1713
1714         Improve progressive loading from slow sources:  (#107368)
1715         
1716         * io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
1717         first_loop_slowness. 
1718         (gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
1719         the datasource falls behind the speed of the display.
1720
1721         * io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and  
1722         first_loop_slowness to GdkPixbufGifAnimIter.
1723
1724 Wed May 14 18:24:50 2003  Owen Taylor  <otaylor@redhat.com>
1725
1726         * gdk-pixdata.c (gdk_pixdata_deserialize): Add a 
1727         (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
1728
1729 2003-04-24  Matthias Clasen  <maclas@gmx.de>
1730
1731         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): 
1732         (gdk_pixbuf_loader_new_with_type): 
1733         (gdk_pixbuf_loader_close): 
1734         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): 
1735         (gdk_pixbuf_save): 
1736         (gdk_pixbuf_savev): 
1737         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): 
1738         Add sanity checks for GError handling.  (#108345) 
1739
1740 Tue Apr  1 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>
1741
1742         * pixops/pixops.c (make_weights): Exploit the fact that all
1743         our filters are separable to simplify the calculation of
1744         the weight tables. (Based on a patch from Brian Cameron.)
1745
1746         * pixops/Makefile.am pixbuf-transform-math.ltx: 
1747         Add a short article describing how the math in pixops.c
1748         works.
1749
1750 2003-03-21  Matthias Clasen  <maclas@gmx.de>
1751
1752         * gdk-pixbuf-animation.c (gdk_pixbuf_non_anim_get_type): Add
1753         missing static.  (#108614)
1754
1755         * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): 
1756         * io-ico.c (gdk_pixbuf__ico_image_stop_load): Add missing static
1757         qualifiers apparently causing problems on some platforms. (#108617)
1758
1759 2003-03-11  Matthias Clasen  <maclas@gmx.de>
1760
1761         * io-ico.c (DecodeHeader): Calculate LineWidth for 16bpp from
1762         width, like for the other depths.  (noticed by Marijn Ros)
1763
1764 2003-03-08  Matthias Clasen  <maclas@gmx.de>
1765
1766         Bug #107664 continued: 
1767         
1768         * io-xpm.c (find_color): Fix 0/FALSE confusion
1769         * gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Fix -1/gboolean
1770         confusion. 
1771
1772 2003-03-06  Matthias Clasen  <maclas@gmx.de>
1773
1774         * io-gif.c (gif_read): Fix 0/FALSE confusion (#107664, Morten
1775         Welinder) 
1776
1777 2003-02-20  Matthias Clasen  <maclas@gmx.de>
1778
1779         * io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): 
1780         Always clear the initial frame and "disposed" areas with
1781         transparent pixels, no matter whether the frame has transparency 
1782         or not.  (#55502)
1783
1784 2003-02-18  Matthias Clasen  <maclas@gmx.de>
1785
1786         * io-tga.c (pixbuf_flip_row): 
1787         (pixbuf_flip_vertically): Auxiliary functions used to implement
1788         support for arbitrary origins.
1789         (parse_data_for_row_pseudocolor): 
1790         (parse_data_for_row_truecolor): 
1791         (parse_data_for_row_grayscale): 
1792         (parse_data_for_row): 
1793         (fill_in_context): Remove the check for upper-left origin.
1794         (parse_rle_data): Support arbitrary origins. (#105912)
1795
1796         * io-tga.c (fread_check): 
1797         (fseek_check): 
1798         (get_header_from_file): 
1799         (get_colormap_from_file): 
1800         (get_image_pseudocolor): 
1801         (swap_channels_pixbuf): 
1802         (get_image_truecolor): 
1803         (get_image_grayscale): 
1804         (gdk_pixbuf__tga_load): Remove the non-incremental load
1805         implementation, since we have generic_image_load () now.
1806
1807         (gdk_pixbuf__tga_stop_load): Fix a potential crash discovered by
1808         pixbuf-lowmem.
1809
1810 2003-02-14  Matthias Clasen  <maclas@gmx.de>
1811
1812         * io-tga.c (try_preload): 
1813         (gdk_pixbuf__tga_load): Actually reject images with origin
1814         not in the upper-left corner.  (#105912)  
1815
1816 2003-02-06  Matthias Clasen  <maclas@gmx.de>
1817
1818         * queryloaders.c (query_module): Better error message if
1819         module_open() fails.  (#105349, Tim Mooney)
1820
1821 Mon Jan 27 17:10:30 2003  Owen Taylor  <otaylor@redhat.com>
1822  
1823         * Makefile.am (gdk-pixbuf.loaders): Rewrite to run
1824         on the .la files rather than looking for .so files.
1825         (#102142, Martin Gansser)
1826  
1827         * Makefile.am: Don't build gdk-pixbuf.loaders when
1828         cross-compiling.
1829  
1830 2003-01-05  Tor Lillqvist  <tml@iki.fi>
1831
1832         * Makefile.am (gdk-pixbuf.loaders): Use @SOEXT@ in the find command.
1833
1834         * gdk_pixbuf.def: Add gdk_pixbuf_loader_set_size.
1835
1836 2003-01-03  Matthias Clasen  <maclas@gmx.de>
1837
1838         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Don't crash if
1839         gdk-pixbuf.loaders file is missing.  (#102222)
1840
1841 2002-12-08  Matthias Clasen  <maclas@gmx.de>
1842
1843         * gdk-pixbuf-animation.h: 
1844         * gdk-pixbuf-io.h: Add /*< public|private >*/ markers.
1845
1846 Sat Dec  7 10:14:05 2002  Owen Taylor  <otaylor@redhat.com>
1847
1848         * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
1849         also depend gdk-pixbuf-query-loaders. (#97096, Daniel Elstner)
1850
1851 2002-12-05  Matthias Clasen  <maclas@gmx.de>
1852
1853         * io-ico.c: Remove leftover debug output.  (#100357, Owen Taylor)
1854
1855 2002-12-04  Bastien Nocera  <hadess@hadess.net>
1856
1857         * io-tiff.c: (tiff_image_parse): use G_BIG_ENDIAN instead of
1858         WORDS_BIGENDIAN which isn't set by configure.in
1859
1860 2002-11-29  Matthias Clasen  <maclas@gmx.de>
1861
1862         * gdk-pixbuf-animation.c: 
1863         * gdk-pixbuf.c: Add deprecation docs. 
1864
1865 2002-11-28  Matthias Clasen  <maclas@gmx.de>
1866
1867         * gdk-pixbuf/gdk-pixbuf-io.c:
1868         * gdk-pixbuf/gdk-pixbuf-loader.c:
1869         * gdk-pixbuf/gdk-pixbuf.c: Document 2.2 API additions. I'm not
1870         going to list all individual functions here; if you want to see
1871         the list, grep for "Since: 2.2".
1872
1873 Fri Nov  8 19:06:07 2002  Owen Taylor  <otaylor@redhat.com>
1874
1875         * Makefile.am (gdk-pixbuf.loaders): Make gdk-pixbuf.loaders
1876         file depend on the loaders (#97096, Jeff Waugh)
1877
1878 Wed Nov  6 15:19:53 2002  Owen Taylor  <otaylor@redhat.com>
1879  
1880         * io-gif.c (CHECK_LZW_SP): Fix trailing semicolon on macro,
1881         clean up a bit.
1882  
1883 2002-11-05  Matthias Clasen  <maclas@gmx.de>
1884
1885         * gdk-pixbuf-loader.c: Reindent to follow the gdk-pixbuf indentation.  
1886
1887 Tue Nov  5 14:16:17 2002  Owen Taylor  <otaylor@redhat.com>
1888
1889         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Fix 
1890         leaked pixbuf reference (#96823, Morten Welinder)
1891
1892 2002-10-23  Matthias Clasen  <maclas@gmx.de>
1893
1894         * io-gif.c (lzw_read_byte): Check for stack overflow throughout.
1895         (#91808, Elliot Lee)
1896
1897 2002-10-21  Matthias Clasen  <maclas@gmx.de>
1898
1899         Support the Netscape application extension for gif animations 
1900         (#95060):
1901         
1902         * io-gif-animation.h: 
1903         * io-gif-animation.c (gdk_pixbuf_gif_anim_iter_advance): 
1904         Add loop count to GdkPixbufGifAnim and use it in the advance
1905         method of GdkPixbufGifAnimIter.
1906         
1907         * io-gif.c (gif_get_extension): Parse Netscape application
1908         extension block and set the animation loop count. 
1909
1910 2002-10-11  Matthias Clasen  <maclas@gmx.de>
1911
1912         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_format): Remove
1913         unused variable.
1914
1915         * gdk-pixbuf-io.h: Remove unused typedef 
1916         GdkPixbufModuleGetSignatureFunc.
1917
1918 2002-10-04  jacob berkman  <jacob@ximian.com>
1919
1920         * queryloaders.c (query_module): make legal C
1921
1922 2002-10-04  Matthias Clasen  <maclas@gmx.de>
1923
1924         * Makefile.am gdk-pixbuf-animation.c gdk-pixbuf-data.c 
1925         gdk-pixbuf-io.c gdk-pixbuf-io.h gdk-pixbuf-loader.c 
1926         gdk-pixbuf-loader.h gdk-pixbuf-private.h gdk-pixbuf.h 
1927         gdk-pixdata.c io-ani-animation.h io-ani.c io-bmp.c 
1928         io-gif-animation.c io-gif-animation.h io-gif.c io-ico.c 
1929         io-jpeg.c io-png.c io-pnm.c io-ras.c io-tga.c io-tiff.c 
1930         io-wbmp.c io-xbm.c io-xpm.c pixbufloader_ani.def 
1931         pixbufloader_bmp.def pixbufloader_gif.def pixbufloader_ico.def 
1932         pixbufloader_jpeg.def pixbufloader_png.def 
1933         pixbufloader_pnm.def pixbufloader_ras.def pixbufloader_tga.def 
1934         pixbufloader_tiff.def pixbufloader_wbmp.def 
1935         pixbufloader_xbm.def pixbufloader_xpm.def test-gdk-pixbuf.c 
1936         gdk-pixbuf-animation.h queryloaders.c: Support for separately
1937         installed loaders.  (#77486)
1938
1939 Thu Oct  3 18:25:57 2002  Owen Taylor  <otaylor@redhat.com>
1940
1941         * io-jpeg.c (gdk_pixbuf__jpeg_image_save): 
1942         Fix memory leak. (#94399)
1943
1944 Tue Oct  1 17:35:43 2002  Owen Taylor  <otaylor@redhat.com>
1945
1946         * gdkpixdata.c: Patch from Andy Wingo to always 
1947         escape ? to avoid accidentally generating trigraphs
1948         in the output (#94631)
1949
1950 2002-09-28  Tor Lillqvist  <tml@iki.fi>
1951
1952         * pixops/*.S: Don't use .type on Cygwin, either (#91597, Masahiro
1953         Sakai).
1954
1955 2002-09-27  Federico Mena Quintero  <federico@ximian.com>
1956
1957         * io-ico.c (gdk_pixbuf__ico_image_begin_load): Free the context if
1958         we cannot allocate the HeaderBuf.
1959
1960 2002-09-27  Federico Mena Quintero  <federico@ximian.com>
1961
1962         * io-bmp.c (OneLine): Fix the update region notification to handle
1963         top-to-bottom and bottom-to-top BMPs correctly.
1964
1965 2002-09-19  Matthias Clasen  <maclas@gmx.de>
1966
1967         * Revert the previous change; the symbols need to be exported 
1968         to be usable from dlopened modules.
1969         
1970 2002-09-18  Matthias Clasen  <maclas@gmx.de>
1971
1972         * io-xpm.c, io-xbm.c, io-ico.c, io-ani.c, io-png.c,
1973         gdk-pixbuf.c, gdk-pixbuf-animation.c, gdk-pixbuf-loader.c,
1974         gdk-pixbuf-private.h: _-prefix gdk_pixbuf_non_anim_new and
1975         gdk_pixbuf_set_option. Adjust all callers. 
1976
1977 2002-09-14  Hans Breuer  <hans@breuer.org>
1978
1979         * pixops/Makefile.am : added makefile.msc to EXTRA_DIST
1980
1981 2002-09-12  Matthias Clasen  <maclas@gmx.de>
1982
1983         * io-gif-animation.h: 
1984         * gdk-pixbuf.h: Move GdkPixbufFrame from the public header to
1985         the gif-animation-specific private header.  (#91929)
1986
1987 2002-09-12  Federico Mena Quintero  <federico@ximian.com>
1988
1989         * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Unref the pixbuf if we
1990         hit an unsupported colorspace.
1991
1992 2002-09-06  Matthias Clasen  <maclas@gmx.de>
1993
1994         * io-ani.c, io-ani-animation.h, io-ani-animation.c, 
1995         pixbufloader_ani.def, Makefile.am, gdk-pixbuf-io.c: New loader,
1996         for .ANI animations.
1997         
1998         * io-xpm.c (pixbuf_create_from_xpm): 
1999         * io-xbm.c (gdk_pixbuf__xbm_image_load_real): 
2000         * io-ico.c (DecodeHeader): Attach hotspot coordinates to the
2001         pixbuf as options "x_hot" and "y_hot". 
2002
2003 2002-09-04  Matthias Clasen  <maclas@gmx.de>
2004
2005         * io-tga.c (io_buffer_append): 
2006         * io-ico.c (DecodeHeader): 
2007         * io-bmp.c (grow_buffer): Don't leak memory if g_try_realloc fails.
2008
2009         * gdk-pixbuf-io.c (pixbuf_check_ico): Fix loading of .CUR files.
2010         (#91826)
2011
2012 2002-08-25  Tor Lillqvist  <tml@iki.fi>
2013
2014         * Makefile.am (libgdk_pixbuf_2_0_la_DEPENDENCIES): Add
2015         gdk_pixbuf_win32res_lo. (#87101, J. Ali Harlow)
2016
2017 2002-08-22  Matthias Clasen  <maclas@gmx.de>
2018
2019         * gdk-pixbuf-io.h:
2020         gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): No longer
2021         static, thus _gdk_pixbuf-prefixed.
2022
2023         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): 
2024         Keep this logic in sync with gdk_pixbuf_new_from_file().  (Based
2025         on a patch by Anders Carlsson)
2026
2027         * io-png.c (gdk_pixbuf__png_image_save): Plug a memory 
2028         leak.  (#91422, Sven Neumann)
2029
2030 2002-07-31  Sven Neumann  <sven@gimp.org>
2031
2032         * gdk-pixdata.c (gdk_pixdata_to_csource): free the result of
2033         gdk_pixdata_serialize() (bug #89411).
2034
2035 Mon Jul 29 23:06:10 2002  Owen Taylor  <otaylor@redhat.com>
2036
2037         * gdk-pixbuf-scale.c: Fix some warnings by adding
2038         casts to PixopsInterpType. (#85839, David L. Cooper, II.)
2039
2040 2002-07-16  Matthias Clasen  <maclas@gmx.de>
2041
2042         * io-ras.c (DoCompressed): Avoid unnecessary casting.
2043
2044 2002-07-07  Matthias Clasen  <maclas@gmx.de>
2045
2046         * gdk-pixbuf-io.c (generic_image_load): New function for loading
2047         an image from a file either via module->load or incrementally.
2048         (prepared_notify): ModulePreparedNotifyFunc for generic_image_load.
2049         (gdk_pixbuf_new_from_file): Use generic_image_load.
2050         * io-bmp.c, io-ico.c, io-ras.c, io-wbmp.c: Remove trivial
2051         implementations of module->load.  (#71266)
2052         
2053         * io-ico.c (DecodeHeader): Correct computation of image height.
2054         (OneLine): Correct update notification.
2055
2056         Load-at-size functionality  (#53726): 
2057         
2058         * gdk-pixbuf-io.h (ModuleSizeFunc): New. 
2059         (_GdkPixbufModule): Prepend a ModuleSizeFunc to the 
2060         begin_load arguments. Adjust all modules.
2061         * gdk-pixbuf-loader.c (struct GdkPixbufLoaderPrivate): Add
2062         fields width, height, size_fixed, need_scale.
2063         (gdk_pixbuf_loader_class_init): Add size_prepared signal.
2064         (gdk_pixbuf_loader_set_size): New function.
2065         (gdk_pixbuf_loader_size_func): ModuleSizeFunc which gets
2066         passed to the module, emits size_prepared.
2067         (gdk_pixbuf_loader_prepare): Call gdk_pixbuf_loader_size_func
2068         if necessary, only emit area_prepared if no separate scaling
2069         is required.
2070         (gdk_pixbuf_loader_update): Only emit area_updated if no 
2071         separate scaling is required.
2072         (gdk_pixbuf_loader_load_module): Add size_func as first argument.
2073         (gdk_pixbuf_loader_close): If necessary scale the image
2074         to the desired size and emit area_prepared and area_updated.
2075         * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Add
2076         size_prepared signal.
2077         (gdk_pixbuf_loader_set_size) New API.
2078         * gdk-pixbuf-marshal.list: Add VOID:INT,INT.
2079         * io-jpeg.c: User cinfo->output_width/height instead of 
2080         cinfo->image_width/height throughout when adressing the pixbuf.
2081         (gdk_pixbuf__jpeg_image_load_increment): Call size_func, and
2082         find the nearest possible output size which libjpeg can produce
2083         that is still larger than the desired size.
2084         
2085 2002-07-06  Matthias Clasen  <maclas@gmx.de>
2086
2087         * io-tiff.c (tiff_set_error): Handle global_error == NULL
2088         better.
2089         (tiff_image_parse): Don't trust TIFFRGBAImageBegin to set
2090         the "put" routine.  (Fixes #87384)
2091         (gdk_pixbuf__tiff_image_stop_load): Don't call TIFFClose too 
2092         early.
2093
2094 2002-07-02  Matthias Clasen  <maclas@gmx.de>
2095
2096         Miscellaneous bmp loader fixes (#85448, #86286, #86287):
2097         
2098         * io-bmp.c (grow_buffer): New function to avoid crashes
2099         on unchecked reallocs. 
2100         (DecodeHeader, DecodeColormap, decode_bitmasks,
2101         DoCompressed): Use grow_buffer instead of g_realloc 
2102         throughout. Change signatures where necessary to pass the
2103         errors up.
2104         (OneLine16): Fix loading of 16bpp BI_RGB bmps. 
2105         (DoCompressed): Rewritten to properly support BI_RLE4 and
2106         skips and jumps.
2107
2108         Support for compressed ras images (#84994):
2109         
2110         * io-ras.c (RAS2State): Error on unsupported ras variations.
2111         (OneLine8): Fix colormap indexing.
2112         (OneLine): Call updated_func with proper region.
2113         (DoCompressed): New function, handles compressed ras data.
2114         (gdk_pixbuf__ras_image_load_increment): Handle compressed ras
2115         images.
2116
2117         Better colorspace support for the jpeg loader (#61211):
2118         
2119         * io-jpeg.c (convert_cmyk_to_rgb): New function.
2120         (gdk_pixbuf__jpeg_image_load,
2121         gdk_pixbuf__jpeg_image_load_increment): Allocate a pixbuf with
2122         alpha for 4-channel jpegs and call convert_cmyk_to_rgb for these.
2123
2124         All of this needs to be merged to GNOME 1.4 gdk-pixbuf.
2125         
2126 2002-06-28  Sven Neumann  <sven@gimp.org>
2127
2128         * gdk-pixbuf-csource.c (print_blurb): converted a Tab to spaces.
2129
2130 Thu Jun 13 18:11:11 2002  Owen Taylor  <otaylor@redhat.com>
2131
2132         * pixops/pixops.c: Fix problem where when no alpha was
2133         involved, we scaled rather than composited, but then
2134         went ahead and composited anyways. (#76958, Patch
2135         from Matthias Clasen). Needs to be merged to GNOME
2136         1.4 gdk-pixbuf.
2137
2138 2002-06-13  Matthias Clasen  <maclas@gmx.de>
2139
2140         * io-jpeg.c: Use libjpeg in buffered-image mode in order to
2141         incrementally display incrementally loaded progressive jpegs.
2142
2143 2002-06-07  Federico Mena Quintero  <federico@ximian.com>
2144
2145         * io-bmp.c (lsb_32):
2146         (lsb_16): New functions to fetch 32 or 16-bit little-endian values
2147         starting at a specific memory location.  We do this instead of
2148         GINT32_FROM_LE() as the latter is simply dereferences a cast,
2149         which doesn't work on platforms with alignment requirements.
2150         Fixes #84083.
2151
2152 2002-06-01  Matthias Clasen  <maclas@gmx.de>
2153
2154         * gdk-pixbuf-io.c (pixbuf_check_xbm): Accept xbms starting
2155         with a C comment - those seem to be not uncommon, e.g. the Gimp 
2156         produces them.  (#82706)
2157
2158         * io-xbm.c (read_bitmap_file_data): Don't leak memory on certain
2159         invalid inputs.
2160         (gdk_pixbuf__xbm_image_load_real): Don't leak memory on valid inputs.
2161
2162 2002-05-22  Tor Lillqvist  <tml@iki.fi>
2163
2164         * gdk-pixbuf-io.c (get_libdir): Use GTK_BINARY_VERSION (and not
2165         GTK_VERSION) in the path to the loaders on Win32, too.
2166
2167         * Makefile.am: Pass GTK_BINARY_VERSION.
2168
2169 2002-05-22  Federico Mena Quintero  <federico@ximian.com>
2170
2171         * io-xpm.c (pixbuf_create_from_xpm): Ahem, take the rowstride into
2172         account!!!  Fixes #82515.
2173
2174         [This bug is not present in the GNOME 1.4 branch as its XPM loader
2175         does not use gdk_pixbuf_new(); rather it malloc()s a buffer with
2176         no row padding and then uses gdk_pixbuf_new_from_data() on it.]
2177
2178         [IMPORTANT: The comment above is to make my life easier when
2179         merging stuff across branches.  If you make changes to gdk-pixbuf
2180         in either branch, please include a comment in the ChangeLog that
2181         indicates whether this should be merged into the other branch.
2182         Thanks!]
2183
2184 2002-05-18  Matthias Clasen  <maclas@gmx.de>
2185
2186         * io-tiff.c (tiff_image_parse): fix packing order on bigendian 
2187         systems.  (#81702)
2188
2189 Thu May 16 15:17:30 2002  Owen Taylor  <otaylor@redhat.com>
2190
2191         * pixops/pixops.c: Patch from Matthias Clasen to fix some typos 
2192         (#77246)
2193
2194 Thu May 16 15:02:46 2002  Owen Taylor  <otaylor@redhat.com>
2195
2196         * gdk-pixdata.c (gdk_pixdata_to_csource): Fix 64-bit warning.
2197         (#78258)
2198
2199 2002-05-07  Michael Natterer  <mitch@gimp.org>
2200
2201         * gdk-pixbuf/Makefile.am: build the static pixbuf loaders
2202         conditionally like the dynamic ones so --without-lib<foo> is
2203         honored when building with --disable-modules. (#66867)
2204
2205 Sun May  5 02:27:01 2002  Soeren Sandmann  <sandmann@daimi.au.dk>
2206
2207         * Makefile.am (noinst_PROGRAMS): remove test-loaders (moved to
2208         gtk+/tests/)
2209         * test-loaders.c, test-images.h: remove 
2210
2211 2002-04-24  Matthias Clasen  <maclas@gmx.de>
2212
2213         * gdk-pixbuf-io.c (gdk_pixbuf_save): Remove the ISO8859-1
2214         restriction from the description of png tEXt parameters.
2215
2216         * io-png.c (png_text_to_pixbuf_option): 
2217         (gdk_pixbuf__png_image_save): If libpng supports it,
2218         store and retrieve non-ISO8859-1 text as UTF-8.  (#76172)
2219
2220 2002-04-11  Matthias Clasen  <maclas@gmx.de>
2221
2222         More fixes for #77807:
2223         
2224         * io-tga.c (get_contiguous_pixbuf): Helper function to create
2225         a pixbuf with a contiguous pixel array while being careful about
2226         overflow. 
2227
2228         * io-tga.c (fill_in_context, get_image_pseudocolor,
2229         get_image_truecolor, get_image_grayscale): Use 
2230         get_contiguous_pixbuf instead of manually allocating image
2231         storage. 
2232
2233         * io-xpm.c (pixbuf_create_from_xpm): 
2234         * io-pnm.c (gdk_pixbuf__pnm_image_load):
2235         * io-jpeg.c (gdk_pixbuf__jpeg_image_load): Use gdk_pixbuf_new
2236         instead of manually allocating image storage.
2237
2238 2002-04-09  Matthias Clasen  <maclas@gmx.de>
2239
2240         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): Use 
2241         priv->image_module->module_name instead of image_type which may 
2242         be NULL.
2243
2244 2002-04-06  Matthias Clasen  <maclas@gmx.de>
2245
2246         * io-png.c (gdk_pixbuf__png_image_load): Restructured to use
2247         gdk_pixbuf_new instead of manually allocating image storage. This
2248         gives us a good rowstride and overflow checks.  (#77807)
2249
2250 2002-04-05  Matthias Clasen  <maclas@gmx.de>
2251
2252         * io-tiff.c (tiff_image_parse): Avoid allocating an extra copy of
2253         the image by using a TIFFRGBAImage{Begin,Get,End} with suitable
2254         put functions instead of TIFFRGBAImage. And check image dimensions
2255         for overflow. 
2256
2257 2002-04-03  Matthias Clasen  <maclas@gmx.de>
2258
2259         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_type): Fix a doc typo.
2260
2261 2002-03-29  Matthias Clasen  <maclas@gmx.de>
2262
2263         * io-png.c (png_simple_error_callback): libpng error handlers must
2264         not return to their callers, thus longjmp out. This prevents
2265         annoying stderr output from the default error handler.
2266
2267 2002-03-27  Matthias Clasen  <maclas@gmx.de>
2268
2269         * io-png.c (gdk_pixbuf__png_image_stop_load): Don't leak info_ptr.
2270
2271         * io-png.c (gdk_pixbuf__png_image_load): Get rid of unused
2272         end_info. Also call png_read_end to check proper ending of the png
2273         file and catch text chunks after the image data.
2274
2275 2002-03-27  Matthias Clasen  <maclas@gmx.de>
2276
2277         * io-png.c (gdk_pixbuf__png_image_load,
2278         gdk_pixbuf__png_image_begin_load): Make libpng use g_malloc
2279         instead of system malloc. 
2280
2281 2002-03-26  Matthias Clasen  <maclas@gmx.de>
2282
2283         * io-tiff.c (tiff_image_parse): Don't leak pixbuf on error.
2284
2285         * io-gif.c (gdk_pixbuf__gif_image_load_increment): Don't leak
2286         context->buf on error.
2287
2288         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Make sure to call
2289         stop_load even for short images to prevent memleaks.
2290
2291 2002-03-25  Matthias Clasen  <maclas@gmx.de>
2292
2293         * io-png.c (setup_png_transformations): Changed signature to
2294         return success and set a GError parameter, adjusted all callers.
2295         Also work around a possible FPE in libpng and always check that
2296         the new info is sane.
2297
2298 2002-03-23  Matthias Clasen  <maclas@gmx.de>
2299
2300         * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment):
2301         context->updated_func is NULL during a nonincremental load.
2302         (gdk_pixbuf__wbmp_image_load): Stop reading after the first error.
2303
2304 2002-03-18  Matthias Clasen  <maclas@gmx.de>
2305
2306         * io-tga.c: Fix assumptions on rowstride by manually allocating a
2307         contiguous pixel buffer. Catch buffer overruns in RLE-modi. 
2308         Support grayscale + alpha (which can be written, but not read (!)
2309         by the Gimp). 
2310
2311 2002-03-15  Matthias Clasen  <maclas@gmx.de>
2312
2313         * io-gif.c (gif_get_frame_info): Catch invalid frame dimensions.
2314
2315 2002-03-13  Matthias Clasen  <maclas@gmx.de>
2316
2317         * test-images.h: Add valid_ras_test and invalid_bmp_1.
2318
2319         * test-loaders.c (main): Add random tests for ras and pnm and an
2320         invalid bmp which was a crasher until my 2002-03-12 commit.
2321
2322         * io-pnm.c (gdk_pixbuf__pnm_image_load_increment): Don't unref the
2323         pixbuf on errors.
2324
2325         * io-ras.c: Handle some errors.
2326
2327 2002-03-12  Sven Neumann  <sven@gimp.org>
2328
2329         * gdk-pixbuf.c (gdk_pixbuf_fill): use sequential writes instead of
2330         calling memcpy(). Simpler and potentially faster. (#70332)
2331
2332 2002-03-12  Matthias Clasen  <maclas@gmx.de>
2333
2334         * io-bmp.c (DecodeHeader): Replace a g_assert_not_reached ()
2335         which could actually be reached by a proper error status return.
2336
2337 2002-03-05  Matthias Clasen  <maclas@gmx.de>
2338
2339         * test-loaders.c, test-images.h: More random tests. 
2340
2341         * io-bmp.c (DecodeHeader): Fail gracefully on OOM here.
2342
2343 Tue Mar  5 10:39:03 2002  Owen Taylor  <otaylor@redhat.com>
2344
2345         * Makefile.am (loaderdir): Put the modules into the
2346         GTK_BINARY_VERSION directory for consistency with
2347         immodules and theme engines.
2348
2349 Sat Mar  2 22:11:10 2002  Owen Taylor  <otaylor@redhat.com>
2350
2351         * gdk-pixbuf-io.c (_gdk_pixbuf_load_module): If we
2352         can't load the module using the g_module_build_path()
2353         filename, try loading it as a .la file.
2354
2355         * test-loaders.c: Look for modules in current directory
2356         rather than .libs, so we find the right .la files.
2357
2358         * test-loaders.c: Back out some accidental commits.
2359
2360 Sat Mar  2 21:28:03 2002  Owen Taylor  <otaylor@redhat.com>
2361
2362         * gdk-pixbuf.c (gdk_pixbuf_new): Bullet-proof against integer
2363         overflow.
2364
2365 2002-03-03  Tor Lillqvist  <tml@iki.fi>
2366
2367         * gtk-pixbuf.rc.in: Remove.
2368
2369         * gdk_pixbuf.rc.in: Name like this instead (wrong name used by
2370         mistake by Hans).
2371
2372         * makefile.msc: Corresponding changes.
2373
2374         * Makefile.am: Use gdk_pixbuf.rc on Win32. Distribute it.
2375
2376 2002-02-28  Matthias Clasen  <maclas@gmx.de>
2377
2378         * pixops/pixops.c (tile_make_weights): Move the call to
2379         correct_total() to the right spot. (#72732)
2380
2381 Wed Feb 27 18:33:04 2002  Owen Taylor  <otaylor@redhat.com>
2382
2383         * gdk-pixdata.c (gdk_pixdata_to_csource): Use {} not
2384         () to group around string assigned to char[]. (#72767,
2385         Tomas ?gren)
2386
2387 2002-02-21  Havoc Pennington  <hp@pobox.com>
2388
2389         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
2390         C++-commented debug spew, reported by David L. Cooper
2391
2392 2002-02-15  Matthias Clasen  <maclas@gmx.de>
2393
2394         * pixops/pixops.c (correct_total): New function to make sure
2395         that the weights sum up to the correct total without introducing
2396         negative weights.
2397         (tile_make_weights, bilinear_make_fast_weights, 
2398         bilinear_make_weights): Use correct_total.
2399
2400 2002-02-10  Matthias Clasen  <maclas@gmx.de>
2401
2402         * test-images.h (tiff1_test_3), test-loaders.c (main): Add a
2403         (#ifdef 0'ed) test provoking a segfault in TIFFReadDirectory(). 
2404         
2405         * io-ico.c (DecodeHeader): Check that pixbuf could be allocated.
2406
2407         * test-images.h (ico_test_2), test-loaders.c (main): Test the 
2408         previous change.
2409
2410         * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Don't write 
2411         beyond the end of buffer if width % 8 != 0.
2412
2413         * io-tga.c (try_preload): Enforce that ctx->hdr->type is one of
2414         the supported types, otherwise parse_data_for_row () will not make
2415         any progress, leading to an infinite loop.
2416
2417 Mon Feb 11 14:31:53 2002  Owen Taylor  <otaylor@redhat.com>
2418
2419         * pixops/pixops.c (bilinear_make_weights): Fix handing of
2420         overall alpha.
2421
2422 2002-02-10  Matthias Clasen  <maclas@gmx.de>
2423
2424         * test-loaders.c (main): Enable some tests which should work
2425         now.
2426
2427         * io-wbmp.c (gdk_pixbuf__wbmp_image_load_increment): Detect
2428         invalid image dimensions and insufficient memory.
2429
2430         * io-tga.c (try_preload): Detect invalid image dimensions.
2431         (gdk_pixbuf__tga_stop_load): Don't try to unref NULL pointers.
2432
2433         * io-ico.c (DecodeHeader): Detect some invalid headers and
2434         don't segfault.
2435
2436 Fri Feb  8 23:11:15 2002  Owen Taylor  <otaylor@redhat.com>
2437
2438         * pixops/pixops.c: Force all weight arrays to sum exactly
2439         to 65535. (Fixes #70971, reported by Federico Mena Quintero)
2440
2441         * Makefile.am (libgdk_pixbuf_1_3_la_DEPENDENCIES): Add
2442         libpixops.la.
2443
2444 2002-02-08  Federico Mena Quintero  <federico@ximian.com>
2445
2446         * pixops/pixops.h: Fix comment; PixopsInterpType -> GdkInterpType.
2447
2448 2002-02-08  Darin Adler  <darin@bentspoon.com>
2449
2450         * io-xbm.c: (next_int): Wean this from <ctype.h>.
2451
2452 2002-02-01  Matthias Clasen  <matthiasc@poet.de>
2453
2454         * Makefile.am: Build the tga loader as a static library. (#70157)
2455
2456         * io-ico.c: Merge 16- and 32-bit ico support from the stable 
2457         branch.  (#61179)
2458
2459         * io-gif.c: Recomposite all images if the animation size changes
2460         while loading.  (#70055)
2461
2462         * gdk-pixbuf.c (gdk-pixbuf-fill): Make it work for subpixbufs. 
2463         (#70055)
2464
2465 Sat Jan 19 20:49:20 2002  Manish Singh  <yosh@gimp.org>
2466
2467         * io-jpeg.c, io-png.c: Made sure all the error cases involving
2468         jpeg or png load/saves clean themselves up properly. Marked some
2469         variables needed for cleanup volatile so they aren't clobbered by
2470         setjmp.
2471
2472 Fri Jan 11 18:05:07 2002  Owen Taylor  <otaylor@redhat.com>
2473
2474         * pixops/pixops.c: Fix integer overflow for the values
2475         passed to the pixel functions. (#55148, fix from Michael Hore)
2476
2477 Fri Jan 11 17:53:58 2002  Owen Taylor  <otaylor@redhat.com>
2478
2479         * pixops/pixops.c (pixops_scale_nearest): Remove meaningless
2480         FIXME.
2481
2482         * pixops/pixops.c (pixops_process): Comment the computation
2483         of run_end_index and fix some edge cases.
2484
2485         * pixops/{scale_line_22_33_mmx.S, composite_line_22_4a4_mmx.S:
2486         composite_line_color_22_4a4_mmx.S}: Handle the case where
2487         dest <= dest_end properly. (#52001, fix from Michael Hore)
2488
2489 Thu Jan 10 16:48:30 2002  Owen Taylor  <otaylor@redhat.com>
2490
2491         * pixops/pixops.c: Replace some hardcoded values with the 
2492         SUBSAMPLE constant used elsewhere. (#51033)
2493
2494 Wed Jan  9 11:29:44 2002  Owen Taylor  <otaylor@redhat.com>
2495
2496         * Makefile.am (s-enum-types-h): Include glib-object.h,
2497         Add G_BEGIN_DECLS/END_DECLS to gdk-pixbuf-enum-types.h. (#68325,
2498         Mikael Hermansson)
2499
2500         * *.h: G_BEGIN_DECLS cleanups.
2501
2502 Tue Jan  8 10:58:04 2002  Owen Taylor  <otaylor@redhat.com>
2503
2504         * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): 
2505          - Massive cleanup, make actually legible. 
2506          - Fix some clamp-to-range bugs found by Jim Cape (#68231). 
2507          - Add a g_return_if_fail() if src and dest alpha don't match.
2508          - Allow for src_rowstride != dest_rowstride.
2509
2510 2002-01-04  Hans Breuer  <hans@breuer.org>
2511
2512         * gdk_pixbuf.def : don't export functions prefixed
2513         with underscore
2514
2515         * makefile.msc : use -FImsvc_recommende_pragmas.h
2516
2517 Thu Jan  3 19:31:58 2002  Owen Taylor  <otaylor@redhat.com>
2518
2519         * pixops/pixops.c (scale_line_22_33): Fix and uncomment
2520         non-MMX version.
2521
2522         * pixops/pixops.c (pixops_composite_nearest): Remove a
2523         division.
2524
2525         * pixops/pixops.c (pixops_composite): Add some docs
2526         about the parameters.
2527
2528         * pixops/README: Add notes about the correct algorithms
2529         for alpha compositing and how to implement them quickly.
2530
2531 2001-12-29  Tor Lillqvist  <tml@iki.fi>
2532
2533         * Makefile.am (EXTRA_DIST): Add makefile.msc.
2534
2535 Sat Dec 22 15:31:20 2001  Owen Taylor  <otaylor@redhat.com>
2536
2537         * gdk-pixdata.h: Fix trailing "," in enumeration.
2538
2539 2001-12-17  Matthias Clasen  <matthiasc@poet.de> 
2540
2541         * gdk-pixbuf.c, gdk-pixbuf-io.c, gdk-pixbuf-animation.c, 
2542         gdk-pixbuf-data.c, gdk-pixbuf-loader.c, gdk-pixbuf-scale.c, 
2543         gdk-pixbuf-util.c, gdk-pixdata.c: Markup fixes.
2544
2545 2001-12-16  Havoc Pennington  <hp@pobox.com>
2546
2547         * gdk-pixbuf-scale.c: docs enhancements
2548
2549 2001-12-14  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2550
2551         * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
2552
2553 2001-12-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2554
2555         * gdk-pixbuf-animation.c, gdk-pixbuf-loader.c, gdk-pixpuf.c,
2556         io-gif-animation.c, io-gif.c, io-tiff.c, test-loaders.c: Remove
2557         assorted G_OBJECT casts where unnecessary.
2558
2559         * gdk-pixbuf-loader.c: Call g_object_ref and g_object_unref
2560         instead of gdk_pixbuf_animation_ref and gdk_pixbuf_animation_unref
2561         resp.
2562
2563         * gdk-pixbuf-csource.c, io-bmp.c, io-gif-animation.c, io-ico.c,
2564         io-jpeg.c, io-png.c, io-pnm.c, io-ras.c, io-tga.c, io-wbmp.c,
2565         io-xbm.c, io-xpm.c, test-gdk-pixbuf.c: Dito for gdk_pixbuf_ref and
2566         gdk_pixbuf_unref.
2567         
2568         * Makefile.am, pixops/Makefile.am: Compile everything with
2569         -DG_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED
2570
2571         * gdk-pixdata.c: Use g_ascii_strup() instead of g_strup().
2572
2573         * io-xpm.c: Use g_ascii_strcasecmp() instead of g_strcasecmp().
2574
2575 2001-12-12  Matthias Clasen  <matthiasc@poet.de>
2576
2577         * gdk-pixbuf-io.c: Markup fixes.
2578
2579 2001-12-12  Matthias Clasen  <matthiasc@poet.de>
2580
2581         * Makefile.am (INCLUDES): Define G_LOG_DOMAIN. (#66412)
2582
2583         * gdk-pixbuf-loader.c, gdk-pixbuf-util.c: Markup fixes.
2584
2585 2001-12-11  Michael Natterer  <mitch@gimp.org>
2586
2587         * io-png.c: gdk_pixbuf__png_image_save: removed wrong endian
2588         conversion stuff; don't copy RGB pixbufs' lines around before
2589         saving them.
2590
2591 2001-12-05  Matthias Clasen  <matthiasc@poet.de>
2592
2593         * gdk-pixbuf.h (gdk_pixbuf_ref, gdk_pixbuf_unref,
2594         gdk_pixbuf_animation_ref, gdk_pixbuf_animation_unref):
2595         Deprecate. (#66208)
2596
2597 Tue Dec  4 11:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2598
2599         * io-xpm.c (pixbuf_create_from_xpm): Fill in color 
2600         fields to black for transparent colors since we'll
2601         later initialize pixels from them. (Fixes purify
2602         errors, #66093, HideToshi Tajima)
2603
2604 2001-11-30  Tor Lillqvist  <tml@iki.fi>
2605
2606         * gdk_pixbuf.def: Add gdk_pixbuf_get_option.
2607
2608 Fri Nov 30 15:55:34 2001  Owen Taylor  <otaylor@redhat.com>
2609
2610         * gdk-pixdata.c (gdk_pixdata_deserialize): Fix
2611         alignment problem in deserialization, (#65785,
2612         reported by Hidetoshi Tajima)
2613
2614 2001-11-28  Manish Singh  <yosh@gimp.org>
2615
2616         * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Fill
2617         in missing error parameters to DecodeHeader and DecodeColormap.
2618
2619 2001-11-21  Federico Mena Quintero  <federico@ximian.com>
2620
2621         Fix Ximian bug #12125; merged from gdk-pixbuf stable.
2622
2623         * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load_increment): Use
2624         a simple state machine instead of a scary if/else chain.
2625         (DecodeHeader): Set the reading state.
2626         (DecodeColormap): Set the reading state.
2627         (decode_bitmasks): New function, decodes the bitmasks for
2628         BI_BITFIELDS coding.
2629         (OneLine32): Handle BI_BITFIELDS coding.
2630         (OneLine16): Likewise.
2631
2632 2001-11-18  Hans Breuer  <hans@breuer.org>
2633
2634         * io-xpm.c : use g_strcasecmp(), some poor platforms
2635         don't have strcasecmp()
2636
2637         * makefile.msc : do INCLUDE_png etc. definition here to avoid
2638         my temporary 'gdk-pixbuf-io-include.h' hack
2639
2640 Sun Nov 18 07:54:22 2001  Owen Taylor  <otaylor@redhat.com>
2641
2642         * gdk-pixbuf-loader.c: Remove include of gobject/signal.h.
2643
2644 2001-11-03  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
2645
2646         * gdk-pixbuf-loader.c, gdk-pixbuf-scale.c: Documentation fixes.
2647
2648 2001-10-29  Tor Lillqvist  <tml@iki.fi>
2649
2650         * Makefile.am: Use -no-undefined on Win32. Make
2651         libgdk_pixbuf_1_3_la_OBJECTS depend on
2652         gdk-pixbuf-marshal.c. Install import libraries.
2653
2654         * gdk_pixbuf.def: Update.
2655
2656         * gdk-pixbuf-io.c: (Win32) Use G_WIN32_DLLMAIN_FOR_DLL_NAME, saves
2657         the actual DLL name of libgdk_pixbuf.
2658         (get_libdir): Use it instead of guessing.
2659
2660         * io-xbm.c (gdk_pixbuf__xbm_image_begin_load): Use
2661         g_file_open_tmp() insread of mkstemp().
2662
2663 2001-10-18  Matthias Clasen  <matthiasc@poet.de>
2664
2665         * io-xbm.c (gdk_pixbuf__xbm_image_load_real): Don't dereference
2666         context when it may be NULL. (#62344)
2667
2668 2001-10-16  Matthias Clasen  <matthiasc@poet.de>
2669
2670         * gdk-pixdata.c, gdk-pixdata.h: Documentation.
2671
2672         * gdk-pixbuf-csource.1: Spelling fixes.
2673
2674 Wed Oct 10 11:52:17 2001  Owen Taylor  <otaylor@redhat.com>
2675
2676         * gdk-pixdata.c gdk-pixbuf.h: Get rid of 
2677         GDK_PIXBUF_ERROR_HEADER/PIXEL_CORRUPT and use CORRUPT_IMAGE.
2678         Get rid fo GD_PIXBUF_ERROR_UNKNOWN_FORMAT and use the
2679         existing UKNOWN_TYPE error. (#58308)
2680
2681         * gdk-pixbuf.h, gdk-pixdata.c: Rename gdk_pixbuf_new_from_stream()
2682         back to gdk_pixbuf_new_from_inline(). Rework docs to try
2683         and be helpful for the common case. (#58308)
2684
2685 2001-10-05  Sven Neumann  <sven@gimp.org>
2686
2687         * gdk-pixbuf/gdk-pixbuf-io.c
2688         * gdk-pixbuf/gdk-pixbuf-private.h
2689         * gdk-pixbuf/gdk-pixbuf.c
2690         * gdk-pixbuf/gdk-pixbuf.h
2691         * gdk-pixbuf/io-jpeg.c
2692         * gdk-pixbuf/io-png.c: changed GDK_PIXBUF_ERROR_BAD_OPTION_VALUE to
2693         GDK_PIXBUF_ERROR_BAD_OPTION to we can use it for bad keys too. Added
2694         new public API gdk_pixbuf_get_option() to retrieve key/value pairs
2695         set by an image loader. Added support for saving and reading PNG tEXt 
2696         chunks in PNG images.
2697
2698 Tue Oct  2 11:29:50 2001  Owen Taylor  <otaylor@redhat.com>
2699
2700         * gdk-pixdata.c (gdk_pixdata_to_csource): Fix indentation
2701         use a macro to make code a bit more readable.
2702
2703 2001-10-02  Sven Neumann  <sven@gimp.org>
2704
2705         * gdk-pixdata.c: g_string_printfa => g_string_append_printf. 
2706
2707 Wed Sep 26 18:08:19 2001  Owen Taylor  <otaylor@redhat.com>
2708
2709         * Makefile.am (s-enum-types-h): Fix a typo in the include
2710         guards. (#61254, Skip Montaro)
2711
2712 2001-09-21  Matthias Clasen  <matthiasc@poet.de>
2713
2714         * io-xpm.c (xpm_extract_color): Rewritten to handle
2715         xpm colormap entries more thoroughly. (#59939)
2716
2717 2001-09-21  Hans Breuer  <hans@breuer.org>
2718
2719         * gdk-pixbuf.def : updated externals
2720
2721         * makefile.msc : generate gdk-pixbuf-enum-types.[hc]
2722
2723 Thu Sep 20 17:22:48 2001  Owen Taylor  <otaylor@redhat.com>
2724
2725         * io-tiff.c (gdk_pixbuf__tiff_image_load): On OSF, apparently fseek()
2726         works in some on-demand way, so the fseek
2727         gdk_pixbuf_new_from_file() doesn't work here since we are using
2728         the raw file descriptor. So, we call lseek() on the fileno(f)
2729         before using it. (#60840). 
2730
2731 2001-09-20  James Henstridge  <james@daa.com.au>
2732
2733         * Makefile.am (gdk-pixbuf-enum-types.c): same change as in pango,
2734         so that flags types are registered as flags rather than enums (not
2735         that there are any flags here at the moment).
2736
2737 Wed Sep 19 00:28:24 2001  Owen Taylor  <otaylor@redhat.com>
2738
2739         * Makefile.am (gdk_pixbuf_headers): Don't include
2740         gkd-pixbuf-features.h here since is in builddir
2741         and confuses autogen rules.
2742
2743         * Makefile.am: Don't += variables before they have values,
2744         automake-1.5 doesn't like it.
2745
2746         * Makefile.am: Fix srcdir != builddir for gdk-pixbuf-enum-types.c.
2747
2748         * Makefile.am: The whitespace strikes back.
2749         
2750 2001-09-17  Matt Wilson  <msw@redhat.com>
2751
2752         * Makefile.am (libpixbufloader_xbm_la_LDFLAGS): removed duplicate
2753         LDFLAGS definition, use the -avoid-version one.
2754         (libpixbufloader_tga_la_LDFLAGS): likewise
2755
2756 Mon Sep 17 11:49:02 2001  Owen Taylor  <otaylor@redhat.com>
2757
2758         * pixops/*: Mirror GdkInterpType to PixopsInterpType
2759         to avoid including gdk-pixbuf headers.
2760
2761 2001-09-16  James Henstridge  <james@daa.com.au>
2762
2763         * .cvsignore: add generated files to ignore list.
2764
2765         * gdk-pixbuf.h: include gdk-pixbuf-enum-types.h
2766
2767         * Makefile.am: add rules to build gdk-pixbuf-enum-types.[ch]
2768
2769 Fri Sep 14 23:22:12 2001  Matthias Clasen  <matthiasc@poet.de>
2770
2771         * io-pnm.c (pnm_read_header): Use GDK_PIXBUF_ERROR_CORRUPT_IMAGE,
2772         not GDK_PIXBUF_ERROR_HEADER_CORRUPT. (#58308)
2773
2774 Fri Sep 14 22:53:45 2001  Matthias Clasen  <matthiasc@poet.de>
2775
2776         * io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load): Handle
2777         out-of-memory situation better.
2778
2779         * io-pnm.c: Robustness fixes for pnm loader
2780
2781         * io-gif.c: Make gif loader survive TEST_RANDOMLY_MODIFY
2782
2783         * io-xpm.c (parse_color): detect very long color strings
2784
2785         All of the above from Matthias Clasen <matthiasc@poet.de>,
2786         the remaining from Soeren Sandmann <sandmann@daimi.au.dk>.
2787
2788         * test-images.h: add tests:
2789                 - four valid ppm's, eight invalid (matthiasc@poet.de)
2790                 - one invalid xpm (matthiasc@poet.de)
2791                 - one valid tga, one invalid (sandmann@daimi.au.dk)
2792                 - one invalid tiff (sandmann@daimi.au.dk
2793
2794         * test-loaders.c: enable tests for ppm, png, gif, tga, tiff, xpm
2795         
2796         * io-tiff.c (gdk_pixbuf__tiff_image_stop_load): TIFFClientOpen can
2797         fail - detect it when it happens
2798
2799         * io-tga.c (gdk_pixbuf__tga_load_increment): Fail if there is too
2800         much data in file
2801         
2802         * gdk-pixbuf-io.c: moved wbmb check after ico check to avoid false
2803         positives
2804         
2805 Fri Sep 14 00:30:48 2001  Tim Janik  <timj@gtk.org>
2806
2807         * Makefile.am: don't used BUILT_SOURCES to build marshal
2808         files, as in conjunction with stamp files, this can
2809         lead to endless rebuilding loops.
2810
2811 Tue Sep  4 00:22:07 2001  Owen Taylor  <otaylor@redhat.com>
2812
2813         * Makefile.am: Fix EXTRA_DIST for gdk-pixbuf-csource.1
2814
2815 Tue Sep  4 03:09:52 2001  Tim Janik  <timj@gtk.org>
2816
2817         * gdk-pixbuf-csource.1: new file, manual page for
2818         the publically installed gdk-pixbuf-csource utility.
2819
2820 Thu Aug 30 08:30:03 2001  Matthias Clasen  <matthiasc@poet.de>
2821
2822         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): Propagate
2823         errors from gdk_pixbuf_loader_load_module.
2824
2825 Thu Aug 30 08:27:37 2001  Matthias Clasen  <matthiasc@poet.de>
2826
2827         * io-png.c (png_row_callback): Check that row_num is valid.
2828
2829 Tue Aug 28 21:05:26 2001  Matthias Clasen  <matthiasc@poet.de>
2830
2831         * io-bmp.c (OneLine): Emit area_updated signal with proper
2832         area information. (#52002)
2833
2834 Tue Aug 28 20:03:43 2001  Matthias Clasen  <matthiasc@poet.de>
2835
2836         * test-loaders.c (test_loader): Catch errors at close time. 
2837         * test-loaders.c (main): Remove C++ comments. 
2838
2839 2001-08-21  Matthias Clasen  <matthiasc@poet.de>
2840
2841         * Makefile.am, gdk-pixbuf-io.c, pixbufloader_tga.def, 
2842         io-tga.c: Add tga loader, patch by Nicola Girardi. (#56067)
2843
2844 2001-08-20  Matthias Clasen  <matthiasc@poet.de>
2845
2846         * test-images.h, test-loaders.c: Add ico and wbmp tests.
2847         * io-jpeg.c (gdk_pixbuf__jpeg_image_save): Fail with a suitable
2848         error if buffer allocation fails.
2849         * io-ico.c: Make .ICO loader more robust.
2850         All of these are due to sandmann@daimi.au.dk (#50187)
2851
2852 2001-08-19  Sven Neumann  <sven@gimp.org>
2853
2854         * pixops/pixops.c: applied some simple but effective optimizations 
2855         to pixops_composite_nearest() and pixops_composite_color_nearest().
2856
2857 2001-08-07  Sven Neumann  <sven@gimp.org>
2858
2859         * gdk-pixbuf.c (gdk_pixbuf_fill): a comment asked to optimize this
2860         function, so that's what I did.
2861
2862 2001-08-06  Kjartan Maraas  <kmaraas@gnome.org>
2863
2864         * gdk-pixdata.c: Fix a typo.
2865         
2866 2001-07-30  Hans Breuer  <hans@breuer.org>
2867
2868         * pixops/makefile.msc : new file
2869         * makefile.msc : use it to complete the build
2870
2871 2001-07-20  Hans Breuer  <hans@breuer.org>
2872
2873         * gdk-pixdata.c : don't 'g_tohl (*istream++)', but move
2874         pointer increment out of the macro, because  at least one
2875         compiler (msvc 5.0) gets confused otherwise (applies the
2876         wrong increment).
2877
2878         * gdk_pixbuf.def : updated exports
2879
2880         * makefile.msc : reflect gdk-pixbuf-csource changes
2881  
2882 2001-07-17  Darin Adler  <darin@bentspoon.com>
2883
2884         * gdk-pixbuf-csource.c: Add missing <stdlib.h> include.
2885         * io-png.c: (setup_png_transformations): Add ifdef so we compile
2886         without warnings with G_DISABLE_CHECKS on.
2887         * io-pnm.c: (gdk_pixbuf__pnm_image_load_increment): Add a missing
2888         const.
2889         * io-wbmp.c: (getin), (get_mbi): Add a missing const.
2890         * io-xbm.c: (gdk_pixbuf__xbm_image_load_real): Get rid of some
2891         unused locals and add an initial value to quiet the compiler's
2892         unintialized variable warning.
2893         * pixops/pixops.c: Put an ifdef around some dead code.
2894
2895 Thu Jul  5 10:17:15 2001  Owen Taylor  <otaylor@redhat.com>
2896
2897         * pixops/Makefile.am (noinst_LTLIBRARIES): Switch
2898         over to the new include flags AC_SUBST(). (Problem
2899         pointed out by Mikael Hermansson.)
2900
2901 2001-06-29  Havoc Pennington  <hp@redhat.com>
2902
2903         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): fix for
2904         G_DISABLE_COMPAT
2905
2906 Thu Jun 28 21:54:19 2001  Owen Taylor  <otaylor@redhat.com>
2907
2908         * make-inline-pixbuf.c test-gdk-pixbuf.c test-loaders.c
2909         gdk-pixbuf-csource.c: Fix args to g_type_init ().
2910
2911 2001-06-28  Havoc Pennington  <hp@pobox.com>
2912
2913         * gdk-pixdata.c: <string.h>
2914
2915         * gdk-pixbuf-io.c (get_libdir): fix typo in dll name (aren't we
2916         also leaking memory here from g_strdup_printf?)
2917
2918 Tue Jun 26 09:48:02 2001  Tim Janik  <timj@gtk.org>
2919
2920         * Makefile.am (noinst_PROGRAMS): get rid of make-inline-pixbuf
2921
2922         * gdk-pixbuf-data.[hc]: provide gdk_pixbuf_new_from_stream()
2923         instead from gdk_pixbuf_new_from_inline().
2924
2925         * gdk-pixdata.[hc]: auxillary GdkPixdata structure, public
2926         installed API for applications that need to serialize/deserialize
2927         on their own (gimp, BEAST).
2928         
2929         * gdk-pixbuf/gdk-pixbuf-csource.c: provide publically installed
2930         program that can dump images in CSource format and Pixbuf
2931         stream format. supports RLE encoding, MACRO formatting etc...
2932         invoke with --help.
2933
2934 Mon Jun 25 00:28:11 2001  Owen Taylor  <otaylor@redhat.com>
2935
2936         * Makefile.am: Actually update timestamps, so rules don't
2937         constantly run.
2938
2939 2001-06-11  Havoc Pennington  <hp@redhat.com>
2940
2941         * Makefile.am (stamp-gdk-pixbuf-marshal.c): glib_genmarshal
2942         already includes top_builddir
2943
2944 2001-06-08  Havoc Pennington  <hp@redhat.com>
2945
2946         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_load_module): remove
2947         bogus g_return_if_fail  
2948
2949         * io-gif.c (gif_get_lzw): if delay time is 0 or smaller than
2950         likely timeout resolution, set it to an arbitrarily-chosen short
2951         delay.
2952         Fixes bug #55953 from warmenhoven@yahoo.com
2953
2954 2001-06-07  Havoc Pennington  <hp@redhat.com>
2955
2956         * Makefile.am: use Owen's new way of doing stampfiles/generated
2957         sources
2958
2959 2001-06-07  Havoc Pennington  <hp@redhat.com>
2960
2961         * Makefile.am (gdk-pixbuf-marshal.c): fix up the glib-genmarshal path
2962
2963 2001-06-05  Havoc Pennington  <hp@redhat.com>
2964
2965         * test-loaders.c (main): use putenv not setenv, reported by 
2966          Armin Theissen
2967
2968 2001-05-08  Havoc Pennington  <hp@redhat.com>
2969
2970         * gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): docs fixup, 
2971         and fix behavior to still subst color if the original image 
2972         had alpha
2973
2974 2001-06-04  Havoc Pennington  <hp@redhat.com>
2975
2976         * io-pnm.c (pnm_skip_whitespace): patch from Szekeres Istvan,
2977         bug #52560
2978
2979 2001-06-01  Havoc Pennington  <hp@redhat.com>
2980
2981         Apply patch from sandmann@daimi.au.dk, with some tweaks.
2982         Makes things a bit more robust, and adds test-loaders.c 
2983         which is good for finding further robustness bugs to fix.
2984         
2985         * io-tiff.c: Try to work around libtiff suckiness a bit; 
2986         put a giant thread lock on the whole loader, 
2987         paranoically check both whether error handlers were called and
2988         also whether functions return false. Handle case where width or
2989         height is 0. Various cleanups.
2990
2991         * io-png.c (gdk_pixbuf__png_image_stop_load): only unref pixbuf
2992         if it existed
2993         (png_error_callback): apparently libpng expects you to longjmp out
2994         of this thing?
2995
2996         * io-gif.c (struct _GifContext): remove unused "pixbuf" field
2997         (lzw_read_byte): change "Mail jrb if this fails" g_warning 
2998         to a g_set_error()
2999         (gif_get_lzw): check for out-of-memory
3000         (gif_prepare_lzw): catch/report an error
3001         (new_context): use try_malloc, since GifContext is nearly 70K
3002         (gdk_pixbuf__gif_image_load_increment): set context->buf to NULL
3003         so we don't crash later.
3004
3005         * Makefile.am: Add test-loaders
3006
3007         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): handle context ==
3008         NULL due to errors
3009         
3010 2001-05-29  Darin Adler  <darin@eazel.com>
3011
3012         * gdk-pixbuf.h: Fix prototype to use "(void)" instead of "()".
3013
3014 Mon May 28 14:21:35 2001  Jonathan Blandford  <jrb@redhat.com>
3015
3016         * io-bmp.c: Patch from Helmethead <hoshem@mel.comcen.com.au> to
3017         fix up bmp decoder to: 
3018          - adds 16 bpp bmp support (bug #53884)
3019          - adds OS/2 1.x format bmp support (bug #54964)
3020          - adds 4 bpp RLE compressed bmp support
3021          - adds 1 bpp colormap support
3022          - fixes negative height (top down) bmp support
3023
3024 2001-05-25  Hans Breuer  <hans@breuer.org>
3025
3026         * gdk_pixbuf.def : reflect Havoc's recent api change
3027
3028 Sun May 20 12:53:49 2001  Owen Taylor  <otaylor@redhat.com>
3029
3030         * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): Remove an
3031         excess $(GLIB_LIBS).
3032
3033 Sun May 13 11:59:11 2001  Owen Taylor  <otaylor@redhat.com>
3034
3035         * Makefile.am: Make modules depend on libgdk_pixbuf.la.
3036
3037 2001-05-04  Havoc Pennington  <hp@redhat.com>
3038
3039         * pixops/pixops.c (pixops_process): merge fix from stable: Patch
3040          from hoshem@mel.comcen.com.au to fix nonzero X offsets.  Fixes
3041          bug #50371.
3042         
3043         * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): merge
3044         from stable: Patch from OKADA Mitsuru <m-okada@fjb.co.jp> to fix
3045         confusion of using "src" instead of "p".
3046         (pixops_composite_color_nearest): Use a more accurate (and
3047         correct, to begin with) compositing method.  This cures checks
3048         showing through on images with no alpha.
3049
3050         * gdk-pixbuf.c (gdk_pixbuf_fill): fix bug that left some trailing
3051         bytes unfilled.
3052
3053         * gdk-pixbuf-io.h: fix UpdatedNotifyFunc to use signed ints
3054
3055         * gdk-pixbuf-loader.h (struct _GdkPixbufLoaderClass): Change
3056         area_updated signal to use signed ints.  Removed animation-related
3057         signals.
3058
3059         * io-gif.c, io-gif-animation.h, io-gif-animation.c: Massive
3060         rewrite action
3061
3062         * gdk-pixbuf-animation.c: Add GdkPixbufAnimationIter to abstract
3063         all the pesky details. Remove old frame-based API. Make
3064         GdkPixbufAnimation an abstract base class, derived by the loaders.
3065
3066 Sun Apr 22 15:51:32 2001  Owen Taylor  <otaylor@redhat.com>
3067
3068         * Makefile.am (LDADDS): Add $(MATH_LIB).
3069
3070 2001-04-18  Havoc Pennington  <hp@redhat.com>
3071
3072         * gdk-pixbuf.c (gdk_pixbuf_fill): Function to fill pixbuf with a
3073         given color.
3074
3075 Wed Apr  4 01:41:02 2001  Tim Janik  <timj@gtk.org>
3076
3077         * pixops/Makefile.am (noinst_LTLIBRARIES): include $top_srcdir
3078         so we don't try to get <gtk/gtkobject.h> from standard search
3079         paths.
3080
3081         * Makefile.am (gdk-pixbuf-marshal.c): use deps from srcdir.
3082         add gdk-pixbuf-marshal.list to EXTRA_DIST.
3083         take gdk-pixbuf-marshal.h out of _la sources.
3084
3085 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3086
3087         * makefile.mingw.in: Handle gdk-pixbuf-marshal.c.
3088
3089         * gdk_pixbuf.def: Update.
3090
3091         * pixbufloader_*.def: Just export the fill_vtable functions now.
3092
3093 2001-03-18  Mike Kestner  <mkestner@ameritech.net>
3094
3095         * make-inline-pixbuf.c (main): Added logic to remove output when
3096         failures occur.
3097
3098 2001-03-14  Havoc Pennington  <hp@redhat.com>
3099
3100         * Makefile.am (gdk-pixbuf-marshal.c): Use different temporary file
3101         from gdk-pixbuf-marshal.h, fixes parallel makes.
3102
3103 Thu Mar  1 04:01:57 2001  Tim Janik  <timj@gtk.org>
3104
3105         * test-gdk-pixbuf.c: fixed includes.
3106
3107 2001-02-18  Havoc Pennington  <hp@pobox.com>
3108
3109         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): prepend underscore
3110         (gdk_pixbuf_get_named_module): prepend underscore
3111         (gdk_pixbuf_get_module): prepend underscore
3112
3113 2001-02-19  Havoc Pennington  <hp@redhat.com>
3114
3115         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): const fix
3116
3117 2001-02-17  Havoc Pennington  <hp@pobox.com>
3118
3119         * gdk-pixbuf-loader.c (gdk_pixbuf_loader_new_with_type): docs
3120
3121 2001-02-07  Alexander Larsson  <alexl@redhat.com>
3122
3123         * io-xpm.c (free_buffer):
3124         Use g_free, since the buffer is allocated with g_try_alloc().
3125
3126 2001-02-06  Christophe Merlet  <redfox@eikonex.org>
3127
3128         * gdk-pixbuf-data.c: Fixes a minor typo.
3129
3130 Sun Feb  4 07:59:57 2001  Tim Janik  <timj@gtk.org>
3131
3132         * gdk-pixbuf.h: DOH! don't include glib/gobject.h but glib-object.h,
3133         we finally need the gobject->gruntime rename.
3134
3135         * *.c: scratched calls to g_type_init(), there's simply no point in
3136         doing that, use gtk_init().
3137
3138 2001-02-01  Havoc Pennington  <hp@pobox.com>
3139
3140         * gdk-pixbuf-loader.c, gdk-pixbuf-loader.h: rename "private" field
3141         in struct to "priv" for C++
3142
3143 2001-01-31  Havoc Pennington  <hp@pobox.com>
3144
3145         * gdk-pixbuf.c: include glib-object.h instead of gvaluetypes.h
3146
3147 2001-01-26  Havoc Pennington  <hp@redhat.com>
3148
3149         * gdk-pixbuf-io.c (mname): fix included modules case.
3150
3151 2001-01-22  Havoc Pennington  <hp@redhat.com>
3152
3153         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): check errors 
3154         from gdk_pixbuf_load_module
3155
3156 2001-01-22  Havoc Pennington  <hp@redhat.com>
3157
3158         * Makefile.am: Add built marshaller files to support
3159         GdkPixbufLoader signals
3160
3161         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): have
3162         GDK_PIXBUF_MODULEDIR unconditionally replace the compiled-in
3163         module location, rather than acting as a fallback, because we are
3164         using GDK_PIXBUF_MODULEDIR to use gdk-pixbuf before installing it.
3165
3166         * gdk-pixbuf.h: include gdk-pixbuf-loader.h
3167
3168         * gdk-pixbuf-loader.h, gdk-pixbuf-loader.c: Move back over here
3169         from gtk, and add error to close(), because stop_load may do
3170         parsing of the image.
3171         
3172         * pixops/have_mmx.S (_pixops_have_mmx): add newline at end of file
3173
3174         * io-*.c: make individual operations static, and add fill_vtable
3175         functions which are exported. Fix the collection of type warnings
3176         that surfaced, including a number of functions that didn't
3177         properly take a GError and some that weren't
3178         const-correct. Involved adding error handling for a few loaders.
3179
3180         * gdk-pixbuf-io.h: Add error reporting to stop_load function
3181         
3182         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): change to just look up
3183         a function that fills in the GdkPixbufModule vtable, instead of 
3184         looking up all the image functions individually; this means we 
3185         can get type safety within modules for the loader functions.
3186         Also it means you don't have to keep the statically compiled and 
3187         GModule versions in sync. 
3188
3189         * test-gdk-pixbuf.c (main): remove gdk_pixbuf_init()
3190
3191         * make-inline-pixbuf.c (main): remove call to gdk_pixbuf_init()
3192
3193         * gdk-pixbuf.h: nuke gdk_pixbuf_init()
3194         
3195         * gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_type): g_type_init
3196         () here
3197
3198         * gdk-pixbuf.c (gdk_pixbuf_get_type): g_type_init () here
3199
3200         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_get_type):
3201         g_type_init() here
3202
3203 2001-01-20  John Harper  <jsh@eazel.com>
3204
3205         * io-xbm.c: new pixbuf loader, for X bitmap files. Basically a
3206         collision between Xlib's RdBitF.c and io-tiff.c
3207
3208         * gdk-pixbuf-io.c, Makefile.am, pixbufloader_xbm.def: added
3209         io-xbm.c support
3210
3211         [ merged from stable gdk-pixbuf module. Untested, but it
3212         compiles, and works fine in the stable module ]
3213
3214 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3215
3216         * gdk-pixbuf-io.c (get_libdir): (Win32) Use the new
3217         g_win32_get_package_installation_subdirectory() function.  No need
3218         to include windows.h.
3219         (gtk_win32_get_installation_directory): Remove this then.
3220
3221 2001-01-01  Havoc Pennington  <hp@redhat.com>
3222
3223         * Makefile.am (libgdk_pixbuf_1_3_la_LDFLAGS): add
3224         @LIBTOOL_EXPORT_OPTIONS@
3225
3226 2000-12-30  Tor Lillqvist  <tml@iki.fi>
3227
3228         * gdk_pixbuf.def: Update.
3229
3230 2000-12-16  Havoc Pennington  <hp@pobox.com>
3231
3232         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): ref
3233         the pixbuf in the frame, so we can use gdk_pixbuf_frame_free
3234         (gdk_pixbuf_frame_copy): new function
3235         (gdk_pixbuf_frame_free): new function
3236         (gdk_pixbuf_frame_get_type): new function
3237         (GDK_TYPE_PIXBUF_FRAME): macro to get type for GdkPixbufFrame
3238
3239 Tue Nov 14 11:51:26 2000  Owen Taylor  <otaylor@redhat.com>
3240
3241         * Makefile.am: Add -avoid-version for all modules.
3242
3243 2000-11-13  Havoc Pennington  <hp@redhat.com>
3244
3245         * io-png.c (png_simple_error_callback): fix error message to not
3246         say "save" since it's used for loading
3247
3248 2000-11-11  Hans Breuer <Hans@Breuer.Org>
3249
3250         * gdk-pixbuf-io.c : Fix all function prototype macros for self 
3251         contained image handlers (!USE_G_MODULE). Files to save should
3252         be opened in binary mode, fopen(s, "wb").
3253
3254         * io-xpm.c : added HAVE_UNISTD_H condition
3255
3256 2000-11-11  Tor Lillqvist  <tml@iki.fi>
3257
3258         * gdk_pixbuf.def: Add gdk_pixbuf_new_subpixbuf.
3259
3260         * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): Use
3261         g_file_open_tmp() (just added to GLib) instead of mkstemp() (or
3262         mktemp() and open()).
3263         
3264         * io-xpm.c (gdk_pixbuf__xpm_image_begin_load): Ditto.
3265
3266 2000-11-01  Havoc Pennington  <hp@pobox.com>
3267
3268         * gdk-pixbuf.c (gdk_pixbuf_new_subpixbuf): New function to create 
3269         a pixbuf pointing to a subregion of another pixbuf.
3270
3271 2000-10-16  Tor Lillqvist  <tml@iki.fi>
3272
3273         * gdk-pixbuf-io.c: Define also m_save (for the non-gmodule case).
3274
3275 2000-10-16  Havoc Pennington  <hp@redhat.com>
3276
3277         * gdk-pixbuf-io.c (gdk_pixbuf_get_module)
3278         (gdk_pixbuf_get_named_module) (gdk_pixbuf_load_module): 
3279         add error reporting here also
3280
3281         * make-inline-pixbuf.c (main): use GError
3282
3283         * io-xpm.c: include unistd.h
3284
3285         * gdk-pixbuf-util.c: include string.h
3286
3287         * io-*.c: add error reporting
3288         
3289         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): add
3290         error reporting
3291
3292         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Add error reporting
3293
3294         * gdk-pixbuf-io.h: Add GError** to load_increment and load 
3295         methods
3296
3297         * gdk-pixbuf-io.c (gdk_pixbuf_save) (gdk_pixbuf_savev): return 
3298         a G_FILE_ERROR if we fail to write or close the file.
3299
3300         * gdk-pixbuf.h: remove GDK_PIXBUF_ERROR_IO, instead we'll use
3301         G_FILE_ERROR_*. Rename enum to GdkPixbufError, properly following
3302         the GError naming rules. Add GError** to load functions.
3303
3304 2000-10-06  Havoc Pennington  <hp@redhat.com>
3305
3306         * gdk-pixbuf.h: add GdkPixbufAlphaMode
3307
3308 2000-10-06  Havoc Pennington  <hp@redhat.com>
3309
3310         This entry is a summary of the merged-in changes from 1.0. 
3311         Relevant original ChangeLog entries are spliced in after 
3312         this entry; the files they refer to are from the 1.0
3313         gdk-pixbuf sources.
3314         
3315         * pixops/pixops.c (pixops_composite_nearest): sync a small fix
3316         from 1.0
3317
3318         * io-xpm.c (xpm_seek_string): add fscanf error check from 1.0
3319         Add progressive loader from 1.0
3320
3321         * io-tiff.c (gdk_pixbuf__tiff_image_begin_load): mem leak fixes
3322         from 1.0 tree
3323
3324         * io-pnm.c: new version from 1.0 tree
3325
3326         * io-jpeg.c (gdk_pixbuf__jpeg_image_load): sync from 1.0, use 
3327         malloc not g_malloc
3328
3329         * io-gif.c (lzw_read_byte): sync from 1.0, change a g_error to
3330         g_warning
3331         (gif_get_next_step): return 0 here, sync from 1.0
3332
3333         * gdk-pixbuf-util.c: sync email address change for Cody
3334         Russell
3335
3336 2000-09-11  Jeffrey Stedfast  <fejj@helixcode.com>
3337
3338         * gdk-pixbuf/io-pnm.c: Pretty much totally rewrote again because
3339         last nights code was still "broken". Should now properly handle
3340         all error conditions gracefully.
3341
3342 2000-09-10  Jeffrey Stedfast  <fejj@helixcode.com>
3343
3344         * gdk-pixbuf/io-pnm.c: Rewrote.
3345
3346 2000-09-09  Federico Mena Quintero  <federico@helixcode.com>
3347
3348         * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest): Compute
3349         the correct dest offset.
3350
3351 2000-08-25  Federico Mena Quintero  <federico@helixcode.com>
3352
3353         * gdk-pixbuf/io-xpm.c: #include <unistd.h>
3354
3355 2000-08-05  Larry Ewing  <lewing@helixcode.com>
3356
3357         * gdk-pixbuf/io-tiff.c: stop leaking context->tempname.
3358
3359         * gdk-pixbuf/io-xpm.c: same as above.
3360
3361 2000-07-26  Michael Meeks  <michael@helixcode.com>
3362
3363         * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): make
3364         g_malloc a malloc.
3365
3366 2000-07-21  Larry Ewing  <lewing@helixcode.com>
3367
3368         * gdk-pixbuf/io-xpm.c: add a fake progressive loader so that
3369         xpm at least supports the progressive interface like the one in
3370         io-tiff.c. This should be reimplemented as an actual progressive
3371         loader.
3372
3373 2000-07-19  Jonathan Blandford  <jrb@redhat.com>
3374
3375         * demo/pixbuf-demo.c (update_timeout): changed scaling level to
3376         make it look better.
3377         * gdk-pixbuf/testpixbuf.c (update_timeout): Patch from michael
3378         meeks to handle errors better.
3379         
3380 2000-10-07  Tor Lillqvist  <tml@iki.fi>
3381
3382         * gdk_pixbuf.def
3383         * pixbufloader_jpeg.def
3384         * pixbufloader_png.def: Add new entry points.
3385
3386         * makefile.mingw.in: Use libintl.
3387
3388 2000-10-06  Havoc Pennington  <hp@redhat.com>
3389
3390         * gdk-pixbuf-io.c (gdk_pixbuf_save): s/format/type/g to be
3391         consistent with gdk_pixbuf_loader_new_with_type(). 
3392         Return runtime error if a module is missing.
3393
3394         * gdk-pixbuf.h: add GDK_PIXBUF_ERROR_UNKNOWN_TYPE
3395
3396 2000-10-05  Havoc Pennington  <hp@redhat.com>
3397
3398         Pixbuf saving, patch from David Welton.
3399         
3400         * Makefile.am (GDK_PIXBUF_LIBS): add INTLLIBS
3401         (libgdk_pixbuf_1_3_la_SOURCES): add gdk-pixbuf-i18n.h
3402
3403         * gdk-pixbuf-i18n.h: Add _() to gdk-pixbuf
3404
3405         * io-png.c (gdk_pixbuf__png_image_save): PNG save routine.
3406
3407         * io-jpeg.c (gdk_pixbuf__jpeg_image_save): JPEG save routine.
3408
3409         * gdk-pixbuf-io.c (gdk_pixbuf_save): 
3410         (gdk_pixbuf_savev): Implement pixbuf saving routines
3411
3412         * gdk-pixbuf.c (gdk_pixbuf_error_quark): pixbuf error quark
3413         function
3414
3415         * gdk-pixbuf.h: Add public save routines; add pixbuf error 
3416         types
3417
3418         * gdk-pixbuf-io.h: Add save function to GdkPixbufModule
3419
3420 2000-10-05  Dan Winship  <danw@helixcode.com>
3421
3422         * io-png.c, io-tiff.c, io-xpm.c: Fix comments to not claim that
3423         all three of these files are the JPEG image loader. (From
3424         gdk-pixbuf module.)
3425
3426 2000-10-03  Tor Lillqvist  <tml@iki.fi>
3427
3428         * makefile.mingw.in: Add rule for make-inline-pixbuf. Use
3429         gdk-pixbuf's version number in the rule for makefile.mingw itself.
3430
3431         * gdk_pixbuf.def: Add new entry points.
3432
3433 2000-09-26  Havoc Pennington  <hp@redhat.com>
3434
3435         * gdk-pixbuf-util.c (gdk_pixbuf_saturate_and_pixelate): Add this
3436         function here, instead of putting it in a private GTK+ file.
3437
3438         * gdk-pixbuf-private.h (GdkPixbufInlineFormat): include an 
3439         enum here for the known formats of inlined pixbufs.
3440         Also, #define our file magic here.
3441
3442 2000-06-23  Havoc Pennington  <hp@redhat.com>
3443
3444         * make-inline-pixbuf.c: Small program that creates C variable
3445         declarations of inline pixbuf data. This can be read 
3446         by gdk_pixbuf_new_from_inline.
3447
3448         * gdk-pixbuf.h (gdk_pixbuf_new_from_inline): New function to read
3449         inline pixbuf data and create a pixbuf from it. 
3450
3451         * gdk-pixbuf-data.c (gdk_pixbuf_new_from_inline): implement here
3452
3453 2000-09-07  Tor Lillqvist  <tml@iki.fi>
3454
3455         * makefile.mingw.in: Use own version number for gdk-pixbuf DLLs,
3456         like on Unix.
3457
3458 2000-08-12  Tor Lillqvist  <tml@iki.fi>
3459
3460         * gdk_pixbuf.def: Add missing entry point.
3461
3462 2000-08-10  Havoc Pennington  <hp@redhat.com>
3463
3464         * Makefile.am (EXTRA_DIST): The *.def files had the wrong names
3465         (s/pixbuf_/pixbufloader_)
3466         
3467 2000-08-02  Tor Lillqvist  <tml@iki.fi>
3468
3469         * io-bmp.c
3470         * io-ico.c
3471         * io-ras.c
3472         * io-tiff.c
3473         * io-wbmp.c: Conditionalise inclusion of <unistd.h>.
3474
3475         * makefile.mingw.in: List loaders alphabetically. Add the wbmp
3476         one. Fix names of DLLs to have '-' instead of '_'.
3477
3478 2000-07-31  Elliot Lee  <sopwith@redhat.com>
3479         * io-wbmp.c: Some bug fixes - now tested to work.
3480
3481 2000-07-27  Elliot Lee  <sopwith@redhat.com>
3482
3483         * gdk-pixbuf-io.h, gdk-pixbuf-io.c: Add
3484         gdk_pixbuf_get_named_module() function to facilitate above change
3485         * io-wbmp.c, pixbufloader_wbmp.defs, gdk-pixbuf-io.c, Makefile:
3486         Implement loader for WBMP format.
3487         * io-bmp.c: Don't malloc a temporary buffer - use stack instead.
3488
3489 2000-07-23  Tor Lillqvist  <tml@iki.fi>
3490
3491         Win32 build setup:
3492         
3493         * makefile.mingw.in
3494         * pixops/makefile.mingw.in
3495         * pixbuf_*.def: New files.
3496
3497         * Makefile.am
3498         * pixops/Makefile.am: Add them. Add rule to generate makefile.mingw.
3499
3500         * gdk-pixbuf-io.c (gtk_win32_get_installation_directory):
3501         New function, to get the GTK+ installation directory from
3502         the Windows Registry, where the installation program
3503         for whatever software includes GTK+ has stored it.
3504
3505         Used to avoid having hardcoding the directory where to look for
3506         loaders. This function is needed by gtk, too, so it should
3507         really be just in one place. Maybe a small static library
3508         one level up from here?
3509
3510         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file)
3511         * gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): 
3512         Open file in binary mode. This *is* standard C. (No-op on Unix,
3513         of course.)
3514
3515         * io-jpeg.c: If we don't HAVE_SIGSETJMP, use normal setjmp().
3516
3517         * io-tiff.c: Use g_get_tmp_dir(). If we don't HAVE_MKSTEMP, use
3518         mktemp() and open().
3519         (gdk_pixbuf__tiff_image_stop_load): g_free() also the tempname.
3520
3521         * pixops/*.S: The Gas from mingw32 doesn't like the .type
3522         pseudo-op. Conditionalise on __MINGW32__, but probably
3523         should conditionalise on Gas version instead? Or could we
3524         do without .type on all systems?
3525
3526         * pixops/timescale.c: Use g_get_current_time()
3527         instead of gettimeofday().
3528
3529 Sat Jul 22 10:57:22 2000  Owen Taylor  <otaylor@redhat.com>
3530
3531         * Makefile.am (test_gdk_pixbuf_LDADD): Remove -lgmodule
3532
3533 Tue Jul 11 11:26:42 2000  Owen Taylor  <otaylor@redhat.com>
3534
3535         * gdk-pixbuf.c: Add <string.h> include.
3536
3537 Tue Jul 11 06:20:14 2000  Tim Janik  <timj@gtk.org>
3538
3539         * io-gif.c (gdk_pixbuf__gif_image_load_animation): 
3540         * gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): 
3541         * gdk-pixbuf-animation.c (gdk_pixbuf_animation_new_from_file): 
3542         use g_object_new() instead of g_type_create_instance() which
3543         is a private function for fundamental type implementations.
3544         
3545 Thu Jul  6 11:49:47 2000  Owen Taylor  <otaylor@redhat.com>
3546
3547         * Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use GTK+ version
3548         soname scheme for gdk-pixbuf.
3549         
3550 2000-06-21  Havoc Pennington  <hp@pobox.com>
3551
3552         * gdk-pixbuf.c: Convert GdkPixbuf to GObject, leaving it opaque
3553         (i.e. derivation is not allowed, and there are no virtual methods
3554         anyway).
3555         (gdk_pixbuf_preinit): Call g_type_init() here.
3556         (gdk_pixbuf_init): Add a user-friendly init function, for users
3557         of standalone gdk-pixbuf
3558
3559         * gdk-pixbuf-animation.c: Convert to GObject, in the same
3560         way GdkPixbufAnimation was done.
3561         
3562         * gdk-pixbuf.h: Remove gdk_pixbuf_set_unref_handler() and
3563         gdk_pixbuf_finalize() from API, since these are broken and don't
3564         make sense with new GObject stuff.
3565
3566 Wed Jun 21 16:02:48 2000  Owen Taylor  <otaylor@redhat.com>
3567
3568         * gdk-pixbuf-io.c (gdk_pixbuf_load_module): Add feature to
3569         support a GDK_PIXBUF_MODULEDIR env variable as a secondary
3570         load location.
3571
3572 2000-06-10  Federico Mena Quintero  <federico@helixcode.com>
3573
3574         * demo/pixbuf-demo.c: It was cold and rainy this Saturday morning,
3575         so I needed something to warm my thighs.  Running plain infinite
3576         loops on your laptop to make it hot is not very much fun.  A demo
3577         of the gdk-pixbuf scaling functions is way better, and looks
3578         prettier, too.
3579
3580         * configure.in (AC_OUTPUT): Added the demo Makefile.
3581
3582         * Makefile.am (SUBDIRS): Added the demo directory.
3583
3584 2000-06-09  Larry Ewing  <lewing@helixcode.com>
3585
3586         * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load_increment):
3587         setjmp for the png error handler.  It seems setting the error
3588         handling functions does not avoid the jump, and so not calling
3589         setjmp was causing the incremental loader to jump into lala land.
3590         (gdk_pixbuf__png_image_begin_load): setjmp for error handling, I'm
3591         not sure this one is actually required but the docs say it must be
3592         set for every call to a png_* function.
3593         Also changed the comment to reflect the fact that setting the
3594         error handlers does _not_ avoid the longjmp.
3595
3596 2000-06-06  Larry Ewing  <lewing@helixcode.com>
3597
3598         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3599         take frame offest into account when trying to calculate the
3600         animation bbox.  Also set the width to the width not the height.
3601         (gdk_pixbuf_loader_animation_done): cycle over the frames to
3602         calculate bbox because now we finally have all the offset
3603         information for each frame.
3604
3605 2000-06-05      Mathieu Lacage  <mathieu@gnome.org>
3606
3607         * configure.in: add some gtk parameters to the
3608         GDK_PIXBUF_LIB?�?S and GDK_PIXBUG_INCLUDEDIR vars. One more
3609         fight in my crusade for strange prefix compile...
3610
3611 2000-05-30  Not Zed  <NotZed@HelixCode.com>
3612
3613         * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_begin_load):
3614         Initialise the error handler exit routine to our own.  Note this
3615         means that every function that accesses the jpeg lib on this
3616         object MUST do a setjmp.
3617         (gdk_pixbuf__jpeg_image_stop_load): setjmp before accessing jpeg
3618         lib for handling fatal error.
3619         (gdk_pixbuf__jpeg_image_load_increment): And here too.  So now
3620         your applications dont quit if there's a jpeg error!
3621
3622 2000-05-30  Federico Mena Quintero  <federico@helixcode.com>
3623
3624         * gdk-pixbuf.spec.in: Include all the loader libraries.  Patch
3625         from Frank de Lange <frank@unternet.org>.
3626
3627 2000-05-09  Darin Adler  <darin@eazel.com>
3628
3629         * gdk-pixbuf/test-gdk-pixbuf.c:
3630         Fixed includes to get rid of accidental GNOME dependency.
3631
3632 2000-05-26  Cody Russell  <car0969@gamma2.uta.edu>
3633         * Makefile.am: Added gdk-pixbuf.spec to EXTRA_DIST
3634
3635 2000-05-22  Federico Mena Quintero  <federico@helixcode.com>
3636
3637         * configure.in: Bumped version number to 0.8.0.
3638
3639         * doc/Makefile.am (content_files): The toplevel gdk-pixbuf.sgml
3640         file was not being distributed.
3641
3642         * gdk-pixbuf/pixops/Makefile.am (EXTRA_DIST): Added DETAILS.
3643
3644 2000-05-09  Darin Adler  <darin@eazel.com>
3645
3646         * gdk-pixbuf/gdk-pixbuf-drawable.c: (rgb565lsb), (rgb565msb),
3647         (rgb565alsb), (rgb565amsb), (rgb555lsb), (rgb555msb), (rgb555alsb),
3648         (rgb555amsb), (convert_real_slow): Change all conversion from 16-bit
3649         formats to 32-bit formats to re-use the high bits of the color values
3650         so that white maps to full white.
3651
3652 Fri May  5 12:16:32 2000  Owen Taylor  <otaylor@redhat.com>
3653
3654         * gdk-pixbuf/pixops/DETAILS: Add beginnings of file with 
3655         detailed information about the structure and algorithms
3656         of pixops so people can fix it instead of breaking it.
3657
3658 2000-05-04  Darin Adler  <darin@eazel.com>
3659
3660         * gdk-pixbuf/pixops/pixops.c: (pixops_composite_nearest),
3661         (composite_pixel), (composite_line):
3662         * gdk-pixbuf/test-gdk-pixbuf.c: (simple_composite_test_one_type):
3663         Now that Owen explained the algorithm, I think I implemented it
3664         right for the cases where the destination pixbuf is not opaque.
3665         The test does seem to confirm it.
3666
3667 2000-05-04  Darin Adler  <darin@eazel.com>
3668
3669         * gdk-pixbuf/.cvsignore:
3670         * gdk-pixbuf/Makefile.am:
3671         * gdk-pixbuf/test-gdk-pixbuf.c (store_pixel), (fill_with_pixel),
3672         (load_pixel), (simple_composite_test_one),
3673         (simple_composite_test_one_type), (simple_composite_test), (main):
3674         Added some tests of composite to highlight problems in the old
3675         implementation. These tests run without any user interaction.
3676         Just do "make check".
3677
3678         * gdk-pixbuf/pixops/pixops.c (pixops_composite_nearest),
3679         (composite_pixel), (composite_line): Fix composite to do a textbook
3680         "A over B" composite. This was clearly the intent, and it was easy
3681         to fix the code to do it. (Note to those that read my earlier tries
3682         at a patch; this version fixes typos that were present in all
3683         my patch attempts. I checked the final version by adding more tests.)
3684
3685 2000-04-22 05:27:43 2000  Owen Taylor  <otaylor@redhat.com>
3686
3687         * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Properly
3688         offset y coordinate accordining to render_y0.
3689
3690         * gdk-pixbuf/gdk-pixbuf-scale.c: Properly handle nonzero
3691         dest_x, dest_y.
3692
3693 2000-04-22  James Henstridge  <james@daa.com.au>
3694
3695         * gdk-pixbuf.spec.in (%files): moved %{prefix}/bin/* from the main
3696         package to the devel package.  The only file installed in bin is
3697         gdk-pixbuf-config, which belongs in -devel.  This should allow having
3698         multiple versions of the main gdk-pixbuf package installed.
3699
3700 2000-04-17  Karl Eichwalder  <ke@suse.de>
3701
3702         * gdk-pixbuf/Makefile.am (INCLUDES): Add $(GNOME_CFLAGS).
3703         Reported by Jens Finke.
3704
3705 2000-04-14 Tomasz K?�?opczko <kloczek@pld.org.pl>
3706
3707         * gdk-pixbuf/pixops/makefile.am: $(LIBART_CFLAGS) replaced by 
3708         $(GTK_CFLAGS) - now gdk-pixbuf compiles correctly.
3709
3710 2000-04-13  James Henstridge  <james@daa.com.au>
3711
3712         * configure.in: when performing the configure check to see if
3713         gmodule works, set CFLAGS to GLIB_CFLAGS and LIBS to GLIB_LIBS,
3714         rather than the other way round.  Also, call AC_MSG_RESULT in the
3715         even that dynamic modules were not supported.
3716
3717 2000-04-12  Federico Mena Quintero  <federico@helixcode.com>
3718
3719         This comes from an excellent idea by Tim Janik (timj@gtk.org) to
3720         hook to the last unref operation.
3721
3722         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_set_last_unref_handler): New
3723         function to set the last unref handler for a pixbuf.
3724         (gdk_pixbuf_finalize): New function to actually finalize a pixbuf.
3725         It calls the pixbuf's destroy notification function and frees the
3726         GdkPixbuf structure itself.
3727         (gdk_pixbuf_unref): Use the last unref function of the pixbuf if
3728         available.
3729
3730         * gdk-pixbuf/gdk-pixbuf-private.h (struct _GdkPixbuf): New fields
3731         for the last unref handler and its user data.
3732
3733         * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Use
3734         g_new0() to allocate the pixbuf.
3735
3736         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
3737         Fixed the call to gtk_signal_new() for the "frame_done" signal; it
3738         was not specifying the `frame' argument.
3739
3740         * gdk-pixbuf/gdk-pixbuf-animation.c
3741         (gdk_pixbuf_animation_get_width): Fixed docstring.
3742         (gdk_pixbuf_animation_get_height): Likewise.
3743         (gdk_pixbuf_animation_get_num_frames): Likewise.
3744         (gdk_pixbuf_animation_get_frames): Likewise.
3745
3746         * doc/gdk-pixbuf-sections.txt: Updated with the new functions and
3747         types.
3748
3749         * doc/tmpl/gdk-pixbuf.sgml: Added the description for GdkColorspace.
3750
3751         * doc/tmpl/scaling.sgml: Added the description for GdkInterpType.
3752
3753         * doc/tmpl/refcounting.sgml: Updated with the information about
3754         the last unref handler.
3755
3756         * doc/tmpl/*.sgml: Markup tweaks.
3757
3758         * gdk-pixbuf/Makefile.am (libgnomecanvaspixbuf_la_LDFLAGS): Sigh,
3759         update the libtool version number for libgnomecanvaspixbuf as
3760         well.
3761         (libpixbufloader_*_la_LDFLAGS): The loaders need to be versioned
3762         as well, or the old ones won't work with the new stuff.  Also,
3763         renamed the modules as follows.
3764
3765         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_load_module): Now the
3766         modules are called "libpixbufloader-<format>.so" instead of
3767         "libpixbuf-<format>.so".  They needed renaming so that the new
3768         loaders won't overwrite the old ones; even with the versioning
3769         stuff, the new .so symlink to the .so.1.0.0 would overwrite the
3770         old real .so file.
3771
3772 2000-04-12  Paolo Molaro <lupus@debian.org>
3773
3774         * .cvsignore, src/.cvsignore: shut up cvs.
3775
3776 2000-04-11  Federico Mena Quintero  <federico@helixcode.com>
3777
3778         Most of this patch is based on a patch by Havoc Pennington
3779         (hp@redhat.com) to make GdkPixbuf's structures opaque and to
3780         remove the libart dependency.
3781
3782         * gdk-pixbuf/gdk-pixbuf.h: Removed the public structures.
3783         (GdkColorspace): New enum that for now only contains
3784         GDK_COLORSPACE_RGB.
3785         (GdkPixbufDestroyNotify): New type for the pixbuf's pixels destroy
3786         notification function.
3787         (GdkInterpType): New num with interpolation types.
3788
3789         * *.[ch]: Replace the libart stuff with our own stuff.
3790
3791         * pixops/*.[ch]: Likewise.
3792
3793         * gdk-pixbuf/gdk-pixbuf-private.h: New file with the private
3794         declarations of the GdkPixbuf structures.
3795
3796         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_new_from_art_pixbuf):
3797         Removed function.
3798         (gdk_pixbuf_get_format): Constify.
3799         (gdk_pixbuf_get_n_channels): Constify.
3800         (gdk_pixbuf_get_has_alpha): Constify.
3801         (gdk_pixbuf_get_bits_per_sample): Constify.
3802         (gdk_pixbuf_get_pixels): Constify.
3803         (gdk_pixbuf_get_width): Constify.
3804         (gdk_pixbuf_get_height): Constify.
3805         (gdk_pixbuf_get_rowstride): Constify.
3806
3807         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_copy): New function to copy
3808         a pixbuf.
3809
3810         * gdk-pixbuf/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Added a
3811         bits_per_sample argument; currently only 8 bits per sample are
3812         supported.
3813
3814         * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_frame_get_pixbuf):
3815         New accessor.
3816         (gdk_pixbuf_frame_get_x_offset): New accessor.
3817         (gdk_pixbuf_frame_get_y_offset): New accessor.
3818         (gdk_pixbuf_frame_get_delay_time): New accessor.
3819         (gdk_pixbuf_frame_get_action): New accessor.
3820
3821         * gdk-pixbuf/gdk-pixbuf-render.c
3822         (gdk_pixbuf_render_pixmap_and_mask): Instead of returning a solid
3823         mask rectangle for pixbufs without an alpha channel, set the
3824         *mask_return to NULL.
3825
3826         * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_add_alpha): Constify.
3827
3828         * gdk-pixbuf/gdk-pixbuf-scale.c: Fix includes.
3829
3830         * gdk-pixbuf/gdk-pixbuf-scale.c (gdk_pixbuf_scale): Added some
3831         preconditions.  Maybe we should also check for the colorspace,
3832         bits per pixel, and such.
3833         (gdk_pixbuf_composite): Likewise.
3834         (gdk_pixbuf_composite_color): Likewise.
3835         (gdk_pixbuf_scale_simple): Likewise, and fail gracefully if we
3836         cannot allocate the new pixbuf.
3837         (gdk_pixbuf_composite_color_simple): Likewise.
3838
3839         * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render):
3840         Use art_rgb_rgba_affine() or art_rgb_affine() since we no longer
3841         have an ArtPixBuf.
3842
3843         * gdk-pixbuf/io-bmp.c: Fix includes.
3844
3845         * gdk-pixbuf/pixops/pixops.c (pixops_scale_nearest): Fixed cast in
3846         an lvalue.
3847
3848         * TODO: Populated.
3849
3850         * configure.in: Removed checks for libart.
3851
3852         * gdk-pixbuf/Makefile.am: Removed references to libart.
3853         (noinst_HEADERS): Added gdk-pixbuf-private.h.
3854
3855         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Incremented
3856         the version number of the libtool library to indicate that this
3857         definitely is not compatible with the old usage.  I know you love
3858         me.  I know you do.
3859
3860         * configure.in: Bumped version number to 0.7.0.
3861
3862         * README: Updated.
3863
3864         * gdk-pixbuf-config.in (--libs): We no longer require libart.
3865
3866         * DEPENDS.libgdk_pixbuf: We no longer depend on libart.
3867
3868         * gdk-pixbuf.spec.in: Updated, but I don't guarantee anything.
3869
3870 2000-04-06  Jonathan Blandford  <jrb@redhat.com>
3871
3872         * gdk-pixbuf/testanimation.c (main): add more info to the
3873         testanimation frames.
3874
3875 2000-04-04  Ettore Perazzoli  <ettore@helixcode.com>
3876
3877         * gdk-pixbuf/gdk-pixbuf-animation.c
3878         (gdk_pixbuf_animation_get_width): New accessor function.
3879         (gdk_pixbuf_animation_get_height): New accessor function.
3880         (gdk_pixbuf_animation_get_num_frames): New accessor function.
3881         (gdk_pixbuf_animation_get_frames): New accessor function.
3882
3883 2000-04-01  Federico Mena Quintero  <federico@helixcode.com>
3884
3885         * gdk-pixbuf/gdk-pixbuf.c: Reverted Mark's change.  The refcount
3886         is private information, and the art_pixbuf will go away soon.
3887
3888 2000-03-31  Mark Crichton  <crichton@gimp.org>
3889
3890         * gdk-pixbuf/gdk-pixbuf.c: Added gdk_pixbuf_get_refcount
3891         and gdk_pixbuf_get_artpixbuf accessor functions.
3892
3893 2000-03-29  Federico Mena Quintero  <federico@helixcode.com>
3894
3895         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_get_has_alpha): Return
3896         gboolean instead of int.
3897
3898 2000-03-29  Radek Doulik  <rodo@helixcode.com>
3899
3900         * gdk-pixbuf/gdk-pixbuf-animation.c
3901         (gdk_pixbuf_animation_new_from_file): same as below
3902
3903         * gdk-pixbuf/io-gif.c (gif_get_lzw): added update of width and
3904         height in GdkPixbufAnimation
3905
3906 2000-03-28  Radek Doulik  <rodo@helixcode.com>
3907
3908         * gdk-pixbuf/io-gif.c (gif_get_lzw): test also for
3909         context->frame_done_func and context->anim_done_func to make
3910         progressive animation loading work
3911
3912         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
3913         added priv->pixbuf = NULL as pixbuf is now in frame (and to make
3914         gdk_pixbuf_loader_prepare happy)
3915         (gdk_pixbuf_loader_frame_done): update animation bbox
3916
3917         * gdk-pixbuf/gdk-pixbuf.h: added bbox size (width, height) to
3918         _GdkPixbufAnimation
3919
3920 2000-03-27  Radek Doulik  <rodo@helixcode.com>
3921
3922         * gdk-pixbuf/io-gif.c (gif_get_lzw): use frame_len and frame_width
3923         instead of width and height
3924
3925 2000-03-27  Owen Taylor  <otaylor@redhat.com>
3926
3927         * gdk-pixbuf/pixops/pixops.c: Fix problem with 
3928         precendence of >> and & which was keeping composite_color
3929         from working with non-gray images.
3930
3931 2000-03-08  Jonathan Blandford  <jrb@redhat.com>
3932
3933         * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load): free the context.
3934         (gdk_pixbuf__gif_image_load_animation): free the context.
3935
3936 2000-03-06  Arjan van de Ven <arjan@fenrus.demon.nl>
3937
3938         * gdk-pixbuf/io-bmp.c: Fixed to pointer-bugs and a 
3939         mis-interpretation of the Microsoft documentation. Now
3940         it can load .BMP files that are not generated by The Gimp
3941         as well.
3942
3943 2000-03-01  Mark Crichton  <crichton@gimp.org>
3944
3945         * configure.in: Added BUILD_CANVAS_ITEM stuff to (finally)
3946         fix the last auto* build bug (where we have libart, but no
3947         gnome-libs)
3948
3949         * gdk-pixbuf/Makefile.am: Same.
3950
3951 2000-02-28  Matt Wilson  <msw@redhat.com>
3952
3953         * gdk-pixbuf/gdk-pixbuf-drawable.c: s/unsigned long/guint32/g,
3954         s/unsigned short/guint16/g, s/unsigned char/guint8/g
3955
3956 2000-02-26  Federico Mena Quintero  <federico@helixcode.com>
3957
3958         * README: We don't require libgif/ungif nor libXpm.
3959
3960         * NEWS: This was outdated, so updated it.
3961
3962 2000-02-25  Federico Mena Quintero  <federico@helixcode.com>
3963
3964         * gdk-pixbuf.m4: Use the correct name for
3965         gdk-pixbuf/gdk-pixbuf.h.  Thanks to Jacob Berkman for pointing
3966         this out.
3967
3968 2000-02-21  Federico Mena Quintero  <federico@helixcode.com>
3969
3970         * configure.in (GDK_PIXBUF_MINOR): Bumped version number to 0.6.0.
3971
3972         * doc/compiling.sgml: New appendix documenting the gdk-pixbuf
3973         library's particular options to configure.in.
3974
3975         * doc/gdk-pixbuf.sgml: Include compiling.sgml appendix via an
3976         entity.
3977
3978         * doc/Makefile.am (gdk-pixbuf.html): Added compiling.sgml.
3979
3980         * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load_increment):
3981         Fixed typo in prototype name.
3982
3983         * configure.in: Changed duplicated AC_MSG_CHECKING message to
3984         something more meaningful; now it is "checking whether dynamic
3985         modules work".
3986
3987         * gdk-pixbuf/pixops/Makefile.am (noinst_PROGRAMS): Do not install
3988         the timescale program.
3989
3990         Integrated Miguel de Icaza's <miguel@gnu.org> patch for optionally
3991         creating a single static library with all the image format modules
3992         in it.
3993
3994 2000-02-20  Miguel de Icaza  <miguel@gnu.org>
3995
3996         * gdk-pixbuf/io-xpm.c (gdk_pixbuf__xpm_image_load): Add prefix.
3997         (gdk_pixbuf__xpm_image_load_xpm_data): Add prefix.
3998
3999         * gdk-pixbuf/io-tiff.c (gdk_pixbuf__tiff_image_load_real): Add prefix.
4000         (gdk_pixbuf__tiff_image_stop_load): Add prefix.
4001         (gdk_pixbuf__tiff_image_load_increment): Add prefix.
4002         (gdk_pixbuf__tiff_image_load): Add prefix.
4003         (gdk_pixbuf__tiff_image_stop_load): Update invocation.
4004         (gdk_pixbuf__tiff_image_begin_load): Add prefix.
4005
4006         * gdk-pixbuf/io-ras.c (gdk_pixbuf__ras_image_load): Add prefix.
4007         (gdk_pixbuf__ras_image_load): Updated invocation.
4008         (gdk_pixbuf__ras_image_begin_load): Add prefix.
4009         (gdk_pixbuf__ras_image_stop_load): Add prefix.
4010         (gdk_pixbuf__ras_image_load_increment): Add prefix.
4011
4012         * gdk-pixbuf/io-pnm.c (gdk_pixbuf__pnm_image_begin_load): Add prefix.
4013         (gdk_pixbuf__pnm_image_stop_load): Add prefix.
4014         (gdk_pixbuf__pnm_image_load_increment): Add prefix
4015         (gdk_pixbuf__pnm_image_load): Add prefix.
4016
4017         * gdk-pixbuf/io-jpeg.c (gdk_pixbuf__jpeg_image_load): Add prefix.
4018         (gdk_pixbuf__jpeg_image_load_increment): Add prefix.
4019         (gdk_pixbuf__jpeg_image_begin_load): Add prefix.
4020         (gdk_pixbuf__jpeg_image_stop_load): Add prefix.
4021
4022         * gdk-pixbuf/io-ico.c (gdk_pixbuf__ico_image_load): Add prefix.
4023         (gdk_pixbuf__ico_image_load): update invocation.
4024         (gdk_pixbuf__ico_image_load_increment): Add prefix.
4025         (gdk_pixbuf__ico_image_load): update invocation.
4026         (gdk_pixbuf__ico_image_begin_load): Add prefix.
4027         (gdk_pixbuf__ico_image_load): update invocation.
4028         (gdk_pixbuf__ico_image_stop_load): Add prefix.
4029
4030         * gdk-pixbuf/io-gif.c (gdk_pixbuf__gif_image_load_animation): Add prefix.
4031         (gdk_pixbuf__gif_image_load): Add prefix.
4032         (gdk_pixbuf__gif_image_begin_load): Add prefix.
4033         (gdk_pixbuf__gif_image_load_increment): Add prefix.
4034         (gdk_pixbuf__gif_image_load_animation): Add prefix.
4035         (gdk_pixbuf__gif_image_stop_load): Add prefix.
4036
4037         * gdk-pixbuf/io-bmp.c (gdk_pixbuf__bmp_image_load): Add prefix.
4038         (gdk_pixbuf__bmp_image_load): Rename function called.
4039         (gdk_pixbuf__bmp_image_load_increment): Add prefix
4040
4041         * gdk-pixbuf/io-png.c (gdk_pixbuf__png_image_load): Add prefix.
4042         (gdk_pixbuf__png_image_begin_load): Add prefix.
4043         (gdk_pixbuf__png_image_stop_load): Add prefix.
4044         (gdk_pixbuf__png_image_load_increment): Add prefix.
4045
4046         * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Make this static.
4047         (gdk_pixbuf_load_module): Load the shared library entry points
4048         using a "gdk_pixbuf__$module_name" prefix.
4049         (pixbuf_module_symbol): Wrapper routine that uses the module
4050         prefix for the modules to load the information.
4051
4052         * configure.in (GDK_PIXBUF_VERSION): New option --disable-modules
4053         lets the user specify that gdk-pixbuf should link all image loader
4054         code into the library instaed of creating shared library modules.
4055         
4056         (dynworks): Renamed the automake conditional DYNAMIC_MODULES_WORK
4057         to BUILD_DYNAMIC_MODULES.
4058
4059 2000-02-19  Jonathan Blandford  <jrb@redhat.com>
4060
4061         * gdk-pixbuf/io-gif.c (new_context): fix case where initial
4062         colormap entry is Transparent.
4063
4064 2000-02-19  Owen Taylor  <otaylor@redhat.com>
4065
4066         * gdk-pixbuf/pixops/pixops.c (scale_pixel): Fix error in
4067         scale factors for non-alpha case.
4068
4069 2000-02-14  Mark Crichton  <crichton@gimp.org>
4070
4071         * gdk-pixbuf/io-xpm.c (xpm_extract_color): Added check for "g"
4072         color type. Imlib/libXpm handle this, but we didn't.
4073
4074 2000-02-14  Darin Adler  <darin@eazel.com>
4075
4076         * gdk-pixbuf/testpixbuf.c: Remove now-unnecessary cast.
4077         * .cvsignore: gdk-pixbuf/.cvsignore: More to ignore.
4078
4079 2000-02-14  Elliot Lee  <sopwith@redhat.com>
4080         * gdk-pixbuf/gdk-pixbuf.h, gdk-pixbuf/gdk-pixbuf-data.c: Make
4081         passed-in argument 'const'.
4082
4083 2000-02-04  Michael Meeks  <mmeeks@gnu.org>
4084
4085         * gdk-pixbuf/io-gif.c (struct _GifContext): add x,y_offset.
4086         (gif_get_frame_info): put the offsets on the context.
4087         (gif_get_lzw): copy them off into the frame.
4088         (new_context): no change required; will 0 offsets by default.
4089
4090 2000-01-28  Michael Meeks  <michael@mejm2.dow.cam.ac.uk>
4091
4092         * gdk-pixbuf/pixops/pixops.c (pixops_process): const + nasty
4093         un-consting cast.
4094
4095         * gdk-pixbuf/pixops/pixops.h: const.
4096
4097         * gdk-pixbuf/gdk-pixbuf-util.c: const.
4098         
4099         * gdk-pixbuf/gdk-pixbuf-scale.c: const.
4100
4101         * gdk-pixbuf/gdk-pixbuf.h: constify lots of things.
4102
4103 2000-02-03  Federico Mena Quintero  <federico@helixcode.com>
4104
4105         * gdk-pixbuf/gdk-pixbuf-render.c
4106         (gdk_pixbuf_render_threshold_alpha): Added sanity check for width
4107         and height being >= 0.  Also, do nothing if either of them is
4108         zero.  Thanks to Ettore for pointing this out.
4109         (gdk_pixbuf_render_to_drawable): Likewise.
4110         (gdk_pixbuf_render_to_drawable_alpha): Likewise.
4111
4112 2000-02-02  Federico Mena Quintero  <federico@helixcode.com>
4113
4114         * gdk-pixbuf/io-gif.c (gif_get_lzw): Removed debugging g_print.
4115         Thanks to John Sullivan <sullivan@eazel.com> for the patch.
4116
4117         * gdk-pixbuf/testpixbuf-drawable.c (configure_cb): Get a new area
4118         of the screen when the window is resized.  Thanks to David
4119         N. Welton <davidw@linuxcare.com> for pointing this out.
4120         Misc. cleanups to the rest of the file.
4121
4122 2000-02-01  Federico Mena Quintero  <federico@helixcode.com>
4123
4124         * doc/tmpl/rendering.sgml: gnome_init() does not call
4125         gdk_rgb_init(), so don't mention that it does in the
4126         documentation.  Thanks to Alexander Kruuse <kruuse@home.se> for
4127         pointing this out.
4128
4129 2000-01-31  Havoc Pennington  <hp@redhat.com>
4130
4131         * gdk-pixbuf/Makefile.am (noinst_PROGRAMS): no testpixbuf-foo target
4132
4133 Mon Jan 31 12:38:50 2000  Owen Taylor  <otaylor@redhat.com>
4134
4135         * gdk-pixbuf/pixops/pixops.c (scale_line): Fix from Peter
4136         Wainwright to fix 4a => 4a scaling.
4137
4138 2000-01-29  Mark Crichton  <crichton@gimp.org>
4139
4140         * gdk-pixbuf-config: Oh dear, we weren't Telsa/Alan proof...
4141         put `libart-config --libs` in instead of -lart_lgpl.
4142
4143 2000-01-22  Federico Mena Quintero  <federico@helixcode.com>
4144
4145         * gdk-pixbuf/io-pnm.c (pnm_read_raw_scanline): Return an error on
4146         invalid pnm type.
4147         (pnm_read_ascii_scanline): Initialize data and mask.
4148
4149         * gdk-pixbuf/io-xpm.c (pixbuf_create_from_xpm): Initialize
4150         fallbackcolor to keep gcc happy.
4151
4152         * configure.in: Bumped version number to 0.5.0.
4153
4154         * gdk-pixbuf/pixops/timescale.c (dump_array): Removed unused variable.
4155         (main): Return 0.
4156
4157         * gdk-pixbuf/pixops/pixops.c (pixops_composite_color_nearest): Put
4158         parentheses around + in a shift to remove a compiler warning.
4159         (pixops_process): Likewise.
4160
4161         Patch from Ross Golder <rossigee@bigfoot.com> to create an RPM
4162         specfile:
4163
4164         * configure.in: Added gdk-pixbuf.spec to AC_OUTPUT.
4165
4166         * Makefile.am (EXTRA_DIST): Added gdk-pixbuf.spec.in
4167
4168 2000-01-22  Federico Mena Quintero  <federico@helixcode.com>
4169
4170         * gdk-pixbuf/gnome-canvas-pixbuf.c (PixbufPrivate): Removed the
4171         x_set and y_set arguments.  Now they are always on and start with
4172         defaults of 0.0 in units.
4173         (gnome_canvas_pixbuf_class_init): Likewise.
4174         (gnome_canvas_pixbuf_set_arg): Likewise.
4175         (gnome_canvas_pixbuf_get_arg): Likewise.
4176         (compute_viewport_affine): Likewise; always use the priv->x and
4177         priv->y fields.
4178
4179         * doc/tmpl/gnome-canvas-pixbuf.sgml: Modified to reflect the
4180         removal of the x_set/y_set arguments.
4181
4182 2000-01-21  Federico Mena Quintero  <federico@helixcode.com>
4183
4184         * gdk-pixbuf/gdk-pixbuf.c (gdk_pixbuf_ref): Return the same pixbuf
4185         as the input parameter.
4186
4187         * gdk-pixbuf/gdk-pixbuf-animation.c (gdk_pixbuf_animation_ref):
4188         Return the same animation as the input parameter.
4189
4190 2000-01-16  Elliot Lee  <sopwith@redhat.com>
4191
4192         * gdk-pixbuf/Makefile.am: Don't link against libgnomecanvaspixbuf.la
4193
4194 2000-01-16  Federico Mena Quintero  <federico@helixcode.com>
4195
4196         * configure.in: Removed the broken --enable-canvas-pixbuf option.
4197         Added the stuff necessary to substitute the variables in
4198         gnomecanvaspixbufConf.sh.in.
4199
4200         * gnomecanvaspixbufConf.sh.in: New gnome-config handler for the
4201         tiny gnomecanvaspixbuf library.
4202
4203         * Makefile.am: Build gnomecanvaspixbufConf.sh.
4204
4205         * gdk-pixbuf/Makefile.am: Create a libgnomecanvaspixbuf and only
4206         build it if gdk-pixbuf is being built outside of gnome-libs.
4207
4208         * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_render_pixmap_and_mask().
4209
4210         * gdk-pixbuf/gdk-pixbuf-render.c
4211         (gdk_pixbuf_render_pixmap_and_mask): Renamed from
4212         gdk_pixbuf_render_pixmap().  Do not create the mask if it is not
4213         needed, and do not use a clipping mask when rendering the pixmap.
4214         Tweaked documentation a little.
4215
4216         * HACKING: New file with hacking policies for the gdk-pixbuf
4217         module.
4218
4219         * doc/Makefile.am (tmpl_sources): Added missing backslash.
4220
4221         * doc/Makefile.am: Use gnomecanvaspixbuf in gnome-config when
4222         scanning for docstrings.
4223
4224         * gdk-pixbuf/gdk-pixbuf-util.c (gdk_pixbuf_copy_area): Made sanity
4225         checks more stringent.  Removed "gint" abominations.  Made
4226         documentation consistent with the rest of the functions.
4227
4228         * doc/gdk-pixbuf-sections.txt: Added gdk_pixbuf_copy_area() to the
4229         utilities section.
4230
4231 2000-01-14  Jonathan Blandford  <jrb@redhat.com>
4232
4233         * gdk-pixbuf/gdk-pixbuf-render.c (gdk_pixbuf_render_pixmap): new
4234         function to let you create a gdk_pixmap from a gdk_pixbuf.
4235
4236 2000-01-11  Jacob Berkman  <jacob@helixcode.com>
4237
4238         * gdk-pixbuf/pixops/Makefile.am (INCLUDES): added
4239         $LIBART_CFLAGS to $INCLUDES
4240
4241 2000-01-10  Elliot Lee  <sopwith@redhat.com>
4242
4243         * configure.in, gdk-pixbuf/Makefile.am: Build a libcanvas_pixbuf.
4244
4245         * configure.in: Define version macros. Generate
4246         gdk-pixbuf/gdk-pixbuf-features.h. Always INSIDE_GNOME.
4247
4248         * gdk-pixbuf/Makefile.am: Add gdk-pixbuf-features.h
4249
4250         * gdk-pixbuf/gdk-pixbuf.c: Add definitions of
4251         gdk-pixbuf-features.h declarations, plus some initialization
4252         stubs.
4253
4254 2000-01-05  Owen Taylor  <otaylor@redhat.com>
4255
4256         * gdk-pixbuf/pixops/pixops.c: Fixed src_channels/dest_channels
4257         confusion. (Again caught by Tomas Ogren's Purify)
4258
4259 2000-01-07  Jonathan Blandford  <jrb@redhat.com>
4260
4261         * gdk-pixbuf/gdk-pixbuf-xform.c (gdk_pixbuf_rotate): comment out
4262         debugging printing.
4263
4264         * gdk-pixbuf/gdk-pixbuf-io.c: Added progressive animation loading.
4265         * gdk-pixbuf/gdk-pixbuf-io.h: Added progressive animation loading.
4266         * gdk-pixbuf/gdk-pixbuf-loader.c: Added progressive animation
4267         loading.
4268         * gdk-pixbuf/gdk-pixbuf-loader.h: Added progressive animation
4269         loading.
4270         * gdk-pixbuf/io-gif.c (image_load_increment): I think the
4271         ref-counting mess is finally fixed.  Added progressive animation
4272         loading.
4273         (gif_get_lzw): remove memory_leak
4274
4275         * doc/tmpl/gdk-pixbuf-loader.sgml: much longer long description
4276         added.
4277
4278 2000-01-05  Owen Taylor  <otaylor@redhat.com>
4279
4280         * gdk-pixbuf/pixops/pixops.c (pixops_process): Fix computation of
4281         end of run indices. 
4282
4283         * gdk-pixbuf/pixops/pixops.c: Fix double increments when
4284           dest_channels == 4.  (Pointed out by Tomas Ogren)
4285
4286 2000-01-05  Mark Crichton  <crichton@gimp.org>
4287
4288         * gdk-pixbuf/gdk-pixbuf-loader.c (gdk_pixbuf_loader_eat_header_write):
4289         Return 0 if gdk_pixbuf_load_loader_module returns FALSE.
4290
4291 2000-01-05 Elliot Lee <sopwith@redhat.com>
4292
4293         * gdk-pixbuf/pixops/Makefile.am: Link with -lm (to get 'ceil' function)
4294
4295 2000-01-05  Owen Taylor  <otaylor@redhat.com>
4296
4297         * doc/Makefile.am doc/gdk-pixbuf-sections.txt
4298           doc/gdk-pixbuf.sgml doc/tmpl/scaling.sgml:
4299         Added scaling functions into gtk-doc framework.
4300
4301         * gdk-pixbuf/gdk-pixbuf-scale.c: Documentation fixes.
4302
4303         * gdk-pixbuf/testpixbuf-scale.c (expose_cb): Simplify a bit.
4304
4305         * gdk-pixbuf/pixops/pixops.c (pixops_composite_color): Return
4306         immediately if scale_x or scale_y is 0.
4307
4308 2000-01-05  Owen Taylor  <otaylor@redhat.com>
4309
4310         * gdk-pixbuf/pixops/timescale.c: quick fix for initializing
4311         arrays in benchmark.
4312
4313 2000-01-05  Jonathan Blandford  <jrb@redhat.com>
4314
4315         * gdk-pixbuf/gdk-pixbuf-io.h: Change the order of the update func
4316         to make it more compatible with the rest of GTK.  Added animation
4317         framework for progressive loading.
4318
4319         * gdk-pixbuf/io-bmp.c (image_begin_load): Modified to handle new
4320         system.
4321         * gdk-pixbuf/io-ico.c (image_begin_load): ditto
4322         * gdk-pixbuf/io-png.c (image_begin_load): ditto
4323         * gdk-pixbuf/io-ras.c (image_begin_load): ditto
4324         * gdk-pixbuf/io-jpeg.c (image_begin_load): ditto
4325         * gdk-pixbuf/io-pnm.c (image_begin_load): ditto
4326         * gdk-pixbuf/io-tiff.c (image_begin_load): ditto
4327         * gdk-pixbuf/io-gif.c (image_begin_load): ditto
4328
4329 2000-01-05  Owen Taylor  <otaylor@redhat.com>
4330
4331         * gdk-pixbuf/pixops/README: Added a README with a TODO
4332         and some explainations of the algorithms.
4333
4334         * gdk-pixbuf/testpixbuf-scale.c: Set a background pixmap of None
4335         to reduce flashing when resizing.
4336
4337 2000-01-05  Owen Taylor  <otaylor@redhat.com>
4338
4339         * gdk-pixbuf/pixops/: Directory full of pixel data scaling
4340         code that will eventually migrate into libart.
4341
4342         * configure.in acconfig.h: Add checks for MMX compiler support
4343
4344         * gdk-pixbuf/gdk-pixbuf.h gdk-pixbuf/gdk-pixbuf-scale.c:
4345         Nice wrapper routines for the code in pixops that operate
4346         on pixbufs instead of raw data.
4347
4348         * gdk-pixbuf/testpixbuf-scale: Test program for scaling
4349         routines.
4350
4351 2000-01-05  Jonathan Blandford  <jrb@redhat.com>
4352
4353         * doc/tmpl/animation.sgml: Documentation changes.
4354
4355 2000-01-01  Federico Mena Quintero  <federico@helixcode.com>
4356
4357         * gdk-pixbuf/gdk-pixbuf.h (GdkPixbufAnimation): Added reference
4358         counting to animations.  A web browser may want to share a single
4359         copy of an animated GIF if it appears multiple times in a web
4360         page, for example.
4361
4362         * gdk-pixbuf/gdk-pixbuf-animation.c: New file.  Moved the
4363         animation functions here.
4364         (gdk_pixbuf_animation_new_from_file): Prettified.  Return a NULL
4365         animation if the loader does not support multiframe loading and
4366         the single-frame load returned NULL.  Check that the filename is
4367         not NULL.  Updated inline documentation.
4368         (gdk_pixbuf_animation_ref): New function.
4369         (gdk_pixbuf_animation_unref): New function.
4370         Removed gdk_pixbuf_animation_destroy() in favor of reference
4371         counting.
4372
4373         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file):
4374         Prettified.  Made ref_count assertion more paranoid.  Check that
4375         the filename is not NULL.
4376         (gdk_pixbuf_get_module): Use guchar * and guint for buffer and
4377         size, respectively.
4378         (gdk_pixbuf_new_from_xpm_data): Changed the "data" argument to
4379         const char **.
4380
4381         * gdk-pixbuf/io-gif.c (image_load_animation): Create the animation
4382         with a reference count of 1.
4383
4384         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_SOURCES): Added
4385         gdk-pixbuf-animation.c.
4386
4387         * doc/tmpl/animation.sgml: Populated.  It is still missing a
4388         description of the overlay modes.
4389
4390         * doc/gdk-pixbuf-sections.txt: Added the animation section.  Moved
4391         the canvas item section to the end, as it will be moved later to
4392         gnome-libs.
4393
4394         * doc/gdk-pixbuf.sgml: Added the animation section.
4395
4396         * doc/Makefile.am (tmpl_sources): Added tmpl/animation.sgml.
4397
4398 1999-12-26  Peter Teichman  <pat@gnu.org>
4399
4400         * gdk-pixbuf/Makefile.am (libpixbuf_tiff_la_LIBADD): add
4401         $(LIBTIFF) to libpixbuf_tiff_la_LIBADD, proxying for mmarker.
4402         This closes bug #4676.
4403
4404 1999-12-23  Havoc Pennington  <hp@pobox.com>
4405
4406         * gdk-pixbuf/io-gif.c (image_load): Stuff that should have been
4407         set to NULL here (specifically context->animation) was not being
4408         set to NULL. use g_new0() to alloc the struct.
4409
4410 1999-12-20  Jonathan Blandford  <jrb@redhat.com>
4411
4412         * gdk-pixbuf/io-gif.c: finished work to make animated gifs load
4413         correctly.  Progressive loading needs some work, but that all
4414         needs doing from the gdk-pixbuf-loader end, not here.
4415
4416 1999-12-17  Jonathan Blandford  <jrb@redhat.com>
4417
4418         * gdk-pixbuf/gdk-pixbuf-io.c (gdk_pixbuf_animation_new_from_file):
4419         moved the file here.  It seems natural to put this function here,
4420         as that's where the gdk_pixbuf_new_from_file function is, but it's
4421         still a little convoluted.  The source files might be played with
4422         in a bit.
4423
4424 1999-12-14  Jonathan Blandford  <jrb@redhat.com>
4425
4426         * gdk-pixbuf/gdk-pixbuf-loader.c
4427         (gdk_pixbuf_loader_get_animation):  Gets the animation from the
4428         loader.
4429
4430 1999-12-16  Federico Mena Quintero  <federico@redhat.com>
4431
4432         * doc/tmpl/rendering.sgml: Added notice about initializing GdkRGB
4433         before using the GdkPixbuf rendering functions.  Thanks to Joe
4434         Shaw <joe@off.net> for pointing this out.
4435
4436 1999-12-13  Federico Mena Quintero  <federico@redhat.com>
4437
4438         * gdk-pixbuf/gnome-canvas-pixbuf.c
4439         (gnome_canvas_pixbuf_class_init): Renamed arguments to
4440         width_in_pixels, height_in_pixels, x_in_pixels, y_in_pixels, for
4441         consistency with the new canvas.
4442         (PixbufPrivate): Do the same renaming in the structure fields, for
4443         consistency.
4444
4445         * doc/tmpl/gnome-canvas-pixbuf.sgml: Updated for new argument names.
4446
4447 1999-12-12  Federico Mena Quintero  <federico@redhat.com>
4448
4449         * gdk-pixbuf/Makefile.am (libgdk_pixbuf_la_LDFLAGS): Use a
4450         conditional to see whether to link $(GNOME_LIBS) or not.
4451
4452 1999-12-10  Jonathan Blandford  <jrb@redhat.com>
4453
4454         * gdk-pixbuf/gdk-pixbuf-io.h: thinking about the new loading API.
4455
4456         * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
4457         make a warning go away.
4458
4459         * gdk-pixbuf/gdk-pixbuf.h: added new prototypes for animations.
4460
4461         * gdk-pixbuf/gdk-pixbuf-loader.h: added new prototypes for
4462         animations.
4463
4464 1999-12-09  Michael Zucchi  <zucchi@zedzone.mmc.com.au>
4465
4466         * gdk-pixbuf/gdk-pixbuf.h: Enable gdk_pixbuf_get_from_drawable()
4467         api call.
4468
4469         * gdk-pixbuf/gdk-pixbuf-drawable.c (gdk_pixbuf_get_from_drawable):
4470         Filled in body of function.
4471         (rgbconvert): Added GdkColormap parameter, and to all conversion
4472         functions also.
4473         (convert_real_slow): New function - should convert ANY visual/data
4474         format properly, but it aint fast.  Used as a fallback when an
4475         optimised routine wont match.
4476         (rgbconvert): Do very specific tests on the data format to verify
4477         properly if the optimised version will do, otherwise use the
4478         fallback function for all other data formats.
4479
4480         * gdk-pixbuf/Makefile.am: Re-enabled building of
4481         textpixbuf-drawable.
4482
4483         * gdk-pixbuf/testpixbuf-drawable.c (main): Changed to use
4484         gdk_pixbuf_get_from_drawable().
4485
4486 1999-12-08  Arjan van de Ven <arjan@fenrus.demon.nl>
4487
4488         * gdk-pixbuf/gdk-pixbuf-drawable.c : Fixed the red/green/red
4489         bug on two occasions.
4490         * gdk-pixbuf/io-ras.c: Changed from the custom be32_to_cpu
4491         function to the generic glib one.
4492
4493 1999-12-08  Federico Mena Quintero  <federico@redhat.com>
4494
4495         * gdk-pixbuf/gdk-pixbuf-drawable.c: Fix includes.
4496         (gdk_pixbuf_get_from_drawable): Implemented the zillion sanity
4497         checks and API definition.  The body needs filling in and it needs
4498         to do the Right Thing(tm) for pixmaps plus the given colormap and
4499         windows and their own colormaps.
4500
4501         * gdk-pixbuf/gdk-pixbuf.h: Added prototype for
4502         gdk_pixbuf_get_from_drawable().  Killed gdk-pixbuf-drawable.h.
4503
4504         * gdk-pixbuf/Makefile.am: Re-added the gdk-pixbuf-drawable sources.
4505
4506         * doc/tmpl/from-drawables.sgml: Populated.
4507
4508         * doc/gdk-pixbuf.sgml: Added the from-drawables section.
4509
4510         * doc/Makefile.am (tmpl_sources): Added tmpl/from-drawables.sgml.
4511
4512         * doc/gdk-pixbuf-sections.txt: Added a section for getting pixbufs
4513         from drawables.
4514
4515 1999-12-07  Federico Mena Quintero  <federico@redhat.com>
4516
4517         * doc/tmpl/gnome-canvas-pixbuf.sgml: Added clarification about
4518         reference counting for GdkPixbuf structures.
4519
4520 1999-12-07  Martin Baulig  <martin@home-of-linux.org>
4521
4522         * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Conditionally
4523         include $(GNOME_LIBS) here.
4524
4525 1999-12-05  Arjan van de Ven <arjan@fenrus.demon.nl>
4526
4527         Added missing "include <string.h>" to:
4528         * gdk-pixbuf/io-ras.c
4529         * gdk-pixbuf/io-bmp.c
4530         * gdk-pixbuf/io-ico.c
4531
4532 1999-12-06  Federico Mena Quintero  <federico@redhat.com>
4533
4534         * gdk-pixbuf/gdk-pixbuf-io.c (file_formats): Patch from Arjan to
4535         fix an initializer.
4536
4537 1999-12-05  Federico Mena Quintero  <federico@redhat.com>
4538
4539         * gdk-pixbuf/Makefile.am (testpixbuf_LDADD): Add back
4540         $(GNOME_LIBS).  This must compile outside of gnome-libs.  If you
4541         want, send me a patch to do the conditional stuff properly.
4542         Otherwise, please read the GNOME Programming Guidelines,
4543         especially the "CVS policies" section.
4544
4545 1999-12-05  Jaka Mocnik  <jaka.mocnik@kiss.uni-lj.si>
4546
4547         * gdk-pixbuf/Makefile.am: removed GNOME_LIBS from testpixbuf_LDADD.
4548
4549 1999-12-05  Arjan van de Ven <arjan@fenrus.demon.nl>
4550
4551         * gdk-pixbuf/io-ico.c: Bug in palet-size
4552         calculation fixed
4553
4554 1999-12-04  Arjan van de Ven <arjan@fenrus.demon.nl>
4555
4556         * gdk-pixbuf/io-bmp.c: Major cleanup, added support for
4557         32 bpp and 4 bpp (uncompressed) images, fixed 1bpp.
4558
4559         * gdk-pixbuf/io-ras.c: Minor cleanup, ran through lclint
4560
4561         * gdk-pixbuf/io-ico.c: Minor cleanup, fixed 1bpp icons,
4562         ran through lclint.
4563
4564         * gdk-pixbuf/gdk-pixbuf-io.c: Added detection of .CUR files
4565         (Windows Cursor files). These are identical to .ICO files,
4566         except for the signature and 2 extra fields for the hotspot.
4567
4568 1999-12-03  Federico Mena Quintero  <federico@redhat.com>
4569
4570         * gdk-pixbuf/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_get_arg):
4571         Removed unused variable `item'.
4572
4573 1999-12-03  Jonathan Blandford  <jrb@redhat.com>
4574
4575         * gdk-pixbuf/io-gif.c (gif_fill_in_lines): added a comment to
4576         explain this function better.
4577
4578 1999-12-02  Federico Mena Quintero  <federico@redhat.com>
4579
4580         Source files moved from src/ to gdk-pixbuf/, to be consistent with
4581         other libraries.
4582
4583         * doc/Makefile.am: Modified for the new source directory.
4584
4585         * configure.in: Likewise.
4586
4587         * Makefile.am: Likewise.
4588
4589         * autogen.sh: Likewise.
4590
4591         * gdk-pixbuf/Makefile.am: Likewise.
4592
4593 1999-12-02  Federico Mena Quintero  <federico@redhat.com>
4594
4595         * src/testpixbuf.c: #include <config.h>, and fix includes.
4596
4597         * src/testpixbuf-drawable.c: #include <config.h>, and fix includes.
4598
4599         * src/io-xpm.c: Fix includes.
4600
4601         * src/io-tiff.c: Fix includes.
4602
4603         * src/io-ras.c: Fix includes, and do not include more stuff than needed.
4604
4605         * src/io-pnm.c: Fix inlcudes, and do not include more stuff than needed.
4606
4607         * src/io-png.c: Fix includes.
4608
4609         * src/io-ico.c: Fix includes, and do not include more stuff than needed.
4610
4611         * src/io-gif.c: Fix includes, and do not include more stuff than needed.
4612
4613         * src/io-bmp.c: Fix includes, and do not include more stuff than needed.
4614
4615         * src/gnome-canvas-pixbuf.c: Fix includes.
4616
4617         * src/gdk-pixbuf.c: Fix includes.
4618
4619         * src/gdk-pixbuf-util.c: Fix includes.
4620
4621         * src/gdk-pixbuf-render.c: Fix includes.
4622
4623         * src/gdk-pixbuf-io.h: Fix includes.
4624
4625         * src/gdk-pixbuf-drawable.c: Fix includes.
4626
4627         * src/gdk-pixbuf-drawable.h: Use angle brackets for the gdk-pixbuf
4628         include files.
4629
4630         * src/gdk-pixbuf-data.c: Fix includes.
4631
4632         * src/gdk-pixbuf-loader.c: #include <config.h>
4633
4634         * src/gdk-pixbuf-loader.h: Use angle brackets for the gdk-pixbuf
4635         include files.
4636
4637         * src/Makefile.am: Commented out the gdk-pixbuf-drawable stuff,
4638         since it is not finished.
4639
4640         * src/gdk-pixbuf.h: Removed unused transformation prototypes.
4641
4642         * src/gdk-pixbuf-util.c: New file with utility and convenience
4643         functions for pixbufs.
4644
4645         * src/Makefile.am (libgdk_pixbuf_la_SOURCES): Added gdk-pixbuf-util.c.
4646
4647         * doc/gdk-pixbuf-sections.txt: Added section for utility functions.
4648
4649         * doc/Makefile.am (tmpl_sources): Added tmpl/util.sgml.
4650
4651         * doc/gdk-pixbuf.sgml: Added the utilities section.
4652
4653         * doc/tmpl/util.sgml: Documentation for the utility functions.
4654
4655 1999-11-29  Owen Taylor  <otaylor@redhat.com>
4656
4657         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4658         Keep the mask around until after we draw ... since
4659         the GC changes aren't flushed to the X server until we
4660         draw, destroying it before that may result in BadPixmap
4661         errors.
4662
4663 1999-11-30  Havoc Pennington  <hp@pobox.com>
4664
4665         * configure.in: Add AM_CONDITIONAL for inside gnome-libs
4666
4667         * src/Makefile.am: conditionalize GnomeCanvasPixbuf
4668
4669 1999-11-29  Federico Mena Quintero  <federico@redhat.com>
4670
4671         * src/Makefile.am: Uncomment the GnomeCanvasPixbuf sources.  This
4672         should be made conditional, not blindly commented out.
4673
4674 1999-11-29  Jonathan Blandford  <jrb@redhat.com>
4675
4676         * src/Makefile.am (ICO_LIB): Added another loader from Arjan to
4677         handle .ico files.  Cool.
4678
4679 1999-11-24  Jonathan Blandford  <jrb@redhat.com>
4680
4681         * src/io-bmp.c (OneLine24): new patch from Arjan to handle
4682         compressed bmps.
4683
4684 1999-11-24  James Henstridge  <james@daa.com.au>
4685
4686         * configure.in (AC_OUTPUT): altered hack to place the symlink in the
4687         top builddir rather than src.  This still builds fine, and does not
4688         get gtk-doc into an infinite loop when trying to find all the source
4689         files.
4690
4691 1999-11-23  Jonathan Blandford  <jrb@redhat.com>
4692
4693         * Removed #PRAGMA } from headers.  Also, make compile if you don't
4694         have it installed, already.
4695
4696 1999-11-22  Federico Mena Quintero  <federico@redhat.com>
4697
4698         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_draw): Create the
4699         temporary buffer to the size of the interesction of the bounding
4700         box and the expose area, not the whole expose area.  This speeds
4701         up things a lot.
4702
4703         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): Do
4704         not paint black on the mask, since we already cleared it in a
4705         single gdk_draw_rectangle() operation.
4706
4707 1999-11-22  Raja R Harinath  <harinath@cs.umn.edu>
4708
4709         * configure.in (GDK_PIXBUF_DIR): Fix for srcdir != builddir.
4710
4711 1999-11-22  Havoc Pennington  <hp@pobox.com>
4712
4713         * src/Makefile.am (GDK_PIXBUF_LIBS): Patch from Paul Fisher
4714         <pnfisher@redhat.com> adds all -lgdk-pixbuf and all other
4715         dependencies to LIBADD variables for loadable modules. Necessary
4716         for a Java dynamic loading thing to be able to figure it out.
4717
4718 1999-11-22  Havoc Pennington  <hp@pobox.com>
4719
4720         * src/io-png.c (image_load_increment): Call the update_area
4721         callback depending on the number of rows loaded in this increment.
4722
4723         * src/testpixbuf.c (main): slow down the progressive load demo
4724
4725 1999-11-16  Havoc Pennington  <hp@pobox.com>
4726
4727         * src/gdk-pixbuf-drawable.h: Get the quotes right on the #include
4728
4729 1999-11-22  Jonathan Blandford  <jrb@redhat.com>
4730
4731         * configure.in (GDK_PIXBUF_DIR): make the symlink.  Does not work
4732         for srcdir != buildir != .  Beats me why; I can't figure it out.
4733         AC_OUTPUT_COMMANDS doesn't seem to let me substitute it correctly.
4734
4735 1999-11-21  Jonathan Blandford  <jrb@redhat.com>
4736
4737         * src/gdk-pixbuf-io.c: added io-bmp from Arjan
4738         <arjan@fenrus.demon.nl>
4739
4740 1999-11-20  Michael Zucchi  <zucchi@zedzone.mmc.com.au>
4741
4742         * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core):
4743         Rework/reorder of the code.  Each case has been separated into
4744         another function; its big but it should be quick.
4745         gdk_pixbuf_rgba_from_drawable() will now return a pixbuf with
4746         opaque alpha information.  Not all depths/formats have been
4747         tested, but 8, 15/16 and 24 (alinged 32) should work ok.
4748
4749 1999-11-17  Larry Ewing  <lewing@gimp.org>
4750
4751         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_bounds):
4752         implement the bounds method correctly.
4753         (compute_viewport_affine): compute the affine need to fit the
4754         image within the viewport given by the args.
4755         (compute_render_affine): call compute_viewport_affine.
4756
4757 1999-11-16  Havoc Pennington  <hp@pobox.com>
4758
4759         * src/gdk-pixbuf-drawable.h: Use includes from the current
4760         directory, not the system directory.
4761
4762 Mon Nov 15 17:18:28 1999  George Lebl <jirka@5z.com>
4763
4764         * src/testpixbuf-drawable.c: use includes from the current directory
4765           rather then from the system include directory as gdk-pixbuf
4766           includes are not yet installed when this is compiled.
4767
4768 1999-11-13  Cody Russell  <bratsche@dfw.net>
4769         * src/testpixbuf-drawable.c: Added a test program for drawable
4770         code.
4771
4772         * src/Makefile.am: Build testpixbuf-drawable.
4773
4774 1999-11-12  Cody Russell  <bratsche@dfw.net>
4775
4776         * src/gdk-pixbuf-drawable.c: Merged in Michael Zucchi's changes.
4777
4778 1999-11-10  Federico Mena Quintero  <federico@redhat.com>
4779
4780         * doc/tmpl/gdk-pixbuf-loader.sgml: Populated.
4781
4782         * doc/gdk-pixbuf.signals: Put in the real names of signal
4783         arguments.
4784
4785         * src/gdk-pixbuf-loader.c: Improved documentation comments.
4786
4787 1999-11-10  Jonathan Blandford  <jrb@redhat.com>
4788
4789         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_close): emit the
4790         closed signal.
4791
4792         * src/io-ras.c (OneLineMapped_file): Now can handle indexing
4793         correctly.  Patch from Arjan to do so.
4794
4795 1999-11-10  Michael Fulbright  <drmike@redhat.com>
4796
4797         * src/io-pnm.c (pnm_ascii_read_scanline): Fixed loading of ASCII PNM
4798         files.
4799
4800         * src/testpixbuf.c: Added final queued draw when done loading image.
4801
4802 1999-11-10  Jonathan Blandford  <jrb@redhat.com>
4803
4804         * src/gdk-pixbuf-io.c (gdk_pixbuf_load_module): removed spurious
4805         print statements.
4806
4807 1999-11-10  Federico Mena Quintero  <federico@redhat.com>
4808
4809         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Added
4810         documentation.
4811
4812 1999-11-09  Federico Mena Quintero  <federico@redhat.com>
4813
4814         * src/io-png.c: Fixed some incompatible pointer initializations.
4815
4816         * src/io-jpeg.c (image_load_increment): Remove unused variable.
4817
4818 1999-11-09  Michael Fulbright  <drmike@redhat.com>
4819
4820         * src/testpixbuf.c: Fixed it to use timeout to read from file
4821         for progressive loading. Set TBF_KBPS=n, where n is the number of
4822         kilobytes/second to simulate in downloading. n has to be an integer.
4823
4824         * src/io-jpeg.c: Slight cosmetic cleanup.
4825
4826         * src/io-pnm.c: Fixed raw PNM loading bug. Also discovered that ASCII
4827         PBM loading has a similar problem and will address tomorrow.
4828
4829 1999-11-09  Havoc Pennington  <hp@pobox.com>
4830
4831         * src/Makefile.am (libgdk_pixbuf_la_SOURCES): build the
4832         gdk-pixbuf-drawable stuff.
4833
4834 1999-11-09  Federico Mena Quintero  <federico@redhat.com>
4835
4836         * configure.in: Bumped version number to 0.4.
4837
4838 1999-11-09  Michael Fulbright  <drmike@redhat.com>
4839
4840         * src/io-pnm.c : Finished progressive PNM loading code. Should handle
4841         all types of PNM files now.
4842
4843         * src/io-jpeg.c (image_load_increment): Figured out problem with
4844         loading Progressive JPEG's progressively (say that 10 times fast).
4845         Currently for Progressive JPEG's the entire image is loaded before
4846         it is displayed. libjpeg supports a fancier mechanism which I may
4847         implement later.
4848
4849         With these changes all JPEG formats appear to load properly for me.
4850
4851 1999-11-08  Jonathan Blandford  <jrb@redhat.com>
4852
4853         * src/io-ras.c (image_load_increment): Final patch from Arjan.
4854         Seems to do progressive loading.
4855
4856 1999-11-08  Michael Fulbright  <drmike@redhat.com>
4857
4858         * src/io-pnm.c image_load (): Fixed so we do not create a separate
4859         pixel buffer when reading in image - we reuse the pixel data in
4860         the GdkPixbuf structure instead.
4861
4862 1999-11-08  Michael Fulbright  <drmike@redhat.com>
4863
4864         * src/io-pnm.c pnm_read_ascii_scanline (): Added support for
4865         ASCII PNM files. Note I haven't tested loaded ASCII PBM files because
4866         I can't seem to find a utility to convert into this format.
4867         Next is to add progressive loading support for the PNM format.
4868
4869 1999-11-07  Federico Mena Quintero  <federico@redhat.com>
4870
4871         * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished detailed explanation
4872         of the width, height, x, and y setting and pixels arguments.
4873
4874 1999-11-05  Jonathan Blandford  <jrb@redhat.com>
4875
4876         * src/io-ras.c (image_load): third patch.  Now it seems to load.
4877
4878         * src/gdk-pixbuf-io.c: second patch Arjan van de Ven
4879         <arjan@fenrus.demon.nl> to autodetect/load the sunras files.
4880
4881         * src/io-ras.c (image_load): new file from Arjan van de Ven
4882         <arjan@fenrus.demon.nl> to begin the ras loader.
4883
4884 1999-11-05  Federico Mena Quintero  <federico@redhat.com>
4885
4886         * doc/gdk-pixbuf-sections.txt: Removed gdk-pixbuf-io, since it is
4887         for internal use only.
4888
4889         * doc/gdk-pixbuf.sgml: Likewise.
4890
4891         * doc/tmpl/gnome-canvas-pixbuf.sgml: Finished docs.
4892
4893 1999-11-05  Michael Fulbright  <drmike@redhat.com>
4894
4895         * src/io-pnm.c: Implemented support for reading raw PBM/PGM/PPM
4896         files from a file. Next step is support for ASCII files, and
4897         then incremental loading.
4898
4899 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
4900
4901         * Makefile.am: Added doc to SUBDIRS.
4902
4903 1999-11-04  Michael Fulbright  <drmike@redhat.com>
4904
4905         * src/io-jpeg.c: Prettied up code slightly.
4906         * src/io-pnm.c:  Start of pnm loader (from file and progressively).
4907                          Doesn't do much yet (will finish tomorrow).
4908         * src/gdk-pixbuf-io.c: Added pnm to structure of known types.
4909
4910 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
4911
4912         * doc/tmpl/rendering.sgml: Populated.
4913
4914         * doc/Makefile.am: Added the template files.
4915
4916 1999-11-04  Havoc Pennington  <hp@pobox.com>
4917
4918         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): In
4919         docs, explain what a dither offset is for.
4920         (gdk_pixbuf_render_to_drawable_alpha): Explain why you would use
4921         this function vs. gdk_pixbuf_render_to_drawable().
4922
4923 1999-11-04  Havoc Pennington  <hp@pobox.com>
4924
4925         * configure.in: Use libart-config correctly; find gnome-config
4926         separately. Fix GNOME_LIBS to be correct in "no gnome installed
4927         yet" case.
4928
4929         * src/Makefile.am: Link to GNOME_LIBS instead of a hardcoded
4930         library list.
4931
4932         Patch untested in the inside-gnome-libs case, I need to commit
4933         then check out to the gnome-libs I'm using.
4934
4935 1999-11-04  Michael Fulbright  <drmike@redhat.com>
4936
4937         * src/io-jpeg.c (image_begin_load): Add update_func callback.
4938         * src/io-jpeg.c (image_load_increment): Call updated callback when
4939         new graphic data decoded.
4940
4941 1999-11-04  Jonathan Blandford  <jrb@redhat.com>
4942
4943         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_update): handle the
4944         actual update.
4945         * src/io-png.c (image_begin_load): add a update_func callback.
4946         * src/io-gif.c (image_begin_load): add a update_func callback.
4947         (gif_get_lzw): added the update_func ability
4948
4949         * src/io-tiff.c (image_begin_load): add a update_func callback.
4950
4951 1999-11-04  Federico Mena Quintero  <federico@redhat.com>
4952
4953         * doc/tmpl/gdk-pixbuf.sgml: Populated.
4954
4955         * doc/tmpl/refcounting.sgml: Populated.
4956
4957         * doc/tmpl/file-loading.sgml: Populated.
4958
4959         * src/gdk-pixbuf.c: Added documentation comments.
4960
4961         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_file): Added
4962         documentation comments.
4963
4964         * doc/: Finished integrating the documentation framework.
4965
4966 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
4967
4968         * configure.in: Removed libgif stuff now that we do not depend on it.
4969         Added the necessary cruft for gtk-doc.
4970
4971         * src/Makefile.am: Unconditionally build the GIF loader.
4972
4973 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
4974
4975         * src/io-gif.c (gif_read): renamed ReadOK to gif_read.
4976         Added a lot of comments to the file.
4977
4978         * src/Makefile.am (libpixbuf_gif_la_LIBADD): Remove dependency on
4979         lib*gif!!!!
4980
4981 1999-11-03  Michael Fulbright  <drmike@redhat.com>
4982
4983         * src/io-jpeg.c (image_load_increment): Further removal of
4984         bugginess in local buffering code. Handles grayscale jpegs
4985         correctly now.
4986
4987         * src/io-jpeg.c (image_load_stop): Was freeing local context
4988         for jpeg library before calling jpeg_decompres_finish ().
4989
4990 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
4991
4992         * src/io-gif.c (image_load_increment): now handle arbitrary buffer
4993         sizes.
4994         (gif_get_lzw): set the transparency to the right val.
4995
4996 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
4997
4998         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_init):
4999         Initiailize the x and y fields.
5000         (gnome_canvas_pixbuf_destroy): Queue a redraw upon destruction.
5001         (PixbufPrivate): Renamed need_size_update to need_xform_update.
5002         (recompute_bounding_box): Do not use temporary values.
5003
5004 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
5005
5006         * src/io-gif.c (set_gif_lzw_clear_code): new state.  Fixes
5007         un-compressed gifs.
5008
5009         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): remove
5010         unneeded x,y,h,w vars.
5011
5012 1999-11-03  Larry Ewing  <lewing@gimp.org>
5013
5014         * src/gnome-canvas-pixbuf.c (compute_render_affine): adjust
5015         render_affine calculation for x,y offsets.
5016         (gnome_canvas_pixbuf_set_arg): add x,y args.
5017         (gnome_canvas_pixbuf_get_arg): add x,y args.
5018         (recompute_bounding_box): simply code using ArtDrect and the
5019         render_affine.  Removed compute_xform_vectors as it was no longer
5020         needed.
5021
5022 1999-11-03  Federico Mena Quintero  <federico@redhat.com>
5023
5024         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point): I'm a
5025         doofus.  Return a distance, not a boolean, for opaque images.
5026
5027         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Do proper
5028         rounding of bounding box coordinates.
5029         (gnome_canvas_pixbuf_bounds): Implemented the ::bounds() method.
5030         (gnome_canvas_pixbuf_draw): Use the correct alpha threshold value.
5031
5032 1999-11-03  Jonathan Blandford  <jrb@redhat.com>
5033
5034         * src/io-gif.c (gif_prepare_lzw): s/lwz/lzw/g
5035
5036 1999-11-03  Michael Fulbright  <drmike@redhat.com>
5037
5038         * src/io-jpg.c (image_load_increment): Fixed code which moved
5039         buffer around as new data comes in to work properly. JPEG progressive
5040         loading should be working now except for grayscale JPEG's, which I
5041         will look into next.
5042
5043 1999-11-03    <sopwith@redhat.com>
5044         * src/testpixbuf.c: A GtkFunction needs to return a value for
5045           deterministic behaviour. Also put dot printing back in.
5046
5047 1999-11-03    <jrb@redhat.com>
5048
5049         * src/io-gif.c (gif_get_extension): Read 'til the next empty block
5050         correctly, now.
5051
5052 1999-11-02  Cody Russell  <bratsche@dfw.net>
5053         * src/gdk-pixbuf-drawable.c: Changed the behavior to return NULL
5054         if part of the requested image is offscreen, rather than clipping
5055         the image.
5056
5057 1999-11-02  Jonathan Blandford  <jrb@redhat.com>
5058
5059         * src/io-gif.c (gif_fill_in_lines): Fill in the gif's blank areas
5060         for interlacing and progressive loading.
5061
5062 1999-11-02  Cody Russell  <bratsche@dfw.net>
5063         * src/gdk-pixbuf-drawable.c (gdk_pixbuf_from_drawable_core): Now
5064         calls gdk_pixbuf_new_from_art_pixbuf() instead of gdk_pixbuf_new().
5065
5066 1999-11-02  Jonathan Blandford  <jrb@redhat.com>
5067
5068         * src/io-gif.c (gif_main_loop): Now progressive gif loading works!
5069         It's a little slow though. )-:
5070
5071 1999-11-02 Elliot Lee <sopwith@redhat.com>
5072         * src/gdk-pixbuf-loader.[ch], src/gdk-pixbuf-io.h: Make the
5073         arguments to the write/load_increment operations const-correct.
5074
5075 1999-11-02  Federico Mena Quintero  <federico@redhat.com>
5076
5077         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_point):
5078         Implemented the ::point() method.  We do a simple containment test
5079         instead of a full distance calculation since the canvas is going
5080         to change to that scheme, anyways.
5081
5082 1999-11-02 Elliot Lee <sopwith@redhat.com>
5083
5084         * src/testpixbuf.c: Allow using $TBF_READLEN to specify the size
5085         of the chunks that are read from the input file.
5086
5087 1999-11-02  Larry Ewing  <lewing@gimp.org>
5088
5089         * src/gnome-canvas-pixbuf.c (gnome_canvas_pixbuf_render): add aa
5090         render function.
5091         (gnome_canvas_pixbuf_class_init): add gnome_canvas_pixbuf_render
5092         to class.
5093
5094 1999-11-02  Federico Mena Quintero  <federico@redhat.com>
5095
5096         * src/gnome-canvas-pixbuf.c (compute_render_affine): Moved the
5097         affine computation code from ::draw() to here, since it is needed
5098         by ::point() as well.
5099
5100 1999-11-02 Elliot Lee <sopwith@redhat.com>
5101
5102         * src/gdk-pixbuf-loader.c: Reorganize gdk_pixbuf_loader_write into
5103         three functions, and eliminate duplication of code from write()
5104         and close(). Also fix bug where the 128-byte header was being
5105         written twice.
5106
5107 1999-11-01  Federico Mena Quintero  <federico@redhat.com>
5108         * src/gnome-canvas-pixbuf.c (recompute_bounding_box): Fixed
5109         bounding box computation.
5110
5111 1999-11-01  Federico Mena Quintero  <federico@redhat.com>
5112
5113         * src/gnome-canvas-pixbuf.c: Start of the pixbuf canvas item.
5114         Drawing affines seem to work.  Bounding box is fubared.  ::point()
5115         is not implemented.  This is a work in progress.
5116
5117         * src/Makefile.am: Added gnome-canvas-pixbuf.[ch] to the list of
5118         sources.
5119
5120         * configure.in: Sigh.  We need to link in libgnomeui for the
5121         canvas stuff.  This mess will disappear when gdk-pixbuf gets
5122         folded into gnome-libs.
5123
5124 1999-10-30  Jonathan Blandford  <jrb@redhat.com>
5125
5126         * src/io-gif.c: Some more work.  Now it generates a gdk_pixbuf of
5127         the right size, at a minimum, even if the image is squished and
5128         the wrong color.
5129         (ReadImage): lets get the offset right.  This will let transparent
5130         gifs work.
5131
5132 1999-10-29  Michael Fulbright  <drmike@redhat.com>
5133
5134         * src/io-jpeg.c: image_load_increment(): Fixed bug when
5135         image width was not a multiple of 4 - always use the
5136         gdk_pixbuf rowstride to increment pointers!
5137
5138 1999-10-29  Michael Fulbright  <drmike@redhat.com>
5139
5140         * src/io-jpeg.c: Added first cut at progressive jpeg loading.
5141         Currently does not handle either progressive jpeg files (jpeg
5142         files with multiple scans at different quality settings), but
5143         I plan on adding this support soon. These are fairly rare in
5144         my experience, so it shouldn't slow people down too much.
5145         Grayscale jpegs also don't work but that should be easy to fix.
5146
5147 1999-10-29  Michael Fulbright  <drmike@redhat.com>
5148
5149         * src/testpixbuf.c: Added title to windows so you can identify
5150         progressive and file windows.
5151
5152 1999-10-29  Michael Fulbright  <drmike@redhat.com>
5153
5154         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): Actually
5155         load the image handler when we determine the image type.
5156
5157         * src/gdk-pixbuf-io.[ch] (gdk_pixbuf_load_module): Changed the
5158         previously static function load_image_handler () to
5159         a public function gdk_pixbuf_load_module (). It is needed in
5160         gdk-pixbuf-loader.c to load image handler modules.  This function
5161         is different from gdk_pixbuf_get_module (), which only returns
5162         a reference to the required handler, because it actually loads
5163         the handler into memory. Both actions should possibly be combined
5164         in a convenience function since one w/o the other doesn't seem to
5165         make much sense.
5166
5167 1999-10-28  Jonathan Blandford  <jrb@redhat.com>
5168
5169         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_write): don't send a
5170         0 length buffer.
5171
5172 1999-10-28  Federico Mena Quintero  <federico@redhat.com>
5173
5174         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_to_drawable): New
5175         function to render a portion of a pixbuf to a drawable.  Ignores
5176         alpha information and takes in a GC.
5177         (gdk_pixbuf_render_to_drawable_alpha): New function to render a
5178         portion of a pixbuf to a drawable.  It automatically creates a GC
5179         and a clipping mask for alpha pixbufs.
5180
5181 1999-10-28  Jonathan Blandford  <jrb@redhat.com>
5182
5183         * src/gdk-pixbuf.h: turned convenience macros into convenience
5184         functions so some error checking could be added.
5185
5186         * src/io-tiff.c (image_load_increment): started work on the tiff
5187         non-incremental loader.
5188         (image_begin_load): Finished the incremental loader.
5189
5190         * src/io-gif.c (image_load_increment): started work on the gif
5191         incremental loader.
5192
5193         * src/gdk-pixbuf-io.h: Changed ModuleType to GdkPixbufModule.
5194
5195 1999-10-27  Federico Mena Quintero  <federico@redhat.com>
5196
5197         * src/gdk-pixbuf-render.c (gdk_pixbuf_render_threshold_alpha): New
5198         function to threshold a pixbuf's alpha channel into a bitmap.
5199
5200         * src/gdk-pixbuf.c (gdk_pixbuf_new): Fixed so that it will
5201         contemplate future extensions to ArtPixBuf's formats.
5202
5203         * src/io-png.c (png_info_callback): Use the new API of gdk_pixbuf_new().
5204
5205         * src/gdk-pixbuf.h (gdk_pixbuf_get_height): Added some convenience
5206         macros to fetch the ArtPixBuf's fields.
5207
5208 1999-10-27  Havoc Pennington  <hp@pobox.com>
5209
5210         * src/testpixbuf.c (main): Display the progressive load
5211
5212         * src/io-png.c (setup_png_transformations): Break transformation
5213         code into separate function
5214         (png_info_callback): Use setup_png_transformations
5215
5216 1999-10-27  Havoc Pennington  <hp@pobox.com>
5217
5218         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): Check
5219         properly whether the XPM module has already been loaded
5220         (gdk_pixbuf_new_from_file): Check properly if loader module
5221         was already loaded (was checking if load symbol was present
5222         in order to decide whether to re-load; should check module !=
5223         NULL, then load != NULL)
5224         (image_handler_load): Check in present working directory,
5225         makes it easier to debug for now
5226         (file_formats): This array initializer was seriously on crack,
5227         was assigning a function pointer to a GModule*
5228
5229         * src/testpixbuf.c (main): Change type of pixbuf_loader to
5230         GdkPixbufLoader* 
5231
5232 1999-10-27  Havoc Pennington  <hp@pobox.com>
5233
5234         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_finalize):
5235         Fix typo that prevented compilation
5236         (gdk_pixbuf_loader_destroy): ditto
5237
5238 1999-10-27  Federico Mena Quintero  <federico@redhat.com>
5239
5240         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_new): Return a
5241         GdkPixbufLoader, not a GtkObject.
5242         (gtk_marshal_NONE__INT_INT_INT_INT): Made static.
5243         (gdk_pixbuf_loader_get_type): Documented.
5244         (gdk_pixbuf_loader_class_init): Initialize the parent class
5245         correctly.
5246         (gdk_pixbuf_loader_destroy): Added sanity checks. Call the parent
5247         class destroy function.
5248         (gdk_pixbuf_loader_new): Documented.
5249         (gdk_pixbuf_loader_finalize): Call the parent class finalize
5250         function.
5251         (gdk_pixbuf_loader_write): Use size_t for count.
5252
5253 1999-10-27  Michael Fulbright  <drmike@redhat.com>
5254
5255         * src/gdk-pixbuf-loader.c (gdk_pixbuf_loader_destroy): Fixed
5256         logic so we only try to close loader if it wasn't previously closed.
5257
5258 1999-10-27  Michael Fulbright  <drmike@redhat.com>
5259
5260         * src/gdk-pixbuf-loader.c: Made sure image_loader struct member of
5261         pixbuf_loader properly initialized.
5262
5263         * src/testpixbuf.c: Made sure we cleanup pixbuf_loader properly
5264         when done.
5265
5266 1999-10-26  Jonathan Blandford  <jrb@redhat.com>
5267
5268         * src/gdk-pixbuf-io.c (image_handler_load): load the vtable fully.
5269
5270         * src/gdk-pixbuf-loader.c: Finished initial cut at the object.
5271
5272 1999-10-26  Havoc Pennington  <hp@pobox.com>
5273
5274         * src/gdk-pixbuf-loader.h: fix signals
5275
5276         * src/gdk-pixbuf-io.h: add new vtable fields
5277
5278
5279 1999-10-26  Jonathan Blandford  <jrb@redhat.com>
5280
5281         * src/gdk-pixbuf-loader.h: New Class.  Beginning of progrssive
5282         loading.
5283
5284 1999-10-25  Federico Mena Quintero  <federico@redhat.com>
5285
5286         * configure.in (CFLAGS): Patch from Uwe Koloska
5287         <koloska@Rcs1.urz.tu-dresden.de> to fix a stupid typo of mine.
5288
5289 1999-10-22  Havoc Pennington  <hp@pobox.com>
5290
5291         * src/io-xpm.c (mem_buffer): Clean up stupid
5292         increment-inside-array-dereference thing
5293
5294         * src/testpixbuf.c: Add XPM data tests.
5295
5296         * src/io-xpm.c: Make the XPM data buffer const, fix const
5297         correctness throughout the code.
5298
5299 1999-10-22  Havoc Pennington  <hp@pobox.com>
5300
5301         * src/gdk-pixbuf.h: Export gdk_pixbuf_new_from_xpm_data()
5302
5303 1999-10-22  Havoc Pennington  <hp@pobox.com>
5304
5305         * src/io-xpm.c (image_load_xpm_data): Export this symbol for
5306         loading an XPM from memory.
5307
5308         * src/gdk-pixbuf-io.c (gdk_pixbuf_new_from_xpm_data): New
5309         function, loads pixbuf from xpm data
5310         (image_handler_load): Add g_return_if_fail() to ensure the same
5311         module isn't loaded twice. Add g_module_symbol() to scan for XPM
5312         loader function.
5313
5314 1999-10-22  Federico Mena Quintero  <federico@redhat.com>
5315
5316         * src/io-png.c (image_load): Patch from Kristian Hogsberg
5317         Kristensen <hogsberg@daimi.au.dk> to avoid allocating extra row
5318         buffers; the rows can be read in directly into the main pixel
5319         buffer.
5320
5321 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
5322
5323         * src/gdk-pixbuf-io.c (image_handler_load): Free path.
5324
5325 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
5326
5327         * configure.in: Bumped version number to 0.3.
5328
5329         * src/Makefile.am (lbgdk_pixbuf_la_LDFLAGS): Added a libtool
5330         version number for the library.
5331
5332 1999-10-20  Federico Mena Quintero  <federico@redhat.com>
5333
5334         * src/gdk-pixbuf.h (GdkPixbuf): Removed the unref_fn field.  Now
5335         all memory management of the buffer is done by libart.
5336
5337         * src/gdk-pixbuf.c (gdk_pixbuf_unref): Do destruction here.
5338         Removed gdk_pixbuf_destroy, gdk_pixbuf_duplicate.
5339
5340         * src/gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Implemented in
5341         terms of the libart functions.  Removed the old code.
5342
5343         * src/gdk-pixbuf-io.c (image_handler_load): Removed the save
5344         symbols.  Saving will not be implemented in GdkPixbuf.
5345
5346         * src/io-gif.c: Removed the saving stub.
5347         (image_load): Fixed memory management to fail gracefully if we run
5348         out of memory while loading the image.  Close the gif file when we
5349         are done.  This still needs more error handling for the DGif
5350         functions.
5351
5352         * src/io-jpeg.c (image_load): Some robustness fixes.
5353
5354         * src/io-png.c: Removed the saving stuff.
5355         (image_load): Some memory management fixes.
5356
5357         * src/io-tiff.c (image_load): Ditto.
5358
5359         * src/io-xpm.c (pixbuf_create_from_xpm): Ditto.
5360
5361 1999-10-18  Havoc Pennington  <hp@pobox.com>
5362
5363         * subautogen.sh: New name for macros/autogen.sh
5364
5365         * autogen.sh: use subautogen.sh
5366
5367 1999-10-18  Federico Mena Quintero  <federico@redhat.com>
5368
5369         * src/*: Reindented to use the GNOME Indentation.  Renamed
5370         GdkPixBuf to GdkPixbuf, for consistency with the function names
5371         (and it is also easier to type) :-)
5372
5373 1999-10-18  Havoc Pennington  <hp@pobox.com>
5374
5375         * configure.in: Use AM_PATH_GLIB instead of glib-config directly
5376
5377         * src/Makefile.am: Re-enable testpixbuf with GTK_CFLAGS/GTK_LIBS
5378
5379 1999-10-18  Havoc Pennington  <hp@pobox.com>
5380
5381         * Makefile.am (SUBDIRS): Remove "macros"
5382
5383         * configure.in: Don't use GNOME_INIT, handle case where we are
5384         inside gnome-libs. AM_PATH_GTK for the GIF test
5385
5386         * src/Makefile.am: Change flags to work without libgnomeui,
5387         comment out testpixbuf for now
5388
5389 1999-10-18  Federico Mena Quintero  <federico@redhat.com>
5390
5391         * configure.in: Use $GTK_LIBS as the extra libs when checking for
5392         libgif/libungif, as they need the X libraries.  Fixes bug #2472.
5393
5394 1999-10-10  Cody Russell  <bratsche@dfw.net>
5395         * src/gdk-pixbuf-drawable.c: core function now determines whether
5396         the requested geometry is on screen or not, and if some is not
5397         then the request is clamped to geometry that is on the screen.
5398
5399         Changed 'pixbuf' to 'art_pixbuf' in core function.
5400
5401 1999-10-08  Michael Fulbright  <drmike@redhat.com>
5402
5403         * src/gdk-pixbuf-data.c: Added to load rgb data from const data.
5404
5405         * src/testpifbuf: Changed test program to display cdrom from rgb data
5406         if no filename given to test program.
5407
5408 1999-10-07  Cody Russell  <bratsche@dfw.net>
5409         * src/gdk-pixbuf-drawable.[ch]: Added. (Actually, Miguel committed
5410         them, but I wrote them).
5411
5412         * src/gdk-pixbuf-drawable.h: Added a missing ; so things will now
5413         compile.
5414
5415         * src/Makefile.am: Added gdk-pixbuf-drawable.[ch] to
5416         libgdk_pixbuf_la_SOURCES and libgdk_pixbufinclude_HEADERS.
5417
5418         * src/gdk-pixbuf-drawable.c: Added #include "gdk-pixbuf-drawable.h"
5419         to fix compilation.
5420
5421         * src/gdk-pixbuf-drawable.[ch]: Changed functions to return
5422         GdkPixBuf* instead of ArtPixBuf*.
5423
5424 1999-09-22  Michael Meeks  <michael@nuclecu.unam.mx>
5425
5426         * src/gdk-pixbuf.c (gdk_pixbuf_new): created.
5427         (gdk_pixbuf_scale): use gdk_pixbuf_new + return a new scaled image.
5428
5429         * src/gdk-pixbuf.h (struct _GdkPixBuf): Re-organise struct, + add
5430         GdkPixBufUnrefFunc + gdk_pixbuf_new.
5431
5432         * src/io-jpeg.c (image_load): clean to use gdk_pixbuf_new.
5433
5434         * src/io-xpm.c (_pixbuf_create_from_xpm): ditto.
5435
5436         * src/io-tiff.c (image_load): ditto + fix leak
5437
5438         * src/io-png.c (image_load): ditto + add more exit points; monitor.png
5439         crashes this module ( add warning :-)
5440
5441         * src/io-bmp.c (image_load): ditto.
5442
5443         * src/io-gif.c (image_load): ditto.
5444
5445 1999-09-18  Michael Meeks  <michael@nuclecu.unam.mx>
5446
5447         * src/gdk-pixbuf.c (gdk_pixbuf_scale): Hack rgba support in so
5448         it doesn't crash scaling with alpha.
5449
5450 1999-09-17  Federico Mena Quintero  <federico@redhat.com>
5451
5452         * src/io-bmp.c (image_load): Set the initial ref_count to 1.
5453
5454         * src/io-gif.c (image_load): Likewise.
5455
5456         * src/io-jpeg.c (image_load): Likewise.
5457
5458         * src/io-png.c (image_load): Likewise.
5459
5460         * src/io-tiff.c (image_load): Likewise.
5461
5462         * src/io-xpm.c (_pixbuf_create_from_xpm): Likewise.
5463
5464         * src/gdk-pixbuf-io.c (gdk_pixbuf_load_image): Added an assertion
5465         for the ref_count to be != 0.
5466
5467         * src/gdk-pixbuf.c (gdk_pixbuf_ref): Be more paranoid with sanity
5468         checking.
5469         (gdk_pixbuf_unref): Fix incorrect sanity check and comparison.
5470
5471 1999-08-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
5472
5473         * src/io-png.c (image_save): Fixed compiler warnings.  Fixed write
5474         to unallocated memory (row_ptr), and fixed its type as well.  Take
5475         into account the ArtPixbuf's rowstride when assigning the row
5476         pointers.
5477
5478         * src/gdk-pixbuf.c: Fixup includes.
5479
5480         * src/gdk-pixbuf-io.c: Likewise.
5481
5482 Sat Jul 31 19:19:47 CEST 1999
5483
5484         * src/gdk-pixbuf-io.c:
5485         * src/io-png.c: Fixed two obvious C syntax bugs
5486
5487 1999-07-29  Mark Crichton  <crichton@gimp.org>
5488
5489         * src/io-png.c (image_save): Added PNG saving function
5490
5491         * src/gdk-pixbuf-io.c: Changed image_save function format.  Now it's
5492         image_save(GdkPixBuf *p, FILE *f, ...)
5493
5494
5495 1999-07-26  Michael Zucchi  <mzucchi@denr.sa.gov.au>
5496
5497         * src/Makefile.am (*_LIB): Only build the relevant loaders which
5498         require extra libraries if we actually have those libraries.
5499
5500 1999-07-23  Richard Hestilow  <hestgray@ionet.net>
5501
5502         * src/gdk-pixbuf.h: Include glib.h as it uses g* datatypes
5503         * gdk_pixbufConf.sh.in: Added for gnome-config
5504         * Makefile.am:
5505         * configure.in: Modified to generate gdk_pixbufConf.sh
5506
5507 1999-07-20  Mark Crichton  <crichton@gimp.org>
5508
5509         * src/gdk-pixbuf.c (gdk_pixbuf_rotate): Fixed rotation.  Now a bbox
5510         calculation needs to be done.
5511
5512 1999-07-18  Larry Ewing  <lewing@gimp.org>
5513
5514         * src/io-xpm.c:
5515         * src/io-gif.c:
5516         * src/io-png.c:
5517         * src/io-jpeg.c: Fix a few memory leaks in the, most of them in
5518         error cases but one or two in the common case.  There are probably
5519         a few small ones left.
5520
5521 1999-07-18  Mark Crichton  <crichton@gimp.org>
5522
5523         * configure.in: removed version.h.
5524
5525         * src/gdk-pixbuf-io.c (pixbuf_check_tiff): Minor readability
5526         improvements.
5527
5528 1999-07-17  Mark Crichton  <crichton@gimp.org>
5529
5530         * src/gdk-pixbuf.c: Removed gdk_pixbuf_free, redundant code.
5531         (gdk_pixbuf_rotate): Added pixbuf rotation code.
5532         (gdk_pixbuf_scale): Changed // comments to /* */
5533
5534         * src/gdk-pixbuf.h (gdk_pixbuf_destroy): Added gdk_pixbuf_destroy
5535         function to header.
5536
5537 1999-07-16  Larry Ewing  <lewing@gimp.org>
5538
5539         * src/testpixbuf.c (expose_func): reverted the expose everything
5540         changes, I'm not sure why these went in.
5541         (config_func): bring this up to date with the new pixbuf_scale
5542         semantics.
5543
5544         * src/gdk-pixbuf-io.c: added a couple of warnings to the module
5545         loading code so that poeple can diagnose problems better.
5546
5547         * src/gdk-pixbuf.c (gdk_pixbux_scale): fix the borkedness, also it
5548         no longer allocates a new pixbuf, which make things nicer for the
5549         rest of the code.  Unfortunately there is still a problem with
5550         scaling rgba images.
5551
5552 1999-07-16  Mark Crichton  <crichton@gimp.org>
5553
5554         * src/testpixbuf.c (config_func): ConfigureEvent handler.  This
5555         calls gdk_pixbuf_scale.  However, something is not working.
5556         N.B.: current pixmap is now stored in user_data with a key of
5557         "pixmap"
5558
5559         * src/gdk-pixbuf.c (gdk_pixbuf_scale): Implemented scaling function.
5560         Something is still borked, however.
5561
5562 1999-07-15  Larry Ewing  <lewing@gimp.org>
5563
5564         * src/io-jpeg.c (image_load): add raph@gimp.org's fix to the jpeg
5565         indexing routine
5566
5567         * src/testpixbuf.c (main): fix up the file routines a little so
5568         that you can load multiple files given the file names
5569
5570 1999-07-14  Larry Ewing  <lewing@gimp.org>
5571
5572         * src/testpixbuf.c (expose_func): added an almost proper expose
5573         handler for testpixbuf
5574
5575 1999-07-13  Mark Crichton  <crichton@gimp.org>
5576
5577         * configure.in: Fixed GIF check.  Replaced " with '
5578         * src/gdk-pixbuf.c: More (minor) work on gdk_pixbuf_scale
5579
5580 1999-07-13  Mark Crichton  <crichton@gimp.org>
5581
5582         * configure.in: I am a bonehead.  Added gif-lib check.