diff options
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 1295 |
1 files changed, 1295 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..6861cf3 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,1295 @@ +2009-01-14 Fridrich Strba <fridrich.strba@bluewin.ch> + + * gen_art_config.c: remove + * gen_art_config.sh.in: add + * configure.in, Makefile.am: use a shell script together + with autotools to create the art-config.h. This way is cross-compile + friendly and gives the same result. + +2008-01-30 Alexander Larsson <alexl@redhat.com> + + * configure.in: + * NEWS: + Release 2.3.20 + +2007-03-01 Frederic Crozat <fcrozat@mandriva.com> + + reviewed by: Dom Lachowicz <cinamod@hotmail.com> + + * art_misc.h: Fix header when included in C++. + Patch from Goetz Waschk and Laurent Montel. + +2007-02-28 Kjartan Maraas <kmaraas@gnome.org> + + configure.in: Release 2.3.19 + +2007-02-28 Kjartan Maraas <kmaraas@gnome.org> + + * configure.in: Fix a typo introduced with the bug fix + for bug #131478. Noticed by Yanko Kaneti. + +2007-02-26 Kjartan Maraas <kmaraas@gnome.org> + + * configure.in: 2.3.18. + +2006-12-06 Kjartan Maraas <kmaraas@gnome.org> + + * .cvsignore: + * Makefile.am: + * autogen.sh: + * configure.in: + Port to automake 1.9. Patch from Christian Persch. + Closes bug #131478 + +2005-10-26 Alexander Larsson <alexl@redhat.com> + + * Makefile.am: + * configure.in: + Cygwin build fixes from Cygwin Ports maintainer (#317562) + +2005-10-05 Dom Lachowicz <cinamod@hotmail.com> + + * art-misc.[ch]: Turn memory-managing macros into proper functions + instead of preprocessor wrappers around malloc. Win32 ships multiple + runtimes, and an art_alloc'd block from one runtime can't be + art_free'd by a different runtime. + + * libart.def: Export the 3 new functions + +2005-05-27 Alexander Larsson <alexl@redhat.com> + + * art_vpath_bpath.c: (art_vpath_render_bez): + Handle the case where start and endpoint are very near + in a better way. (#301750) + + Patch from Bernhard Herzog + +2005-03-24 Tor Lillqvist <tml@novell.com> + + * art_misc.h (ART_GNUC_PRINTF, ART_GNUC_NORETURN): Use __format__, + __printf__ and __noreturn__ to avoid warnings in case "format", + "printf" or "noreturn" are #defined to something else. For example + GNU libintl.h (at least some versions of it) #defines printf as + libintl_printf. + +2005-01-24 Kjartan Maraas <kmaraas@gnome.org> + + * art_render_gradient.c: (art_render_gradient_radial_render): + * testart.c: + * testuta.c: (main): Fix some compiler warnings etc. + +2005-01-21 Kjartan Maraas <kmaraas@gnome.org> + + * Release 2.3.17 + +2004-03-22 Michael Meeks <michael@ximian.com> + + * Makefile.am (EXTRA_DIST): add libart.def. + +2004-03-04 Glynn Foster <glynn.foster@sun.com> + + * Makefile.am, configure.in, libart-2.0-uninstalled.pc.in: + Add uninstalled pkg-config file. + +Tue Sep 09 16:30:31 2003 George Lebl <jirka@5z.com> + + * Release 2.3.16 + + * art_render_gradient.c: revert the double comparison test in the + asserts and comment out the two asserts causing crashes + everywhere, see bug #121850 + +2003-09-02 Alexander Larsson <alexl@redhat.com> + + * configure.in: 2.3.15 + +2003-08-26 Morten Welinder <terra@gnome.org> + + * art_render_gradient.c (art_render_gradient_linear_render_8): Fix + vertical gradients. Fix yet more floating point comparisons using + !=. For the record, Gnumeric is a heavy user. + +2003-08-14 Tor Lillqvist <tml@iki.fi> + + Some nitpicking changes for Win32: + + * libart-features.h.in: Declare the variables from the library as + dlimport/dllexport on Win32. + + * Makefile.am: Don't use -lm on Win32. Use the libart.def file. + + * makefile.msc: Update to generate same name DLL and import + library as auto* and libtool. Add missing objects. (But dunno if + it is useful to maintain this file. It isn't distributed in the + source tarballs (should it be?). And, if it were distributed, and + the intention was to support random people really building libart + with MSVC, one should distribute also prebuilt config.h(.win32) + and libart-features.h(.win32) files.) + + * libart-zip.in (DEVZIP): Fix typo. + (DLLDIR): libtool 1.5 installs DLLs in $(prefix)/bin, so look + there, too. + + * libart.def: Add missing entry points. + + * testuta.c: To check that the export/import of the version + variables work, print out them in a comment. Undefine + LIBART_COMPILATION before including libart-features.h. + +2003-08-08 Alexander Larsson <alexl@redhat.com> + + * configure.in: 2.3.14 + +Fri Jul 25 12:29:35 2003 George Lebl <jirka@5z.com> + + * art_render_gradient.c (art_render_gradient_linear_render_8) + (art_render_gradient_linear_render) (art_render_gradient_linear) + (art_render_gradient_radial_render) (art_render_gradient_radial): + Redo the checks where float was compared by == or != to using + the EPSILON define. Also copy the ArtGradientLinear and + ArtGradientRadial into the source structure, pretending that + these are constants that will never change or be freed by + the caller is utterly evil and in fact for librsvg it is + not constant. This fixes some more very random crashes + when using librsvg with libart (which seems to be the + only usage of the gradient stuff) + +Fri Jul 18 12:57:36 2003 George Lebl <jirka@5z.com> + + * art_render_gradient.c: Fix more comparison-of-doubles by == bugs, + this code is uber ugly. Should fix the fairly random crashes + on asserts I've been having. + +2003-07-11 Michael Meeks <michael@ximian.com> + + * Version 2.3.13 + +2003-07-11 Federico Mena Quintero <federico@ximian.com> + + * art_svp_ops.c (art_svp_minus): impl. + +Tue Jul 08 01:15:02 2003 George Lebl <jirka@5z.com> + + * art_render_gradient.c: fix comment as pointed out by alex + +Tue Jul 08 01:13:48 2003 George Lebl <jirka@5z.com> + + * art_render_gradient.c (art_render_gradient_linear_render_8): + when we wish to find the current segment and we go beyond the + last stop due to float fun, use the last segment as that's + really what we want. Avoids a very abrupt assert death. + +2003-05-05 Alexander Larsson <alexl@redhat.com> + + * configure.in: + Bump to 2.3.12 + +2003-04-24 Alexander Larsson <alexl@redhat.com> + + * art_uta_vpath.c (art_uta_from_vpath): + Don't silently stomp on memory on bad vpaths. + +2003-04-11 Alexander Larsson <alexl@redhat.com> + + * art_svp_vpath_stroke.c (render_seg): + Handle cases when dmr2 is very small better. + +2003-04-10 Alexander Larsson <alexl@redhat.com> + + * art_svp_wind.c (x_order_2): + Handle horizontally aligned segments. + +2002-11-25 Alexander Larsson <alexl@redhat.com> + + * configure.in: Bump to 2.3.11 + +2002-10-16 John Harper <jsh@unfactored.org> + + * art_render_svp.c (art_render_svp_callback, + art_render_svp_callback_span, art_render_svp_callback_opacity, + art_render_svp_callback_opacity_span): if no runs would + normally be emitted, but start is greater than zero, emit a + single run covering the entire width of the rendered region + +2002-08-18 Havoc Pennington <hp@pobox.com> + + * autogen.sh: hardcode aclocal-1.4/automake-1.4 so that users with + both automake 1.6 and 1.4 installed get the right automake. Means + compilation from CVS will now require the latest automake 1.4 + release, or manually creating symlinks called "automake-1.4" and + "aclocal-1.4" + +2002-07-01 Alexander Larsson <alexl@redhat.com> + + * Release 2.3.10 + +2002-07-01 Alexander Larsson <alexl@redhat.com> + + * configure.in (LIBART_VERSION_INFO): + Bump to 2.3.10 + + * art_svp_intersect.c (art_svp_intersect_add_seg): + Initialize seg->wind_left to zero, this avoids + uninitialized memory read later in art_svp_intersect_horiz_commit. + +2002-06-24 Alexander Larsson <alexl@redhat.com> + + Release 2.3.9. + +2002-06-24 Alexander Larsson <alexl@redhat.com> + + * configure.in: Bump to 2.3.9 + +2002-06-04 Balamurali Viswanathan <balamurali.viswanathan@wipro.com> + + * Makefile.am: Added -lm to libart_lgpl_2_la_LIBADD + fixes bug 75711 (Jacob's suggestion) + +2002-05-08 Raph Levien <raph@pixel.artofcode.com> + + * art_uta_vpath.c (art_uta_add_line): Fixes very subtle + edge case found by Federico Mena Quintero: (96, 96) - + (96.220200017562348, 93.034868598919431). Previously, through + numerical error, xn was a hair to the left, throwing off + the Bresenham iteration. + +2002-03-08 Tor Lillqvist <tml@iki.fi> + + * configure.in: Minor changes for build on Win32. Call + AC_LIBTOOL_WIN32_DLL. Set automake conditionals OS_WIN32 and + MS_LIB_AVAILABLE. + + * art_affine.c: Include art_misc.h for M_PI, which not necessarily + is in math.h. + + * Makefile.am: On Win32, build and install import libraries, both + for gcc and for MSVC (if available). + + * libart-zip.in: New file. Used to build runtime and developer + package for Win32. + +2002-02-06 Laszlo Peter <laca@ireland.sun.com> + + * configure.in: add AC_FUNC_ALLOCA + + * art_render_gradient.c: copy alloca hacks from glib/galloca.h + +2002-02-02 Alexander Larsson <alla@lysator.liu.se> + + * art_render.c: + Add special case for art_render_composite_8 for two cases + that are very common when rendering SVGs with librsvg. + I'm sure these can be optimized further, but i'm feeling + very slow today. + +2002-02-01 Alex Larsson <alexl@redhat.com> + + * art_render_gradient.c: + Add optimized case for depth==8, n_channels == 3 + + * test_gradient.c: + Test case for gradients. Uses gtk+, so not built by + default. + +2002-01-10 Anders Carlsson <andersca@gnu.org> + + * Release 2.3.8 + +2002-01-04 Anders Carlsson <andersca@gnu.org> + + * configure.in: Bump version to 2.3.8. + +2002-01-03 Darin Adler <darin@bentspoon.com> + + * Makefile.am: Add art_render_mask.[ch]. + + * art_bpath.h: + * art_rect_svp.h: + * art_rect_uta.h: + * art_render.h: + * art_render_gradient.h: + * art_render_mask.h: + * art_render_svp.h: + * art_rgb_svp.h: + * art_svp_intersect.h: + * art_svp_ops.h: + * art_svp_point.h: + * art_svp_render_aa.h: + * art_svp_vpath.h: + * art_svp_vpath_stroke.h: + * art_svp_wind.h: + * art_uta.h: + * art_uta_rect.h: + * art_uta_ops.h: + * art_uta_svp.h: + * art_uta_vpath.h: + * art_vpath_bpath.h: + * art_vpath_dash.h: + * art_vpath_svp.h: + Fix includes so that each header includes what it needs. + + * art_affine.c: + * art_alphagamma.c: + * art_bpath.c: + * art_gray_svp.c: + * art_misc.c: + * art_pixbuf.c: + * art_rect.c: + * art_rect_svp.c: + * art_rect_uta.c: + * art_render.c: + * art_render_gradient.c: + * art_render_mask.c: + * art_render_svp.c: + * art_rgb.c: + * art_rgb_a_affine.c: + * art_rgb_affine.c: + * art_rgb_affine_private.c: + * art_rgb_bitmap_affine.c: + * art_rgb_pixbuf_affine.c: + * art_rgb_rgba_affine.c: + * art_rgb_svp.c: + * art_rgba.c: + * art_svp.c: + * art_svp_intersect.c: + * art_svp_ops.c: + * art_svp_point.c: + * art_svp_render_aa.c: + * art_svp_vpath.c: + * art_svp_vpath_stroke.c: + * art_svp_wind.c: + * art_uta.c: + * art_uta_ops.c: + * art_uta_rect.c: + * art_uta_svp.c: + * art_uta_vpath.c: + * art_vpath.c: + * art_vpath_bpath.c: + * art_vpath_dash.c: + * art_vpath_svp.c: + Fix order of includes so that the corresponding header is + included first, to test that each header includes what it + needs. + +2002-01-02 Darin Adler <darin@bentspoon.com> + + * art_alphagamma.h: + * art_gray_svp.h: + * art_pixbuf.h: + * art_render.h: + * art_rgb.h: + * art_rgba.h: + Add some missing includes. + +2001-12-26 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c: More fixes to intersector. When tops + coincide, full ordering test is performed (with breaking), + rather than just comparing b from line eq. Also, had a test + for x >= backwards in art_svp_intersect_add_point. Thanks + to Bruce Q. Hammond for test cases. + +2001-11-21 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (art_svp_intersect_break): Changed break + logic systematically so that new breaks are always in order, + rather than allowing them to become out of order, then try to fix + them up later. It's no doubt possible to come up with cases in + which this reduces precision, but it simplifies life nicely, so I + did it. + + * (art_svp_intersect_horiz): Initialize (a, b, c) values of hs to + avoid UMR's when they are tested later. + + * art_svp_ops.c (print_ps_vpath): Changed the coordinate + transform so that it's done in the PostScript rather than + the C code that outputs the coordinates. This makes it easier + to reconstruct the vector path from the debug output. + +2001-11-16 Alex Larsson <alexl@redhat.com> + + * art_rect.c (art_drect_svp_union, art_drect_svp): + Don't call art_drect_union() in these functions, since + it considers zero-width or zero-height svg segments to + be empty. This causes it to think i.e. rectangular svps + are empty. + +2001-11-07 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (art_svp_intersect_horiz): Fixed important + logic bug, failing to test crossings of neighbors when inserting + horizontal lines. Also changed printf to art_dprint. + + * art_misc.c (art_dprint): Added function for debug printing, + so verbose intersector output doesn't have to go through printf. + + * art_misc.h (ART_USE_NEW_INTERSECTOR): I've turned this on + now, as the new intersector certainly seems to be performing + better than the old one now. + +2001-10-31 Anders Carlsson <andersca@gnu.org> + + * Release 2.3.7 + +2001-10-15 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (art_svp_intersect_horiz): Minor + logic fix so that horiz segments successfully cross + zero length segments in the active list. + + (art_svp_intersect_test_cross): Flags indicating whether to + do add_point (potentially breaking neighbors) to left and + to right. + + (art_svp_intersect_insert_cross): Provide ART_BREAK_LEFT and + ART_BREAK_RIGHT flags to art_svp_intersect_test_cross, + depending on direction of search. + + (art_svp_intersect_advance_cursor): Provide flags (allow + both left and right breaking) to test_cross. + +2001-10-15 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (CHEAP_SANITYCHECK): Added an inexpensive + sanitycheck to detect multiple insertions of a segment into the + horiz list. + + (art_svp_writer_rewind_add_point): Avoid breaking lines below + their bottom point. + + (art_svp_intersect_test_cross): Handle cases correctly where + intersection point matches y0 of left or right segment. These _do_ + happen in real world examples. Also, do add_point on newly + inserted intersection point. + +2001-10-14 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (art_svp_intersect_add_point): Fixed + rather subtle logic bug that misplaced insertion point + when seg argument was NULL. + +2001-10-11 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_render_aa.c (art_svp_render_aa_iter_step): Got rid + of qsort of steps, and now keep the step list in sorted order. + Further, we combine duplicate steps with the same x value, + which bounds the size of the step list to x1 - x0, so we + don't need to dynamically resize it. Thanks greatly to + Bruce Q. Hammond for the original version of this patch. + +2001-10-09 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (art_svp_intersect_test_cross): Breaks + bottom part of line segments in "too close" cases. + +2001-10-09 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (art_svp_writer_rewind_add_point): Fixed + bbox computation. + (art_svp_intersector): Handle degenerate case where input + SVP has 0 segments. + + * art_svp_intersect.h: Moved definition of art_svp_intersector + inside #ifdef __cplusplus, so it links properly against C++ + +2001-10-09 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (art_svp_intersect_break): Handle + case when break y equals sweep line correctly. Also adds + first try at winding number sanitychecker, but that makes + too many false positives. + +2001-10-07 Raph Levien <raph@pixel.artofcode.com> + + * art_svp.c (EPSILON): Set to zero if new intersector is + in use - we want svp's to be in strict sorted order. + + * art_svp_intersect.c (art_svp_intersect_test_cross): Explicitly + check that top points are equal, and swap immediately if b is out + of order. + (art_svp_intersect_horiz): Break segments that intersect + horizontal lines. Now passes "two squares with offset" test. + +2001-10-05 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c: Major changes to accommodate + horizontal lines. Intersections of horizontal lines + aren't fully processed, but should work a lot better + than before. + + * testart.c: Minor tweaks. testpat now frees memory + so it can be run under memprof to detect leaks. + +2001-10-03 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_intersect.c (art_svp_intersect_advance_cursor): + Made test_cross for inserted segments common between + intersection processing and cursor advance, and also took + care of a case that hadn't been handled before. Also added + invariant sanitychecker for debugging purposes. + +2001-10-02 Raph Levien <raph@pixel.artofcode.com> + + * art_svp_ops.c: ART_USE_NEW_INTERSECTOR variants of svp + ops changed to do shallow free of merged svp. + +2001-10-01 Raph Levien <raph@acm.org> + + * art_svp_intersect.c: + * art_svp_intersect.h: + * Makefile.am: + * art_misc.h: + * art_svp_wind.h: First commit of new intersector code. It is + turned off by default, but can be enabled by #defining + ART_USE_NEW_INTERSECTOR in art_misc.h. + + * art_svp_ops.c: Make svp ops use new intersector if enabled. + + * art_svp_vpath_stroke.c: Make vpath stroking use new intersector + if enabled. + + * testart.c: New test case for intersector. + +Wed Sep 26 03:48:13 2001 George Lebl <jirka@5z.com> + + * Release 2.3.6 + +Wed Sep 26 03:11:40 2001 George Lebl <jirka@5z.com> + + * gen_art_config.c: Fix 64bit issues, cast sizeof return when + using %d to print it. + +2001-09-13 Havoc Pennington <hp@redhat.com> + + * Makefile.am: rename library to libart_lgpl_2 + + * libart-2.0.pc.in (Cflags): move includes + + * libart-config.in: move includes + + * Makefile.am: delete libartConf.sh, rename libart-config + (EXTRA_DIST): don't install m4 files + (libart_lgplincdir): move headers + +2001-08-03 Michael Meeks <michael@ximian.com> + + * Version 2.3.5 for the API freeze. + +2001-07-12 Darin Adler <darin@bentspoon.com> + + * art_affine.c: (art_affine_expansion): Fix handling of + negative numbers. We ran into this bug a while back when + figuring out why librsvg couldn't handle certain svg files. + +2001-07-12 Darin Adler <darin@bentspoon.com> + + * art_misc.h: Change art_expand macro so it's a single + statement, using the do while (0) trick, which gets rid + of some warnings. + * art_pixbuf.c: Add a missing include. + * art_vpath_svp.c: (art_vpath_from_svp): Initialize a + variable to avoid a compiler warning. + * gen_art_config.c: Add a missing include. + +2001-03-24 Martin Baulig <baulig@suse.de> + + Applied the patch from Alexander Larsson which was sitting + in gnome-libs/patches/libart.diff since February. + [FIXME: Alex, can you please provide a ChangeLog?]) + + * art_rgb_a_affine.[ch]: New files. + +2001-01-07 Hans Breuer <Hans@Breuer.Org> + * art_misc.c : embryonic change to use libart_lgpl on win32 + * libart.def : new file, exported functions for win32 dll + * makefile.msc : handwritten for MSVC compiler + +2000-09-30 Martin Baulig <baulig@suse.de> + + * libart-2.0.pc.in: Provide pkg-config script. + + * configure.in: Create libart-2.0.pc from libart-2.0.pc.in. + * Makefile.am (pkgconfig_DATA): Install the libart-2.0.pc + script in `$(libdir)/pkgconfig'. + +2000-08-15 Raph Levien <raph@acm.org> + + * art_render.c (art_render_image_solid_negotiate): Only + sets ART_IMAGE_SOURCE_CAN_COMPOSITE when a compositing + callback is selected. Previously was causing segfaults on + non-alpha images. Thanks to Leonard Rosenthol for spotting + the bug. + +Fri Jun 30 22:56:58 2000 Raph Levien <raph@acm.org> + + * art_render.c (art_render_composite): Fixed a bug that caused + it to ignore the alpha setting. Also art_render_composite_8(). + +2000-06-01 John Sullivan <sullivan@eazel.com> + + * art_svp_render_aa.c: (art_svp_render_aa_iter_step): + Made it build by correcting struct member name from + Raph's previous checkin. + +Wed May 31 11:10:58 2000 Raph Levien <raph@acm.org> + + * art_svp_render_aa.c (art_svp_render_aa_iter_step): Updated + n_steps_max in iter structure after steps reallocation. + +Tue May 30 10:33:13 2000 Raph Levien <raph@acm.org> + + * art_svp_render_aa.c (art_svp_render_aa_iter_step): Fixed not + updating iter->steps when steps gets reallocated. + +2000-05-30 Pavel Cisler <pavel@eazel.com> + + * art_rgba.c: + Make it build -- fix a broken include. + +Tue May 30 00:09:21 2000 Raph Levien <raph@acm.org> + + * art_render_gradient.c (art_render_gradient_setpix): Fixed + an off-by-one loop error. + +Mon May 29 15:00:39 2000 Raph Levien <raph@acm.org> + + * Makefile.am: Moved relevant .h files into HEADERS stanza. + +Mon May 29 13:48:49 2000 Raph Levien <raph@acm.org> + + This is a fairly major commit, as it adds both the new, modular + rendering architecture and gradients. Quite a bit of the code + feels like "reference code" now, in that it is (hopefully) + correct, but not necessarily very fast. In addition, there remain + a few things not done, including the use of SVP's as non-driver + mask sources. AlphaGamma and filter level also remain + unimplemented. No compositing modes other than ART_NORMAL are + implemented. All in good time! + + * configure.in: added -Wmissing-prototypes flag. Bumped version + number to 2.3.0. + + * art_render.h: + * art_render.c: Added new rendering architecture. + + * art_render_svp.h: + * art_render_svp.c: Added renderers to use SVP's as mask + sources in new rendering architecture. + + * art_render_gradient.h: + * art_render_gradient.c: Added linear and radial gradients + as image sources in new rendering architecture. + + * art_rgba.h: + * art_rgba.c: Added functions for manipulating and compositing + RGBA pixels. + + * art_svp_wind.c: Added static to trap_epsilon(), #ifdef'd out + traverse(). + + * art_uta_ops.c: Added #include "art_uta_ops.h". + + * art_uta_rect.c: Added #include "art_uta_rect.h". + + * art_uta_svp.h: fixed __ART_UTA_SVP_H__ name. + + * art_misc.h: Added ART_GNUC_NORETURN attribute, added that + to the prototype for art_die(). Added "static" to function + declarations to avoid warnings when compiled with + + * testart.c: Added gradient test. + +Thu May 25 23:30:39 2000 Raph Levien <raph@acm.org> + + * art_svp_render_aa.h: + * art_svp_render_aa.c: Added art_svp_render_aa_iter functions, + suitable for iterative rendering of an svp, one scan line at a + time. + + * configure.in: Bumped version to 2.2.0. + +Tue May 16 15:03:35 2000 Raph Levien <raph@acm.org> + + * art_rgb_pixbuf_affine.c: Included corresponding .h file. + + * art_rgb_pixbuf_affine.h: Put recursive #includes inside + LIBART_COMPILATION test. + + * art_gray_svp.c: + * art_rgb_svp.c: Explicit casts for callback data. Also removed + "render the steps into tmpbuf" comment. + + * gen_art_config.c: + * Makefile.am: + * configure.in: Added code to automatically generate an + art_config.h file, to be installed in libart's include dir. This + file defines ART_SIZEOF_{CHAR,SHORT,INT,LONG} and art_u{8,16,32}. + + * art_misc.h: Moved definition of art_u8 and art_u32 into + art_config.h. Added GCC printf format attributes. + + * art_svp_wind.c (traverse): Fixed UMR bug here. The function + isn't actually used, so it's just for cleanliness. + +2000-04-18 Lauris Kaplinski <lauris@ariman.ee> + + * art_affine.c (art_affine_to_string): Replaced snprinf with + art_ftoa to avoid localisation of generated numbers + +2000-04-18 ERDI Gergo <cactus@cactus.rulez.org> + + * art_rgb_pixbuf_affine.h: Included the ArtPixBuf declaration + +Fri Apr 14 16:33:55 2000 Raph Levien <raph@acm.org> + + * art_svp_wind.c (art_svp_uncross, art_svp_rewind_uncrossed): + Fixed uninitialized memory reads when inserting new segment into + active_segs. + + * art_bpath.c (art_bpath_affine_transform): Made it avoid + potential uninitialized memory reads when not all the coordinates + are needed. Thanks to Morten Welinder for spotting both of these + problems. + +2000-04-05 Raph Levien <raph@gimp.org> + + * art_svp_wind.c: Make "colinear" warnings go to stderr instead + of stdout. Of course, when I finish the new intersector, these + will go away entirely. + +2000-04-04 Raph Levien <raph@gimp.org> + + * art_uta_vpath.c (art_uta_add_line): Fixed bug that was causing + segfaults on alphas. Thanks to msw for localizing it. + +2000-01-17 Raph Levien <raph@gimp.org> + + * art_svp_vpath_stroke.c (art_svp_vpath_stroke): Typo in api + header (thanks rak). + +2000-01-16 Timur Bakeyev <timur@gnu.org> + + * autoconf.sh: Instead of jumping between srdir and builddir just process + all the auto* staff in srcdir. In fact, just saying the same things in + other words. + +2000-01-10 Elliot Lee <sopwith@redhat.com> + + * Makefile.am, *.h: Add rather bad hacks to the header files to allow compilation + + * Makefile.am: Distribute libart-config.in + +2000-01-09 Raph Levien <raph@gimp.org> + + art_rgb_pixbuf_affine.c, art_rgb_rgba_affine.c, art_rgb_svp.c, + art_svp.c, art_svp_ops.c, art_svp_point.c, art_svp_render_aa.c, + art_svp_vpath.c, art_svp_vpath_stroke.c, art_svp_wind.c, + art_uta.c, art_uta_ops.c, art_uta_rect.c, art_uta_svp.c, + art_uta_vpath.c, art_vpath.c, art_vpath_bpath.c, art_vpath_dash.c, + art_vpath_svp.c: Added API documentation. + +Fri Sep 24 17:53:21 1999 Raph Levien <raph@acm.org> + + * art_svp_render_aa.c (art_svp_render_insert_active): Avoid + reading undefined memory (thanks to Morten Welinder). + +1999-09-19 Raph Levien <raph@gimp.org> + + * art_pixbuf.c (art_pixbuf_duplicate): Added a duplicate function + at the request of Michael Meeks. + +1999-09-11 Raph Levien <raph@gimp.org> + + * art_affine.c (art_affine_to_string): Tightened the predicate for + matching rotate-only affines, which was too weak. Thanks to lewing + for spotting it! + +1999-09-01 Raph Levien <raph@gimp.org> + + * art_affine.c, art_alphagamma.c, art_bpath.c, art_gray_svp.c, + art_misc.c, art_pixbuf.c, art_rect.c, art_rect_svp.c, + art_rect_uta.c, art_rgb.c, art_rgb_affine.c, + art_rgb_bitmap_affine.c: Updates to api doc headers. + +1999-08-24 Raph Levien <raph@gimp.org> + + * art_affine.c, art_alphagamma.c, art_alphagamma.h, art_bpath.c, + art_bpath.h, art_gray_svp.c, art_misc.c, art_pixbuf.c, + art_pixbuf.h, art_point.h, art_rect.c, art_rect.h: Added api + documentation headers. + + * testart.c: Added "dash" test, for testing the vpath_dash + functions. + + * art_rgb_pixbuf_affine.h: Fixed the #ifdef for conditional + inclusion. Thanks to Kristian Hogsberg Kristensen for spotting + the bug. + +1999-08-24 Raph Levien <raph@gimp.org> + + * art_svp_render_aa.c (art_svp_render_aa): Added some tests to + avoid NaN for infinite slopes, which were causing problems on + Alphas. Closes bug #1966. + +1999-08-20 Federico Mena Quintero <federico@redhat.com> + + * configure.in: Fixed library's libtool version number. + +1999-08-03 Larry Ewing <lewing@gimp.org> + + * art_vpath_dash.c (art_vpath_dash): fix a bug/typo that was causing + certain paths to loop infinitely. + +1999-07-28 Raph Levien <raph@gimp.org> + + * art_vpath_dash.[ch]: Added a function to add a dash style + to vpaths. It is tested, but has a couple of rough edges (see + code for details). + + * testart.c: added tests for the new vpath_dash functionality. + + * Makefile.am: added art_vpath_dash.[ch] files. + +1999-07-26 Raph Levien <raph@gimp.org> + + * art_rgb.c (art_rgb_fill_run): fixed incorrect test for + big-endianness. Thanks to Michael Zucchi for spotting it. + +Fri Jul 16 23:42:59 1999 Tim Janik <timj@gtk.org> + + * art_affine.c (art_affine_flip): flip translation matrixes as well, by + inverting matrix[4] if (horz) and inverting matrix[5] if (vert). + +Fri Jul 16 23:03:26 1999 Tim Janik <timj@gtk.org> + + * art_pixbuf.[hc]: deprecated art_pixbuf_free_shallow(), people should + always free pixbufs with art_pixbuf_free() and use the _dnotify variants + for specific destruction behaviour. + added art_pixbuf_new_rgb_dnotify() and art_pixbuf_new_rgba_dnotify() + which allow for a destruction notification function. (this involved + adding two extra pointers to the ArtPixBuf structure, and removal of + the recently introduced int flags field). + +Mon Jul 12 01:13:23 1999 Tim Janik <timj@gtk.org> + + * art_affine.[hc]: added art_affine_equal(), which checks two + matrixes for equality within grid alignment. + +Fri Jul 9 17:50:19 1999 Tim Janik <timj@gtk.org> + + * art_affine.[hc]: added art_affine_flip() to flip a matrix horizontally + and/or vertically, or just copy it. + added art_affine_shear() to setup a shearing matrix. + +Tue Jul 6 19:03:39 1999 Tim Janik <timj@gtk.org> + + * art_pixbuf.h: added an int flags; member to the end of the + structure, it currently only holds information about whether the + pixels member should be freed. (raph: i think flags is more generic + than free_pixels, so we can reuse that field if further demands popup + in the future). + + * art_pixbuf.c: + (art_pixbuf_new_const_rgba): + (art_pixbuf_new_const_rgb): new functions that prevent the pixels + member from being freed upon art_pixbuf_free (). + (art_pixbuf_free): only free the pixels member if it is non-NULL and + the PIXBUF_FLAG_DESTROY_PIXELS is set. + +1999-07-02 Raph Levien <raph@gimp.org> + + * art_vpath_bpath.c (art_vpath_render_bez): Bad bad uninitialized + variables. + + * configure.in: added compile warnings. Guess why :) + +1999-06-28 Raph Levien <raph@gimp.org> + + * art_svp_point.h: + * art_svp_point.c: Added methods for insideness and distance + testing, very useful for ::point methods in canvas items. + + * testart.c: test code to exercise the art_svp_point functions. + + * Makefile.am: Additional entries for art_svp_point. + +1999-06-28 Raph Levien <raph@gimp.org> + + * art_svp_render_aa.c (art_svp_render_aa): Subtle boundary + case in realloc code -- was causing nasty segfaults. + +Wed Jun 23 15:05:43 1999 Raph Levien <raph@gimp.org> + + * art_rgb_svp.c (art_rgb_svp_alpha_opaque_callback): Missed a + case in the anti-segfault crusade. Thanks lewing! + +Wed Jun 23 11:16:42 1999 Raph Levien <raph@gimp.org> + + * art_rgb_svp.c: Made these routines so they won't segfault even + if alpha is out of range. Of course, that begs the question of + fixing the render routines so they won't _make_ alpha go out of + range, but all in good time. + +Fri Jun 18 17:32:34 1999 Raph Levien <raph@acm.org> + + * art_vpath_bpath.c (art_bez_path_to_vec): Switched to a new + adaptive subdivision algorithm, which (finally!) takes flatness + into account. This should result in both smoother curves and + faster operation. + +Sun Jun 13 21:07:20 1999 Raph Levien <raph@gimp.org> + + * art_svp_wind.c (art_svp_rewind_uncrossed): Made the winding + rule logic even more correct :). I somehow missed the fact that + a clockwise path should be given a winding number of zero; + last night's commit tried to make it -1 (which worked for the + test cases I was using). + +Sun Jun 13 01:23:14 1999 Raph Levien <raph@gimp.org> + + * art_svp_wind.c (art_svp_rewind_uncrossed): Change to winding + rule logic so that it correctly handles the case where the + leftmost segment is negative. + + * Makefile.am (libart_lgplinc_HEADERS): made art_svp_wind.h + a public headerfile. This is needed for the bpath canvas item. + I'm not sure this is the correct way to do it, but it will do + for now. + + * art_vpath_bpath.h: + * art_vpath_bpath.c (art_bez_path_to_vec): Added const to arg. + + * art_vpath_bpath.h: Embarrassing typo. + + * art_bpath.h: Minor tweaks to the #include paths. It is now + consistent with the other header files. + +Wed Jun 9 20:24:45 1999 Raph Levien <raph@gimp.org> + + * art_svp_vpath_stroke.c: Added all remaining line join and cap + types, including round, which takes flatness into account. Several + new internal functions (art_svp_vpath_stroke_arc) and added + flatness argument to a few internal functions. I might want to + change the BEVEL join type to MITER for very small turn angles + (i.e. within a flatness threshold) for efficiency. + + * art_misc.h: Added M_SQRT2 constant. + +Wed Jun 2 21:56:30 1999 Raph Levien <raph@gimp.org> + + * art_svp_vpath_stroke.c (art_svp_vpath_stroke_raw): Made the + closed path detection capable of PostScript semantics (i.e. it + now senses the difference between ART_MOVETO and ART_MOVETO_OPEN). + + * art_svp_vpath_stroke.c (art_svp_vpath_stroke_raw): it now + filters out successive points that are (nearly) coincident. This + fixes some of the crashes and hangs, including Tim Janik's + singularity (trying to stroke MOVETO 50, 50; LINETO 50, 50; END). + + * art_svp_wind.c (art_svp_rewind_uncrossed): added a test to + correctly handle empty input svp's. + + * art_svp_wind.c (art_svp_uncross): added a test to correctly + handle empty input svp's. + +Sun Jan 17 20:53:40 1999 Jeff Garzik <jgarzik@pobox.com> + + * art_affine.c: + Include string.h for memcpy. + + * art_svp_vpath.c: + Remove conflicting static func definition. + + * art_uta_svp.c: + Include art_vpath_svp.h for func definition. + +Mon Jan 4 12:47:47 1999 Raph Levien <raph@acm.org> + + * art_bpath.c (art_bpath_affine_transform): Stupid misnaming + of this function (forgot the "art_"). + +Thu Dec 31 09:04:23 1998 Raph Levien <raph@gimp.org> + + * art_affine.c (art_affine_rectilinear): Added this function. + + * art_rect.c (art_drect_affine_transform): Corrected the name (it + was right in the .h). Also made it work with non-rectilinear + transforms, while I was at it. + +Thu Dec 17 11:58:24 1998 Raph Levien <raph@acm.org> + + * art_alphagamma.h: + * art_alphagamma.c: The real code for alphagamma. + +Wed Dec 16 14:18:46 1998 Raph Levien <raph@gimp.org> + + * art_alphagamma.h: + * art_alphagamma.c: Added. At present, it only contains a dummy + stub. When the real code is added, it supports doing alpha + compositing in a gamma-corrected color space (suppressing + jaggies). + + * art_pixbuf.h: + * art_pixbuf.c: Added. This is a virtualization layer over + a few different kinds of image formats. + + * art_rgb_pixbuf_affine.h: + * art_rgb_pixbuf_affine.c: Added. Supports compositing of + generic images over an rgb buffer. + + * art_affine.h: + * art_affine.c (art_affine_expansion): Added this function, + which reports the exact scale factor in the case of rotation, + scaling, and transformation (an approximate number in the + case of shearing or anamorphic distortion). + + * art_misc.h: + * art_misc.c (art_warn): Added. + + * art_rgb_affine.h: + * art_rgb_affine.c: Added alphagamma argument (not yet implemented). + + * art_rgb_affine_private.c: Fixed typo bug that was causing + repaint problems for nonsquare images. + + * art_rgb_bitmap_affine.h: + * art_rgb_bitmap_affine.c: Major speed improvement, probably fixed + correctness while I was at it. Added alphagamma argument (not yet + implemented). + + * art_rgb_svp.h: + * art_rgb_svp.c: Added alphagamma argument (only implemented + in aa case, not yet alpha case). + + * art_vpath.c: increased perturbation to 2e-3, because the old + value (1e-6) was too small. + + * testart.c: added alphagamma. + + * Makefile.am: added new files + +Sun Dec 27 21:45:03 1998 Raph Levien <raph@gimp.org> + + * art_rect.h: + * art_rect.c: Added DRect versions of the basic ops (double + rather than int). + + * art_rect_svp.h: + * art_rect_svp.c: Added. This computes the bounding box of + an svp. + +Wed Dec 16 14:18:46 1998 Raph Levien <raph@gimp.org> + + * art_alphagamma.h: + * art_alphagamma.c: Added. At present, it only contains a dummy + stub. When the real code is added, it supports doing alpha + compositing in a gamma-corrected color space (suppressing + jaggies). + + * art_pixbuf.h: + * art_pixbuf.c: Added. This is a virtualization layer over + a few different kinds of image formats. + + * art_rgb_pixbuf_affine.h: + * art_rgb_pixbuf_affine.c: Added. Supports compositing of + generic images over an rgb buffer. + + * art_affine.h: + * art_affine.c (art_affine_expansion): Added this function, + which reports the exact scale factor in the case of rotation, + scaling, and transformation (an approximate number in the + case of shearing or anamorphic distortion). + + * art_misc.h: + * art_misc.c (art_warn): Added. + + * art_rgb_affine.h: + * art_rgb_affine.c: Added alphagamma argument (not yet implemented). + + * art_rgb_affine_private.c: Fixed typo bug that was causing + repaint problems for nonsquare images. + + * art_rgb_bitmap_affine.h: + * art_rgb_bitmap_affine.c: Major speed improvement, probably fixed + correctness while I was at it. Added alphagamma argument (not yet + implemented). + + * art_rgb_svp.h: + * art_rgb_svp.c: Added alphagamma argument (only implemented + in aa case, not yet alpha case). + + * art_vpath.c: increased perturbation to 2e-3, because the old + value (1e-6) was too small. + + * testart.c: added alphagamma. + + * Makefile.am: added new files + +Mon Dec 14 00:16:53 1998 Raph Levien <raph@gimp.org> + + * art_affine.c (art_affine_to_string): re-added the "scale" method + that was accidentally deleted before check-in. + + * Makefile.am: added new files + +Sun Dec 13 00:52:39 1998 Raph Levien <raph@gimp.org> + + * art_affine.h: + * art_affine.c: Added. Everything you ever wanted to do with an + affine transform. Especially check the functions that generate + concise PostScript strings for affine transforms. + + * art_filterlevel.h: A simple enum for selecting filtering + style. + + * art_rgb_affine.h: + * art_rgb_affine.c (art_rgb_affine): Added. This function + composites an (opaque) rgb image over an rgb pixel buffer. At + present, it's slow and only nearest neighbor filtering is enabled. + + * art_rgb_rgba_affine.h: + * art_rgb_rgba_affine.c: Analogous, but for compositing rgba + images. + + * art_rgb_bitmap_affine.h: + * art_rgb_bitmap_affine.c: Analogous, but for compositing bitmap + images. + + * art_rgb_affine_private.c (art_rgb_affine_run): Added. This is + a common function used by all the rgb_affine modules to move + testing for source image bbox out of the inner loop. + + * Makefile.am: added the new files + + * testart.c: exercise the image compositors + +Wed Dec 9 23:36:35 1998 Raph Levien <raph@gimp.org> + + * art_vpath.c (art_vpath_perturb): Made it deal correctly + with closed paths (the MOVETO and closing LINETO have to + agree). + + * art_svp_wind.c: Made the bbox calculations for the resulting + svp's correct. + + * art_svp.h: + * art_svp.c: The art_svp_seg_compare function moved here, because + it's required in art_svp_ops. + + * art_svp.c (art_svp_add_segment): It now does bbox calculations. + + * art_svp_ops.h: + * art_svp_ops.c: Added. Populated with basic union, intersection, + and diff functions. + + * art_vpath_svp.h: + * art_vpath_svp.c: Added. Populated with a function to convert + from sorted to unsorted vector paths + + * Makefile.am: added the new files + + * testart.c: exercise the stroke outline and vector path + operations. + +1998-12-08 Herbert Valerio Riedel <hvr@hvrlab.ml.org> + + * art_svp_wind.c: added #include <string.h> for memcpy() + +Sun Dec 6 22:15:12 1998 Raph Levien <raph@gimp.org> + + * art_svp_wind.[ch], art_svp_vpath_stroke.[ch]: Added, but it + doesn't work yet. These will do stroke outline and basic + vector ops like union, intersect, etc. + + * art_svp_render_aa.c: Added a simple speedup based on bbox + culling. I will want to do more speedups, but none of this is + necessary for the freeze. + + * art_svp_vpath.c: Fixed some bugs in the art_svp_from_vpath in + cases where there is more than one subpath. + + * art_vpath.h: + * art_vpath.c (art_vpath_perturb): Added this function. This will + help cheat as long as the basic vector ops have numerical + stability problems. + +Fri Dec 4 18:00:38 1998 Raph Levien <raph@gimp.org> + + * art_svp_render_aa.c (art_svp_render_aa): Changed the api + slightly, to guarantee that the steps are all within the range + from x0 (inclusive) to x1 (exclusive). + + * art_gray_svp.c, art_gray_svp.h: Added. Populated with functions + to render into a simple graymap. + + * art_rgb.c, art_rgb.c: Added. Populated with fill_run and + run_alpha methods. + + * art_rgb_svp.c, art_rgb_svp.h: Added. Populated with functions to + render into an RGB buffer, and to composite over an RGB buffer. + + * Makefile.am: added art_gray_svp, art_rgb, and art_rgb_svp. + + * testart.c: test the color and layered rendering. + +Mon Nov 30 01:30:25 1998 Raph Levien <raph@gimp.org> + + * testart.c: added vector path rendering stuff. Some of it needs + to go out of the test framework and into the module, but the + api hasn't settled down entirely yet (in the real code, all + x's in the step field are within bounds). + + * art_svp_render_aa.c, art_svp_render_aa.c.h: added. + + * art_svp_vpath.c, art_svp_vpath.h: added. + + * art_pathcode.h: added ART_MOVETO_OPEN (libart uses an + ART_MOVETO_OPEN code at the beginning to indicate an open path, + while PostScript uses the lack of a closepath at the end). + + * art_vpath_bpath.c, art_vpath_bpath.h: fixed it up, added + flatness arg to api. + + * Makefile.am: added new source files. + +Wed Nov 25 17:19:44 1998 Raph Levien <raph@gimp.org> + + * art_svp.h, art_svp.c: added, basic constructors for sorted + vector paths. + +Sun Nov 22 23:21:09 1998 Raph Levien <raph@gimp.org> + + * Makefile.am (libart_lgplincdir): Fixed stupid bug in naming of + the variable. + +Sun Nov 22 21:41:13 1998 Raph Levien <raph@gimp.org> + + * art_uta_vpath.c: moved art_uta_union into art_uta_ops. + + * art_uta_ops.[ch]: added, populated with art_uta_union. + +Thu Nov 19 00:19:40 1998 Raph Levien <raph@gimp.org> + + * libartConf.sh.in: added + + * Makefile.am: added creation of libartConf.sh, added -version-info + * configure.in: added LIBART_VERSION_INFO, support for libartConf.sh + + * libart.m4: updated version history :) + +Wed Nov 18 18:15:20 1998 Raph Levien <raph@gimp.org> + + * configure.in (LIBART_VERSION): set this, so that libart-config + --version now works. + +Wed Nov 18 16:50:58 1998 Raph Levien <raph@gimp.org> + + * libart.m4: added (just copied from esound) + * configure.in, Makefile.am: added support for libart-config + * libart-config.in: added (mostly copied from esound) + +Tue Nov 10 12:43:30 1998 Raph Levien <raph@acm.org> + + * Getting the library in shape for initial checkin to CVS. + + |