source: trunk/third/libart_lgpl/ChangeLog @ 21479

Revision 21479, 38.2 KB checked in by ghudson, 20 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r21478, which included commits to RCS files with non-trunk default branches.
RevLine 
[21478]12005-01-21  Kjartan Maraas  <kmaraas@gnome.org>
2
3        * Release 2.3.17
4
52004-03-22  Michael Meeks  <michael@ximian.com>
6
7        * Makefile.am (EXTRA_DIST): add libart.def.
8
92004-03-04  Glynn Foster  <glynn.foster@sun.com>
10
11        * Makefile.am, configure.in, libart-2.0-uninstalled.pc.in:
12        Add uninstalled pkg-config file.
13
[20812]14Tue Sep 09 16:30:31 2003  George Lebl <jirka@5z.com>
15
16        * Release 2.3.16
17
18        * art_render_gradient.c: revert the double comparison test in the
19          asserts and comment out the two asserts causing crashes
20          everywhere, see bug #121850
21
222003-09-02  Alexander Larsson  <alexl@redhat.com>
23
24        * configure.in: 2.3.15
25
262003-08-26  Morten Welinder  <terra@gnome.org>
27
28        * art_render_gradient.c (art_render_gradient_linear_render_8): Fix
29        vertical gradients.  Fix yet more floating point comparisons using
30        !=.  For the record, Gnumeric is a heavy user.
31
322003-08-14  Tor Lillqvist  <tml@iki.fi>
33
34        Some nitpicking changes for Win32:
35
36        * libart-features.h.in: Declare the variables from the library as
37        dlimport/dllexport on Win32.
38
39        * Makefile.am: Don't use -lm on Win32. Use the libart.def file.
40
41        * makefile.msc: Update to generate same name DLL and import
42        library as auto* and libtool. Add missing objects. (But dunno if
43        it is useful to maintain this file. It isn't distributed in the
44        source tarballs (should it be?). And, if it were distributed, and
45        the intention was to support random people really building libart
46        with MSVC, one should distribute also prebuilt config.h(.win32)
47        and libart-features.h(.win32) files.)
48
49        * libart-zip.in (DEVZIP): Fix typo.
50        (DLLDIR): libtool 1.5 installs DLLs in $(prefix)/bin, so look
51        there, too.
52
53        * libart.def: Add missing entry points.
54
55        * testuta.c: To check that the export/import of the version
56        variables work, print out them in a comment. Undefine
57        LIBART_COMPILATION before including libart-features.h.
58
592003-08-08  Alexander Larsson  <alexl@redhat.com>
60
61        * configure.in: 2.3.14
62
63Fri Jul 25 12:29:35 2003  George Lebl <jirka@5z.com>
64
65        * art_render_gradient.c (art_render_gradient_linear_render_8)
66          (art_render_gradient_linear_render) (art_render_gradient_linear)
67          (art_render_gradient_radial_render) (art_render_gradient_radial):
68          Redo the checks where float was compared by == or != to using
69          the EPSILON define.  Also copy the ArtGradientLinear and
70          ArtGradientRadial into the source structure, pretending that
71          these are constants that will never change or be freed by
72          the caller is utterly evil and in fact for librsvg it is
73          not constant.  This fixes some more very random crashes
74          when using librsvg with libart (which seems to be the
75          only usage of the gradient stuff)
76
77Fri Jul 18 12:57:36 2003  George Lebl <jirka@5z.com>
78
79        * art_render_gradient.c: Fix more comparison-of-doubles by == bugs,
80          this code is uber ugly.  Should fix the fairly random crashes
81          on asserts I've been having.
82
832003-07-11  Michael Meeks  <michael@ximian.com>
84
85        * Version 2.3.13
86
872003-07-11  Federico Mena Quintero  <federico@ximian.com>
88
89        * art_svp_ops.c (art_svp_minus): impl.
90
91Tue Jul 08 01:15:02 2003  George Lebl <jirka@5z.com>
92
93        * art_render_gradient.c: fix comment as pointed out by alex
94
95Tue Jul 08 01:13:48 2003  George Lebl <jirka@5z.com>
96
97        * art_render_gradient.c (art_render_gradient_linear_render_8):
98          when we wish to find the current segment and we go beyond the
99          last stop due to float fun, use the last segment as that's
100          really what we want.  Avoids a very abrupt assert death.
101
1022003-05-05  Alexander Larsson  <alexl@redhat.com>
103
104        * configure.in:
105        Bump to 2.3.12
106
1072003-04-24  Alexander Larsson  <alexl@redhat.com>
108
109        * art_uta_vpath.c (art_uta_from_vpath):
110        Don't silently stomp on memory on bad vpaths.
111
1122003-04-11  Alexander Larsson  <alexl@redhat.com>
113
114        * art_svp_vpath_stroke.c (render_seg):
115        Handle cases when dmr2 is very small better.
116
1172003-04-10  Alexander Larsson  <alexl@redhat.com>
118
119        * art_svp_wind.c (x_order_2):
120        Handle horizontally aligned segments.
121
[18255]1222002-11-25  Alexander Larsson  <alexl@redhat.com>
123
124        * configure.in: Bump to 2.3.11
125
1262002-10-16  John Harper  <jsh@unfactored.org>
127
128        * art_render_svp.c (art_render_svp_callback,
129        art_render_svp_callback_span, art_render_svp_callback_opacity,
130        art_render_svp_callback_opacity_span): if no runs would
131        normally be emitted, but start is greater than zero, emit a
132        single run covering the entire width of the rendered region
133
1342002-08-18  Havoc Pennington  <hp@pobox.com>
135
136        * autogen.sh: hardcode aclocal-1.4/automake-1.4 so that users with
137        both automake 1.6 and 1.4 installed get the right automake. Means
138        compilation from CVS will now require the latest automake 1.4
139        release, or manually creating symlinks called "automake-1.4" and
140        "aclocal-1.4"
141
1422002-07-01  Alexander Larsson  <alexl@redhat.com>
143
144        * Release 2.3.10
145
1462002-07-01  Alexander Larsson  <alexl@redhat.com>
147
148        * configure.in (LIBART_VERSION_INFO):
149        Bump to 2.3.10
150
151        * art_svp_intersect.c (art_svp_intersect_add_seg):
152        Initialize seg->wind_left to zero, this avoids
153        uninitialized memory read later in art_svp_intersect_horiz_commit.
154
1552002-06-24  Alexander Larsson  <alexl@redhat.com>
156
157        Release 2.3.9.
158       
1592002-06-24  Alexander Larsson  <alexl@redhat.com>
160
161        * configure.in: Bump to 2.3.9
162
1632002-06-04  Balamurali Viswanathan <balamurali.viswanathan@wipro.com>
164
165        * Makefile.am: Added -lm to libart_lgpl_2_la_LIBADD
166        fixes bug 75711 (Jacob's suggestion)
167
1682002-05-08  Raph Levien  <raph@pixel.artofcode.com>
169
170        * art_uta_vpath.c (art_uta_add_line): Fixes very subtle
171        edge case found by Federico Mena Quintero: (96, 96) -
172        (96.220200017562348, 93.034868598919431). Previously, through
173        numerical error, xn was a hair to the left, throwing off
174        the Bresenham iteration.
175
1762002-03-08  Tor Lillqvist  <tml@iki.fi>
177
178        * configure.in: Minor changes for build on Win32. Call
179        AC_LIBTOOL_WIN32_DLL. Set automake conditionals OS_WIN32 and
180        MS_LIB_AVAILABLE.
181
182        * art_affine.c: Include art_misc.h for M_PI, which not necessarily
183        is in math.h.
184
185        * Makefile.am: On Win32, build and install import libraries, both
186        for gcc and for MSVC (if available).
187
188        * libart-zip.in: New file. Used to build runtime and developer
189        package for Win32.
190
1912002-02-06  Laszlo Peter  <laca@ireland.sun.com>
192
193        * configure.in: add AC_FUNC_ALLOCA
194
195        * art_render_gradient.c: copy alloca hacks from glib/galloca.h
196
1972002-02-02  Alexander Larsson  <alla@lysator.liu.se>
198
199        * art_render.c:
200        Add special case for art_render_composite_8 for two cases
201        that are very common when rendering SVGs with librsvg.
202        I'm sure these can be optimized further, but i'm feeling
203        very slow today.
204
2052002-02-01  Alex Larsson  <alexl@redhat.com>
206
207        * art_render_gradient.c:
208        Add optimized case for depth==8,  n_channels == 3
209
210        * test_gradient.c:
211        Test case for gradients. Uses gtk+, so not built by
212        default.
213
2142002-01-10  Anders Carlsson  <andersca@gnu.org>
215
216        * Release 2.3.8
217
2182002-01-04  Anders Carlsson  <andersca@gnu.org>
219
220        * configure.in: Bump version to 2.3.8.
221
2222002-01-03  Darin Adler  <darin@bentspoon.com>
223
224        * Makefile.am: Add art_render_mask.[ch].
225
226        * art_bpath.h:
227        * art_rect_svp.h:
228        * art_rect_uta.h:
229        * art_render.h:
230        * art_render_gradient.h:
231        * art_render_mask.h:
232        * art_render_svp.h:
233        * art_rgb_svp.h:
234        * art_svp_intersect.h:
235        * art_svp_ops.h:
236        * art_svp_point.h:
237        * art_svp_render_aa.h:
238        * art_svp_vpath.h:
239        * art_svp_vpath_stroke.h:
240        * art_svp_wind.h:
241        * art_uta.h:
242        * art_uta_rect.h:
243        * art_uta_ops.h:
244        * art_uta_svp.h:
245        * art_uta_vpath.h:
246        * art_vpath_bpath.h:
247        * art_vpath_dash.h:
248        * art_vpath_svp.h:
249        Fix includes so that each header includes what it needs.
250
251        * art_affine.c:
252        * art_alphagamma.c:
253        * art_bpath.c:
254        * art_gray_svp.c:
255        * art_misc.c:
256        * art_pixbuf.c:
257        * art_rect.c:
258        * art_rect_svp.c:
259        * art_rect_uta.c:
260        * art_render.c:
261        * art_render_gradient.c:
262        * art_render_mask.c:
263        * art_render_svp.c:
264        * art_rgb.c:
265        * art_rgb_a_affine.c:
266        * art_rgb_affine.c:
267        * art_rgb_affine_private.c:
268        * art_rgb_bitmap_affine.c:
269        * art_rgb_pixbuf_affine.c:
270        * art_rgb_rgba_affine.c:
271        * art_rgb_svp.c:
272        * art_rgba.c:
273        * art_svp.c:
274        * art_svp_intersect.c:
275        * art_svp_ops.c:
276        * art_svp_point.c:
277        * art_svp_render_aa.c:
278        * art_svp_vpath.c:
279        * art_svp_vpath_stroke.c:
280        * art_svp_wind.c:
281        * art_uta.c:
282        * art_uta_ops.c:
283        * art_uta_rect.c:
284        * art_uta_svp.c:
285        * art_uta_vpath.c:
286        * art_vpath.c:
287        * art_vpath_bpath.c:
288        * art_vpath_dash.c:
289        * art_vpath_svp.c:
290        Fix order of includes so that the corresponding header is
291        included first, to test that each header includes what it
292        needs.
293
2942002-01-02  Darin Adler  <darin@bentspoon.com>
295
296        * art_alphagamma.h:
297        * art_gray_svp.h:
298        * art_pixbuf.h:
299        * art_render.h:
300        * art_rgb.h:
301        * art_rgba.h:
302        Add some missing includes.
303
3042001-12-26  Raph Levien  <raph@pixel.artofcode.com>
305
306        * art_svp_intersect.c: More fixes to intersector. When tops
307        coincide, full ordering test is performed (with breaking),
308        rather than just comparing b from line eq. Also, had a test
309        for x >= backwards in art_svp_intersect_add_point. Thanks
310        to Bruce Q. Hammond for test cases.
311
3122001-11-21  Raph Levien  <raph@pixel.artofcode.com>
313
314        * art_svp_intersect.c (art_svp_intersect_break): Changed break
315        logic systematically so that new breaks are always in order,
316        rather than allowing them to become out of order, then try to fix
317        them up later. It's no doubt possible to come up with cases in
318        which this reduces precision, but it simplifies life nicely, so I
319        did it.
320       
321        * (art_svp_intersect_horiz): Initialize (a, b, c) values of hs to
322        avoid UMR's when they are tested later.
323
324        * art_svp_ops.c (print_ps_vpath): Changed the coordinate
325        transform so that it's done in the PostScript rather than
326        the C code that outputs the coordinates. This makes it easier
327        to reconstruct the vector path from the debug output.
328
3292001-11-16  Alex Larsson  <alexl@redhat.com>
330
331        * art_rect.c (art_drect_svp_union, art_drect_svp):
332        Don't call art_drect_union() in these functions, since
333        it considers zero-width or zero-height svg segments to
334        be empty. This causes it to think i.e. rectangular svps
335        are empty.
336
3372001-11-07  Raph Levien  <raph@pixel.artofcode.com>
338
339        * art_svp_intersect.c (art_svp_intersect_horiz): Fixed important
340        logic bug, failing to test crossings of neighbors when inserting
341        horizontal lines. Also changed printf to art_dprint.
342
343        * art_misc.c (art_dprint): Added function for debug printing,
344        so verbose intersector output doesn't have to go through printf.
345
346        * art_misc.h (ART_USE_NEW_INTERSECTOR): I've turned this on
347        now, as the new intersector certainly seems to be performing
348        better than the old one now.
349
3502001-10-31  Anders Carlsson  <andersca@gnu.org>
351
352        * Release 2.3.7
353
3542001-10-15  Raph Levien  <raph@pixel.artofcode.com>
355
356        * art_svp_intersect.c (art_svp_intersect_horiz): Minor
357        logic fix so that horiz segments successfully cross
358        zero length segments in the active list.
359
360        (art_svp_intersect_test_cross): Flags indicating whether to
361        do add_point (potentially breaking neighbors) to left and
362        to right.
363
364        (art_svp_intersect_insert_cross): Provide ART_BREAK_LEFT and
365        ART_BREAK_RIGHT flags to art_svp_intersect_test_cross,
366        depending on direction of search.
367
368        (art_svp_intersect_advance_cursor): Provide flags (allow
369        both left and right breaking) to test_cross.
370       
3712001-10-15  Raph Levien  <raph@pixel.artofcode.com>
372
373        * art_svp_intersect.c (CHEAP_SANITYCHECK): Added an inexpensive
374        sanitycheck to detect multiple insertions of a segment into the
375        horiz list.
376
377        (art_svp_writer_rewind_add_point): Avoid breaking lines below
378        their bottom point.
379
380        (art_svp_intersect_test_cross): Handle cases correctly where
381        intersection point matches y0 of left or right segment. These _do_
382        happen in real world examples. Also, do add_point on newly
383        inserted intersection point.
384
3852001-10-14  Raph Levien  <raph@pixel.artofcode.com>
386
387        * art_svp_intersect.c (art_svp_intersect_add_point): Fixed
388        rather subtle logic bug that misplaced insertion point
389        when seg argument was NULL.
390
3912001-10-11  Raph Levien  <raph@pixel.artofcode.com>
392
393        * art_svp_render_aa.c (art_svp_render_aa_iter_step): Got rid
394        of qsort of steps, and now keep the step list in sorted order.
395        Further, we combine duplicate steps with the same x value,
396        which bounds the size of the step list to x1 - x0, so we
397        don't need to dynamically resize it. Thanks greatly to
398        Bruce Q. Hammond for the original version of this patch.
399
4002001-10-09  Raph Levien  <raph@pixel.artofcode.com>
401
402        * art_svp_intersect.c (art_svp_intersect_test_cross): Breaks
403        bottom part of line segments in "too close" cases.
404
4052001-10-09  Raph Levien  <raph@pixel.artofcode.com>
406
407        * art_svp_intersect.c (art_svp_writer_rewind_add_point): Fixed
408        bbox computation.
409        (art_svp_intersector): Handle degenerate case where input
410        SVP has 0 segments.
411
412        * art_svp_intersect.h: Moved definition of art_svp_intersector
413        inside #ifdef __cplusplus, so it links properly against C++
414
4152001-10-09  Raph Levien  <raph@pixel.artofcode.com>
416
417        * art_svp_intersect.c (art_svp_intersect_break): Handle
418        case when break y equals sweep line correctly. Also adds
419        first try at winding number sanitychecker, but that makes
420        too many false positives.
421
4222001-10-07  Raph Levien  <raph@pixel.artofcode.com>
423
424        * art_svp.c (EPSILON): Set to zero if new intersector is
425        in use - we want svp's to be in strict sorted order.
426
427        * art_svp_intersect.c (art_svp_intersect_test_cross): Explicitly
428        check that top points are equal, and swap immediately if b is out
429        of order.
430        (art_svp_intersect_horiz): Break segments that intersect
431        horizontal lines. Now passes "two squares with offset" test.
432
4332001-10-05  Raph Levien  <raph@pixel.artofcode.com>
434
435        * art_svp_intersect.c: Major changes to accommodate
436        horizontal lines. Intersections of horizontal lines
437        aren't fully processed, but should work a lot better
438        than before.
439
440        * testart.c: Minor tweaks. testpat now frees memory
441        so it can be run under memprof to detect leaks.
442
4432001-10-03  Raph Levien  <raph@pixel.artofcode.com>
444
445        * art_svp_intersect.c (art_svp_intersect_advance_cursor):
446        Made test_cross for inserted segments common between
447        intersection processing and cursor advance, and also took
448        care of a case that hadn't been handled before. Also added
449        invariant sanitychecker for debugging purposes.
450
4512001-10-02  Raph Levien  <raph@pixel.artofcode.com>
452
453        * art_svp_ops.c: ART_USE_NEW_INTERSECTOR variants of svp
454        ops changed to do shallow free of merged svp.
455
4562001-10-01  Raph Levien  <raph@acm.org>
457
458        * art_svp_intersect.c:
459        * art_svp_intersect.h:
460        * Makefile.am:
461        * art_misc.h:
462        * art_svp_wind.h: First commit of new intersector code. It is
463          turned off by default, but can be enabled by #defining
464          ART_USE_NEW_INTERSECTOR in art_misc.h.
465
466        * art_svp_ops.c: Make svp ops use new intersector if enabled.
467
468        * art_svp_vpath_stroke.c: Make vpath stroking use new intersector
469        if enabled.
470       
471        * testart.c: New test case for intersector.
472
473Wed Sep 26 03:48:13 2001  George Lebl <jirka@5z.com>
474
475        * Release 2.3.6
476
477Wed Sep 26 03:11:40 2001  George Lebl <jirka@5z.com>
478
479        * gen_art_config.c: Fix 64bit issues, cast sizeof return when
480          using %d to print it.
481
4822001-09-13  Havoc Pennington  <hp@redhat.com>
483
484        * Makefile.am: rename library to libart_lgpl_2
485
486        * libart-2.0.pc.in (Cflags): move includes
487
488        * libart-config.in: move includes
489
490        * Makefile.am: delete libartConf.sh, rename libart-config
491        (EXTRA_DIST): don't install m4 files
492        (libart_lgplincdir): move headers
493
4942001-08-03  Michael Meeks  <michael@ximian.com>
495
496        * Version 2.3.5 for the API freeze.
497
4982001-07-12  Darin Adler  <darin@bentspoon.com>
499
500        * art_affine.c: (art_affine_expansion): Fix handling of
501        negative numbers. We ran into this bug a while back when
502        figuring out why librsvg couldn't handle certain svg files.
503
5042001-07-12  Darin Adler  <darin@bentspoon.com>
505
506        * art_misc.h: Change art_expand macro so it's a single
507        statement, using the do while (0) trick, which gets rid
508        of some warnings.
509        * art_pixbuf.c: Add a missing include.
510        * art_vpath_svp.c: (art_vpath_from_svp): Initialize a
511        variable to avoid a compiler warning.
512        * gen_art_config.c: Add a missing include.
513
5142001-03-24  Martin Baulig  <baulig@suse.de>
515
516        Applied the patch from Alexander Larsson which was sitting
517        in gnome-libs/patches/libart.diff since February.
518        [FIXME: Alex, can you please provide a ChangeLog?])
519
520        * art_rgb_a_affine.[ch]: New files.
521
5222001-01-07  Hans Breuer <Hans@Breuer.Org>
523        * art_misc.c : embryonic change to use libart_lgpl on win32
524        * libart.def : new file, exported functions for win32 dll
525        * makefile.msc : handwritten for MSVC compiler
526
5272000-09-30  Martin Baulig  <baulig@suse.de>
528
529        * libart-2.0.pc.in: Provide pkg-config script.
530
531        * configure.in: Create libart-2.0.pc from libart-2.0.pc.in.
532        * Makefile.am (pkgconfig_DATA): Install the libart-2.0.pc
533        script in `$(libdir)/pkgconfig'.
534
5352000-08-15  Raph Levien  <raph@acm.org>
536
537        * art_render.c (art_render_image_solid_negotiate): Only
538        sets ART_IMAGE_SOURCE_CAN_COMPOSITE when a compositing
539        callback is selected. Previously was causing segfaults on
540        non-alpha images. Thanks to Leonard Rosenthol for spotting
541        the bug.
542
543Fri Jun 30 22:56:58 2000  Raph Levien  <raph@acm.org>
544
545        * art_render.c (art_render_composite): Fixed a bug that caused
546        it to ignore the alpha setting. Also art_render_composite_8().
547
5482000-06-01  John Sullivan  <sullivan@eazel.com>
549
550        * art_svp_render_aa.c: (art_svp_render_aa_iter_step):
551        Made it build by correcting struct member name from
552        Raph's previous checkin.
553
554Wed May 31 11:10:58 2000  Raph Levien  <raph@acm.org>
555
556        * art_svp_render_aa.c (art_svp_render_aa_iter_step): Updated
557        n_steps_max in iter structure after steps reallocation.
558
559Tue May 30 10:33:13 2000  Raph Levien  <raph@acm.org>
560
561        * art_svp_render_aa.c (art_svp_render_aa_iter_step): Fixed not
562        updating iter->steps when steps gets reallocated.
563
5642000-05-30  Pavel Cisler <pavel@eazel.com>
565
566        * art_rgba.c:
567        Make it build -- fix a broken include.
568
569Tue May 30 00:09:21 2000  Raph Levien  <raph@acm.org>
570
571        * art_render_gradient.c (art_render_gradient_setpix): Fixed
572        an off-by-one loop error.
573
574Mon May 29 15:00:39 2000  Raph Levien  <raph@acm.org>
575
576        * Makefile.am: Moved relevant .h files into HEADERS stanza.
577
578Mon May 29 13:48:49 2000  Raph Levien  <raph@acm.org>
579
580        This is a fairly major commit, as it adds both the new, modular
581        rendering architecture and gradients. Quite a bit of the code
582        feels like "reference code" now, in that it is (hopefully)
583        correct, but not necessarily very fast. In addition, there remain
584        a few things not done, including the use of SVP's as non-driver
585        mask sources. AlphaGamma and filter level also remain
586        unimplemented. No compositing modes other than ART_NORMAL are
587        implemented. All in good time!
588       
589        * configure.in: added -Wmissing-prototypes flag. Bumped version
590        number to 2.3.0.
591
592        * art_render.h:
593        * art_render.c: Added new rendering architecture.
594
595        * art_render_svp.h:
596        * art_render_svp.c: Added renderers to use SVP's as mask
597        sources in new rendering architecture.
598
599        * art_render_gradient.h:
600        * art_render_gradient.c: Added linear and radial gradients
601        as image sources in new rendering architecture.
602
603        * art_rgba.h:
604        * art_rgba.c: Added functions for manipulating and compositing
605        RGBA pixels.
606
607        * art_svp_wind.c: Added static to trap_epsilon(), #ifdef'd out
608        traverse().
609
610        * art_uta_ops.c: Added #include "art_uta_ops.h".
611
612        * art_uta_rect.c: Added #include "art_uta_rect.h".
613
614        * art_uta_svp.h: fixed __ART_UTA_SVP_H__ name.
615
616        * art_misc.h: Added ART_GNUC_NORETURN attribute, added that
617        to the prototype for art_die(). Added "static" to function
618        declarations to avoid warnings when compiled with
619
620        * testart.c: Added gradient test.
621
622Thu May 25 23:30:39 2000  Raph Levien  <raph@acm.org>
623
624        * art_svp_render_aa.h:
625        * art_svp_render_aa.c: Added art_svp_render_aa_iter functions,
626        suitable for iterative rendering of an svp, one scan line at a
627        time.
628
629        * configure.in: Bumped version to 2.2.0.
630
631Tue May 16 15:03:35 2000  Raph Levien  <raph@acm.org>
632
633        * art_rgb_pixbuf_affine.c: Included corresponding .h file.
634
635        * art_rgb_pixbuf_affine.h: Put recursive #includes inside
636        LIBART_COMPILATION test.
637
638        * art_gray_svp.c:
639        * art_rgb_svp.c: Explicit casts for callback data. Also removed
640        "render the steps into tmpbuf" comment.
641
642        * gen_art_config.c:
643        * Makefile.am:
644        * configure.in: Added code to automatically generate an
645        art_config.h file, to be installed in libart's include dir. This
646        file defines ART_SIZEOF_{CHAR,SHORT,INT,LONG} and art_u{8,16,32}.
647
648        * art_misc.h: Moved definition of art_u8 and art_u32 into
649        art_config.h. Added GCC printf format attributes.
650
651        * art_svp_wind.c (traverse): Fixed UMR bug here. The function
652        isn't actually used, so it's just for cleanliness.
653
6542000-04-18  Lauris Kaplinski  <lauris@ariman.ee>
655
656        * art_affine.c (art_affine_to_string): Replaced snprinf with
657        art_ftoa to avoid localisation of generated numbers
658
6592000-04-18  ERDI Gergo  <cactus@cactus.rulez.org>
660
661        * art_rgb_pixbuf_affine.h: Included the ArtPixBuf declaration
662
663Fri Apr 14 16:33:55 2000  Raph Levien  <raph@acm.org>
664
665        * art_svp_wind.c (art_svp_uncross, art_svp_rewind_uncrossed):
666        Fixed uninitialized memory reads when inserting new segment into
667        active_segs.
668
669        * art_bpath.c (art_bpath_affine_transform): Made it avoid
670        potential uninitialized memory reads when not all the coordinates
671        are needed. Thanks to Morten Welinder for spotting both of these
672        problems.
673
6742000-04-05  Raph Levien  <raph@gimp.org>
675
676        * art_svp_wind.c: Make "colinear" warnings go to stderr instead
677        of stdout. Of course, when I finish the new intersector, these
678        will go away entirely.
679
6802000-04-04  Raph Levien  <raph@gimp.org>
681
682        * art_uta_vpath.c (art_uta_add_line): Fixed bug that was causing
683        segfaults on alphas. Thanks to msw for localizing it.
684
6852000-01-17  Raph Levien  <raph@gimp.org>
686
687        * art_svp_vpath_stroke.c (art_svp_vpath_stroke): Typo in api
688        header (thanks rak).
689
6902000-01-16  Timur Bakeyev  <timur@gnu.org>
691
692        * autoconf.sh: Instead of jumping between srdir and builddir just process
693        all the auto* staff in srcdir. In fact, just saying the same things in
694        other words.
695
6962000-01-10  Elliot Lee  <sopwith@redhat.com>
697
698        * Makefile.am, *.h: Add rather bad hacks to the header files to allow compilation
699
700        * Makefile.am: Distribute libart-config.in
701
7022000-01-09  Raph Levien  <raph@gimp.org>
703
704        art_rgb_pixbuf_affine.c, art_rgb_rgba_affine.c, art_rgb_svp.c,
705        art_svp.c, art_svp_ops.c, art_svp_point.c, art_svp_render_aa.c,
706        art_svp_vpath.c, art_svp_vpath_stroke.c, art_svp_wind.c,
707        art_uta.c, art_uta_ops.c, art_uta_rect.c, art_uta_svp.c,
708        art_uta_vpath.c, art_vpath.c, art_vpath_bpath.c, art_vpath_dash.c,
709        art_vpath_svp.c: Added API documentation.
710
711Fri Sep 24 17:53:21 1999  Raph Levien  <raph@acm.org>
712
713        * art_svp_render_aa.c (art_svp_render_insert_active): Avoid
714        reading undefined memory (thanks to Morten Welinder).
715
7161999-09-19  Raph Levien  <raph@gimp.org>
717
718        * art_pixbuf.c (art_pixbuf_duplicate): Added a duplicate function
719        at the request of Michael Meeks.
720
7211999-09-11  Raph Levien  <raph@gimp.org>
722
723        * art_affine.c (art_affine_to_string): Tightened the predicate for
724        matching rotate-only affines, which was too weak. Thanks to lewing
725        for spotting it!
726
7271999-09-01  Raph Levien  <raph@gimp.org>
728
729        * art_affine.c, art_alphagamma.c, art_bpath.c, art_gray_svp.c,
730        art_misc.c, art_pixbuf.c, art_rect.c, art_rect_svp.c,
731        art_rect_uta.c, art_rgb.c, art_rgb_affine.c,
732        art_rgb_bitmap_affine.c: Updates to api doc headers.
733
7341999-08-24  Raph Levien  <raph@gimp.org>
735
736        * art_affine.c, art_alphagamma.c, art_alphagamma.h, art_bpath.c,
737        art_bpath.h, art_gray_svp.c, art_misc.c, art_pixbuf.c,
738        art_pixbuf.h, art_point.h, art_rect.c, art_rect.h: Added api
739        documentation headers.
740
741        * testart.c: Added "dash" test, for testing the vpath_dash
742        functions.
743
744        * art_rgb_pixbuf_affine.h: Fixed the #ifdef for conditional
745        inclusion. Thanks to Kristian Hogsberg Kristensen for spotting
746        the bug.
747
7481999-08-24  Raph Levien  <raph@gimp.org>
749
750        * art_svp_render_aa.c (art_svp_render_aa): Added some tests to
751        avoid NaN for infinite slopes, which were causing problems on
752        Alphas. Closes bug #1966.
753
7541999-08-20  Federico Mena Quintero  <federico@redhat.com>
755
756        * configure.in: Fixed library's libtool version number.
757
7581999-08-03  Larry Ewing  <lewing@gimp.org>
759
760        * art_vpath_dash.c (art_vpath_dash): fix a bug/typo that was causing
761        certain paths to loop infinitely.
762
7631999-07-28  Raph Levien  <raph@gimp.org>
764
765        * art_vpath_dash.[ch]: Added a function to add a dash style
766        to vpaths. It is tested, but has a couple of rough edges (see
767        code for details).
768
769        * testart.c: added tests for the new vpath_dash functionality.
770
771        * Makefile.am: added art_vpath_dash.[ch] files.
772
7731999-07-26  Raph Levien  <raph@gimp.org>
774
775        * art_rgb.c (art_rgb_fill_run): fixed incorrect test for
776        big-endianness. Thanks to Michael Zucchi for spotting it.
777
778Fri Jul 16 23:42:59 1999  Tim Janik  <timj@gtk.org>
779
780        * art_affine.c (art_affine_flip): flip translation matrixes as well, by
781        inverting matrix[4] if (horz) and inverting matrix[5] if (vert).
782
783Fri Jul 16 23:03:26 1999  Tim Janik  <timj@gtk.org>
784
785        * art_pixbuf.[hc]: deprecated art_pixbuf_free_shallow(), people should
786        always free pixbufs with art_pixbuf_free() and use the _dnotify variants
787        for specific destruction behaviour.
788        added art_pixbuf_new_rgb_dnotify() and art_pixbuf_new_rgba_dnotify()
789        which allow for a destruction notification function. (this involved
790        adding two extra pointers to the ArtPixBuf structure, and removal of
791        the recently introduced int flags field).
792
793Mon Jul 12 01:13:23 1999  Tim Janik  <timj@gtk.org>
794
795        * art_affine.[hc]: added art_affine_equal(), which checks two
796        matrixes for equality within grid alignment.
797
798Fri Jul  9 17:50:19 1999  Tim Janik  <timj@gtk.org>
799
800        * art_affine.[hc]: added art_affine_flip() to flip a matrix horizontally
801        and/or vertically, or just copy it.
802        added art_affine_shear() to setup a shearing matrix.
803
804Tue Jul  6 19:03:39 1999  Tim Janik  <timj@gtk.org>
805
806        * art_pixbuf.h: added an int flags; member to the end of the
807        structure, it currently only holds information about whether the
808        pixels member should be freed. (raph: i think flags is more generic
809        than free_pixels, so we can reuse that field if further demands popup
810        in the future).
811
812        * art_pixbuf.c:
813        (art_pixbuf_new_const_rgba):
814        (art_pixbuf_new_const_rgb): new functions that prevent the pixels
815        member from being freed upon art_pixbuf_free ().
816        (art_pixbuf_free): only free the pixels member if it is non-NULL and
817        the PIXBUF_FLAG_DESTROY_PIXELS is set.
818
8191999-07-02  Raph Levien  <raph@gimp.org>
820
821        * art_vpath_bpath.c (art_vpath_render_bez): Bad bad uninitialized
822        variables.
823
824        * configure.in: added compile warnings. Guess why :)
825
8261999-06-28  Raph Levien  <raph@gimp.org>
827
828        * art_svp_point.h:
829        * art_svp_point.c: Added methods for insideness and distance
830        testing, very useful for ::point methods in canvas items.
831
832        * testart.c: test code to exercise the art_svp_point functions.
833
834        * Makefile.am: Additional entries for art_svp_point.
835
8361999-06-28  Raph Levien  <raph@gimp.org>
837
838        * art_svp_render_aa.c (art_svp_render_aa): Subtle boundary
839        case in realloc code -- was causing nasty segfaults.
840
841Wed Jun 23 15:05:43 1999  Raph Levien  <raph@gimp.org>
842
843        * art_rgb_svp.c (art_rgb_svp_alpha_opaque_callback): Missed a
844        case in the anti-segfault crusade. Thanks lewing!
845
846Wed Jun 23 11:16:42 1999  Raph Levien  <raph@gimp.org>
847
848        * art_rgb_svp.c: Made these routines so they won't segfault even
849        if alpha is out of range. Of course, that begs the question of
850        fixing the render routines so they won't _make_ alpha go out of
851        range, but all in good time.
852
853Fri Jun 18 17:32:34 1999  Raph Levien  <raph@acm.org>
854
855        * art_vpath_bpath.c (art_bez_path_to_vec): Switched to a new
856        adaptive subdivision algorithm, which (finally!) takes flatness
857        into account. This should result in both smoother curves and
858        faster operation.
859
860Sun Jun 13 21:07:20 1999  Raph Levien  <raph@gimp.org>
861
862        * art_svp_wind.c (art_svp_rewind_uncrossed): Made the winding
863        rule logic even more correct :). I somehow missed the fact that
864        a clockwise path should be given a winding number of zero;
865        last night's commit tried to make it -1 (which worked for the
866        test cases I was using).
867
868Sun Jun 13 01:23:14 1999  Raph Levien  <raph@gimp.org>
869
870        * art_svp_wind.c (art_svp_rewind_uncrossed): Change to winding
871        rule logic so that it correctly handles the case where the
872        leftmost segment is negative.
873
874        * Makefile.am (libart_lgplinc_HEADERS): made art_svp_wind.h
875        a public headerfile. This is needed for the bpath canvas item.
876        I'm not sure this is the correct way to do it, but it will do
877        for now.
878
879        * art_vpath_bpath.h:
880        * art_vpath_bpath.c (art_bez_path_to_vec): Added const to arg.
881
882        * art_vpath_bpath.h: Embarrassing typo.
883
884        * art_bpath.h: Minor tweaks to the #include paths. It is now
885        consistent with the other header files.
886
887Wed Jun  9 20:24:45 1999  Raph Levien  <raph@gimp.org>
888
889        * art_svp_vpath_stroke.c: Added all remaining line join and cap
890        types, including round, which takes flatness into account. Several
891        new internal functions (art_svp_vpath_stroke_arc) and added
892        flatness argument to a few internal functions. I might want to
893        change the BEVEL join type to MITER for very small turn angles
894        (i.e. within a flatness threshold) for efficiency.
895
896        * art_misc.h: Added M_SQRT2 constant.
897
898Wed Jun  2 21:56:30 1999  Raph Levien  <raph@gimp.org>
899
900        * art_svp_vpath_stroke.c (art_svp_vpath_stroke_raw): Made the
901        closed path detection capable of PostScript semantics (i.e. it
902        now senses the difference between ART_MOVETO and ART_MOVETO_OPEN).
903
904        * art_svp_vpath_stroke.c (art_svp_vpath_stroke_raw): it now
905        filters out successive points that are (nearly) coincident. This
906        fixes some of the crashes and hangs, including Tim Janik's
907        singularity (trying to stroke MOVETO 50, 50; LINETO 50, 50; END).
908
909        * art_svp_wind.c (art_svp_rewind_uncrossed): added a test to
910        correctly handle empty input svp's.
911
912        * art_svp_wind.c (art_svp_uncross): added a test to correctly
913        handle empty input svp's.
914
915Sun Jan 17 20:53:40 1999  Jeff Garzik  <jgarzik@pobox.com>
916
917        * art_affine.c:
918        Include string.h for memcpy.
919
920        * art_svp_vpath.c:
921        Remove conflicting static func definition.
922
923        * art_uta_svp.c:
924        Include art_vpath_svp.h for func definition.
925
926Mon Jan  4 12:47:47 1999  Raph Levien  <raph@acm.org>
927
928        * art_bpath.c (art_bpath_affine_transform): Stupid misnaming
929        of this function (forgot the "art_").
930
931Thu Dec 31 09:04:23 1998  Raph Levien  <raph@gimp.org>
932
933        * art_affine.c (art_affine_rectilinear): Added this function.
934
935        * art_rect.c (art_drect_affine_transform): Corrected the name (it
936        was right in the .h). Also made it work with non-rectilinear
937        transforms, while I was at it.
938
939Thu Dec 17 11:58:24 1998  Raph Levien  <raph@acm.org>
940
941        * art_alphagamma.h:
942        * art_alphagamma.c: The real code for alphagamma.
943
944Wed Dec 16 14:18:46 1998  Raph Levien  <raph@gimp.org>
945
946        * art_alphagamma.h:
947        * art_alphagamma.c: Added. At present, it only contains a dummy
948        stub. When the real code is added, it supports doing alpha
949        compositing in a gamma-corrected color space (suppressing
950        jaggies).
951
952        * art_pixbuf.h:
953        * art_pixbuf.c: Added. This is a virtualization layer over
954        a few different kinds of image formats.
955
956        * art_rgb_pixbuf_affine.h:
957        * art_rgb_pixbuf_affine.c: Added. Supports compositing of
958        generic images over an rgb buffer.
959
960        * art_affine.h:
961        * art_affine.c (art_affine_expansion): Added this function,
962        which reports the exact scale factor in the case of rotation,
963        scaling, and transformation (an approximate number in the
964        case of shearing or anamorphic distortion).
965
966        * art_misc.h:
967        * art_misc.c (art_warn): Added.
968
969        * art_rgb_affine.h:
970        * art_rgb_affine.c: Added alphagamma argument (not yet implemented).
971
972        * art_rgb_affine_private.c: Fixed typo bug that was causing
973        repaint problems for nonsquare images.
974
975        * art_rgb_bitmap_affine.h:
976        * art_rgb_bitmap_affine.c: Major speed improvement, probably fixed
977        correctness while I was at it. Added alphagamma argument (not yet
978        implemented).
979
980        * art_rgb_svp.h:
981        * art_rgb_svp.c: Added alphagamma argument (only implemented
982        in aa case, not yet alpha case).
983
984        * art_vpath.c: increased perturbation to 2e-3, because the old
985        value (1e-6) was too small.
986
987        * testart.c: added alphagamma.
988       
989        * Makefile.am: added new files
990
991Sun Dec 27 21:45:03 1998  Raph Levien  <raph@gimp.org>
992
993        * art_rect.h:
994        * art_rect.c: Added DRect versions of the basic ops (double
995        rather than int).
996
997        * art_rect_svp.h:
998        * art_rect_svp.c: Added. This computes the bounding box of
999        an svp.
1000
1001Wed Dec 16 14:18:46 1998  Raph Levien  <raph@gimp.org>
1002
1003        * art_alphagamma.h:
1004        * art_alphagamma.c: Added. At present, it only contains a dummy
1005        stub. When the real code is added, it supports doing alpha
1006        compositing in a gamma-corrected color space (suppressing
1007        jaggies).
1008
1009        * art_pixbuf.h:
1010        * art_pixbuf.c: Added. This is a virtualization layer over
1011        a few different kinds of image formats.
1012
1013        * art_rgb_pixbuf_affine.h:
1014        * art_rgb_pixbuf_affine.c: Added. Supports compositing of
1015        generic images over an rgb buffer.
1016
1017        * art_affine.h:
1018        * art_affine.c (art_affine_expansion): Added this function,
1019        which reports the exact scale factor in the case of rotation,
1020        scaling, and transformation (an approximate number in the
1021        case of shearing or anamorphic distortion).
1022
1023        * art_misc.h:
1024        * art_misc.c (art_warn): Added.
1025
1026        * art_rgb_affine.h:
1027        * art_rgb_affine.c: Added alphagamma argument (not yet implemented).
1028
1029        * art_rgb_affine_private.c: Fixed typo bug that was causing
1030        repaint problems for nonsquare images.
1031
1032        * art_rgb_bitmap_affine.h:
1033        * art_rgb_bitmap_affine.c: Major speed improvement, probably fixed
1034        correctness while I was at it. Added alphagamma argument (not yet
1035        implemented).
1036
1037        * art_rgb_svp.h:
1038        * art_rgb_svp.c: Added alphagamma argument (only implemented
1039        in aa case, not yet alpha case).
1040
1041        * art_vpath.c: increased perturbation to 2e-3, because the old
1042        value (1e-6) was too small.
1043
1044        * testart.c: added alphagamma.
1045       
1046        * Makefile.am: added new files
1047
1048Mon Dec 14 00:16:53 1998  Raph Levien  <raph@gimp.org>
1049
1050        * art_affine.c (art_affine_to_string): re-added the "scale" method
1051        that was accidentally deleted before check-in.
1052
1053        * Makefile.am: added new files
1054
1055Sun Dec 13 00:52:39 1998  Raph Levien  <raph@gimp.org>
1056
1057        * art_affine.h:
1058        * art_affine.c: Added. Everything you ever wanted to do with an
1059        affine transform. Especially check the functions that generate
1060        concise PostScript strings for affine transforms.       
1061
1062        * art_filterlevel.h: A simple enum for selecting filtering
1063        style.
1064
1065        * art_rgb_affine.h:
1066        * art_rgb_affine.c (art_rgb_affine): Added. This function
1067        composites an (opaque) rgb image over an rgb pixel buffer. At
1068        present, it's slow and only nearest neighbor filtering is enabled.
1069
1070        * art_rgb_rgba_affine.h:
1071        * art_rgb_rgba_affine.c: Analogous, but for compositing rgba
1072        images.
1073
1074        * art_rgb_bitmap_affine.h:
1075        * art_rgb_bitmap_affine.c: Analogous, but for compositing bitmap
1076        images.
1077
1078        * art_rgb_affine_private.c (art_rgb_affine_run): Added. This is
1079        a common function used by all the rgb_affine modules to move
1080        testing for source image bbox out of the inner loop.
1081
1082        * Makefile.am: added the new files
1083
1084        * testart.c: exercise the image compositors
1085
1086Wed Dec  9 23:36:35 1998  Raph Levien  <raph@gimp.org>
1087
1088        * art_vpath.c (art_vpath_perturb): Made it deal correctly
1089        with closed paths (the MOVETO and closing LINETO have to
1090        agree).
1091
1092        * art_svp_wind.c: Made the bbox calculations for the resulting
1093        svp's correct.
1094
1095        * art_svp.h:
1096        * art_svp.c: The art_svp_seg_compare function moved here, because
1097        it's required in art_svp_ops.
1098
1099        * art_svp.c (art_svp_add_segment): It now does bbox calculations.
1100
1101        * art_svp_ops.h:
1102        * art_svp_ops.c: Added. Populated with basic union, intersection,
1103        and diff functions.
1104
1105        * art_vpath_svp.h:
1106        * art_vpath_svp.c: Added. Populated with a function to convert
1107        from sorted to unsorted vector paths
1108
1109        * Makefile.am: added the new files
1110
1111        * testart.c: exercise the stroke outline and vector path
1112        operations.
1113
11141998-12-08  Herbert Valerio Riedel  <hvr@hvrlab.ml.org>
1115
1116        * art_svp_wind.c: added #include <string.h> for memcpy()
1117
1118Sun Dec  6 22:15:12 1998  Raph Levien  <raph@gimp.org>
1119
1120        * art_svp_wind.[ch], art_svp_vpath_stroke.[ch]: Added, but it
1121        doesn't work yet. These will do stroke outline and basic
1122        vector ops like union, intersect, etc.
1123
1124        * art_svp_render_aa.c: Added a simple speedup based on bbox
1125        culling. I will want to do more speedups, but none of this is
1126        necessary for the freeze.
1127
1128        * art_svp_vpath.c: Fixed some bugs in the art_svp_from_vpath in
1129        cases where there is more than one subpath.
1130
1131        * art_vpath.h:
1132        * art_vpath.c (art_vpath_perturb): Added this function.  This will
1133        help cheat as long as the basic vector ops have numerical
1134        stability problems.
1135
1136Fri Dec  4 18:00:38 1998  Raph Levien  <raph@gimp.org>
1137
1138        * art_svp_render_aa.c (art_svp_render_aa): Changed the api
1139        slightly, to guarantee that the steps are all within the range
1140        from x0 (inclusive) to x1 (exclusive).
1141
1142        * art_gray_svp.c, art_gray_svp.h: Added. Populated with functions
1143        to render into a simple graymap.
1144
1145        * art_rgb.c, art_rgb.c: Added. Populated with fill_run and
1146        run_alpha methods.
1147
1148        * art_rgb_svp.c, art_rgb_svp.h: Added. Populated with functions to
1149        render into an RGB buffer, and to composite over an RGB buffer.
1150
1151        * Makefile.am: added art_gray_svp, art_rgb, and art_rgb_svp.
1152
1153        * testart.c: test the color and layered rendering.
1154
1155Mon Nov 30 01:30:25 1998  Raph Levien  <raph@gimp.org>
1156
1157        * testart.c: added vector path rendering stuff. Some of it needs
1158        to go out of the test framework and into the module, but the
1159        api hasn't settled down entirely yet (in the real code, all
1160        x's in the step field are within bounds).
1161
1162        * art_svp_render_aa.c, art_svp_render_aa.c.h: added.
1163
1164        * art_svp_vpath.c, art_svp_vpath.h: added.
1165
1166        * art_pathcode.h: added ART_MOVETO_OPEN (libart uses an
1167        ART_MOVETO_OPEN code at the beginning to indicate an open path,
1168        while PostScript uses the lack of a closepath at the end).
1169
1170        * art_vpath_bpath.c, art_vpath_bpath.h: fixed it up, added
1171        flatness arg to api.
1172
1173        * Makefile.am: added new source files.
1174
1175Wed Nov 25 17:19:44 1998  Raph Levien  <raph@gimp.org>
1176
1177        * art_svp.h, art_svp.c: added, basic constructors for sorted
1178        vector paths.
1179
1180Sun Nov 22 23:21:09 1998  Raph Levien  <raph@gimp.org>
1181
1182        * Makefile.am (libart_lgplincdir): Fixed stupid bug in naming of
1183        the variable.
1184
1185Sun Nov 22 21:41:13 1998  Raph Levien  <raph@gimp.org>
1186
1187        * art_uta_vpath.c: moved art_uta_union into art_uta_ops.
1188
1189        * art_uta_ops.[ch]: added, populated with art_uta_union.
1190
1191Thu Nov 19 00:19:40 1998  Raph Levien  <raph@gimp.org>
1192
1193        * libartConf.sh.in: added
1194
1195        * Makefile.am: added creation of libartConf.sh, added -version-info
1196        * configure.in: added LIBART_VERSION_INFO, support for libartConf.sh
1197       
1198        * libart.m4: updated version history :)
1199
1200Wed Nov 18 18:15:20 1998  Raph Levien  <raph@gimp.org>
1201
1202        * configure.in (LIBART_VERSION): set this, so that libart-config
1203        --version now works.
1204
1205Wed Nov 18 16:50:58 1998  Raph Levien  <raph@gimp.org>
1206
1207        * libart.m4: added (just copied from esound)
1208        * configure.in, Makefile.am: added support for libart-config
1209        * libart-config.in: added (mostly copied from esound)
1210
1211Tue Nov 10 12:43:30 1998  Raph Levien  <raph@acm.org>
1212
1213        * Getting the library in shape for initial checkin to CVS.
1214
1215
Note: See TracBrowser for help on using the repository browser.