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