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