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