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