diff options
author | Carl Worth <cworth@cworth.org> | 2006-11-22 16:52:18 -0800 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2006-11-22 16:52:18 -0800 |
commit | 02804773e7ef521adfbd26f90f303879198acde5 (patch) | |
tree | d94c1fe12efd44b0d5bba48c56577b8b21a75c87 /test/big-trap.c | |
parent | fdbb820ece5e6ab970cf6a9b756eebf7283c0597 (diff) | |
download | cairo-02804773e7ef521adfbd26f90f303879198acde5.tar.gz |
give the big-trap test the XFAIL treatment.
We'll need to rewrite this test (and the way cairo is compiled for
testing) before it can exercise the bug of interest. In the
meantime, let's just give it an "expected failure" status.
Diffstat (limited to 'test/big-trap.c')
-rw-r--r-- | test/big-trap.c | 36 |
1 files changed, 35 insertions, 1 deletions
diff --git a/test/big-trap.c b/test/big-trap.c index b5e3255d0..e201b9898 100644 --- a/test/big-trap.c +++ b/test/big-trap.c @@ -27,9 +27,43 @@ static cairo_test_draw_function_t draw; +/* This test was originally written to exercise a bug in pixman in + * which it would scribble all over memory when given a particular + * (and bogus) trapezoid. However, a recent change to + * _cairo_fixed_from_double changed the details of the bogus trapezoid + * (it overflows in a different way now), so the bug is being masked. + * + * According to Vladimir, (http://lists.freedesktop.org/archives/cairo/2006-November/008482.html): + * + * Before the change, the two trapezoids that were generated were: + * + * Trap[0]: T: 0x80000000 B: 0x80000003 + * L: [(0x000a0000, 0x80000000) (0x00080000, 0x00080000)] + * R: [(0x01360000, 0x80000000) (0x01380000, 0x00080000)] + * Trap[1]: T: 0x80000003 B: 0x00080000 + * L: [(0x000a0000, 0x80000000) (0x00080000, 0x00080000)] + * R: [(0x01360000, 0x80000000) (0x01380000, 0x00080000)] + * + * After the change, the L/R coordinates are identical for both traps, but + * the top and bottom change: + * + * Trap[0]: t: 0x80000000 b: 0xfda80003 + * l: [(0x000a0000, 0x80000000) (0x00080000, 0x00080000)] + * r: [(0x01360000, 0x80000000) (0x01380000, 0x00080000)] + * Trap[1]: t: 0xfda80003 b: 0x00080000 + * l: [(0x000a0000, 0x80000000) (0x00080000, 0x00080000)] + * r: [(0x01360000, 0x80000000) (0x01380000, 0x00080000)] + * + * I think the fix we want here is to rewrite this test to call + * directly into pixman with the trapezoid of interest, (which will + * require adding a new way to configure cairo for "testing" which + * will prevent the hiding of internal library symbols. + */ + cairo_test_t test = { "big-trap", - "Test oversize trapezoid with a clip region", + "Test oversize trapezoid with a clip region" + "\nTest needs to be adjusted to trigger the original bug", 100, 100, draw }; |