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