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