1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772 3773 3774 3775 3776 3777 3778 3779 3780 3781 3782 3783 3784 3785 3786 3787 3788 3789 3790 3791 3792 3793 3794 3795 3796 3797 3798 3799 3800 3801 3802 3803 3804 3805 3806 3807 3808 3809 3810 3811 3812 3813 3814 3815 3816 3817 3818 3819 3820 3821 3822 3823 3824 3825 3826 3827 3828 3829 3830 3831 3832 3833 3834 3835 3836 3837 3838 3839 3840 3841 3842 3843 3844 3845 3846 3847 3848 3849 3850 3851 3852 3853 3854 3855 3856 3857 3858 3859 3860 3861 3862 3863 3864 3865 3866 3867 3868 3869 3870 3871 3872 3873 3874 3875 3876 3877 3878 3879 3880 3881 3882 3883 3884 3885 3886 3887 3888 3889 3890 3891 3892 3893 3894 3895 3896 3897 3898 3899 3900 3901 3902 3903 3904 3905 3906 3907 3908 3909 3910 3911 3912 3913 3914 3915 3916 3917 3918 3919 3920 3921 3922 3923 3924 3925 3926 3927 3928 3929 3930 3931 3932 3933 3934 3935 3936 3937 3938 3939 3940 3941 3942 3943 3944 3945 3946 3947 3948 3949 3950 3951 3952 3953 3954 3955 3956 3957 3958 3959 3960 3961 3962 3963 3964 3965 3966 3967 3968 3969 3970 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 3984 3985 3986 3987 3988 3989 3990 3991 3992 3993 3994 3995 3996 3997 3998 3999 4000 4001 4002 4003 4004 4005 4006 4007 4008 4009 4010 4011 4012 4013 4014 4015 4016 4017 4018 4019 4020 4021 4022 4023 4024 4025 4026 4027 4028 4029 4030 4031 4032 4033 4034 4035 4036 4037 4038 4039 4040 4041 4042 4043 4044 4045 4046 4047 4048 4049 4050 4051 4052 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4063 4064 4065 4066 4067 4068 4069 4070 4071 4072 4073 4074 4075 4076 4077 4078 4079 4080 4081 4082 4083 4084 4085 4086 4087 4088 4089 4090 4091 4092 4093 4094 4095 4096 4097 4098 4099 4100 4101 4102 4103 4104 4105 4106 4107 4108 4109 4110 4111 4112 4113 4114 4115 4116 4117 4118 4119 4120 4121 4122 4123 4124 4125 4126 4127 4128 4129 4130 4131 4132 4133 4134 4135 4136 4137 4138 4139 4140 4141 4142 4143 4144 4145 4146 4147 4148 4149 4150 4151 4152 4153 4154 4155 4156 4157 4158 4159 4160 4161 4162 4163 4164 4165 4166 4167 4168 4169 4170 4171 4172 4173 4174 4175 4176 4177 4178 4179 4180 4181 4182 4183 4184 4185 4186 4187 4188 4189 4190 4191 4192 4193 4194 4195 4196 4197 4198 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 4218 4219 4220 4221 4222 4223 4224 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 4251 4252 4253 4254 4255 4256 4257 4258 4259 4260 4261 4262 4263 4264 4265 4266 4267 4268 4269 4270 4271 4272 4273 4274 4275 4276 4277 4278 4279 4280 4281 4282 4283 4284 4285 4286 4287 4288 4289 4290 4291 4292 4293 4294 4295 4296 4297 4298 4299 4300 4301 4302 4303 4304 4305 4306 4307 4308 4309 4310 4311 4312 4313 4314 4315 4316 4317 4318 4319 4320 4321 4322 4323 4324 4325 4326 4327 4328 4329 4330 4331 4332 4333 4334 4335 4336 4337 4338 4339 4340 4341 4342 4343 4344 4345 4346 4347 4348 4349 4350 4351 4352 4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 4365 4366 4367 4368 4369 4370 4371 4372 4373 4374 4375 4376 4377 4378 4379 4380 4381 4382 4383 4384 4385 4386 4387 4388 4389 4390 4391 4392 4393 4394 4395 4396 4397 4398 4399 4400 4401 4402 4403 4404 4405 4406 4407 4408 4409 4410 4411 4412 4413 4414 4415 4416 4417 4418 4419 4420 4421 4422 4423 4424 4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 4462 4463 4464 4465 4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 4492 4493 4494 4495 4496 4497 4498 4499 4500 4501 4502 4503 4504 4505 4506 4507 4508 4509 4510 4511 4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 4547 4548 4549 4550 4551 4552 4553 4554 4555 4556 4557 4558 4559 4560 4561 4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 4582 4583 4584 4585 4586 4587 4588 4589 4590 4591 4592 4593 4594 4595 4596 4597 4598 4599 4600 4601 4602 4603 4604 4605 4606 4607 4608 4609 4610 4611 4612 4613 4614 4615 4616 4617 4618 4619 4620 4621 4622 4623 4624 4625 4626 4627 4628 4629 4630 4631 4632 4633 4634 4635 4636 4637 4638 4639 4640 4641 4642 4643 4644 4645 4646 4647 4648 4649 4650 4651 4652 4653 4654 4655 4656 4657 4658 4659 4660 4661 4662 4663 4664 4665 4666 4667 4668 4669 4670 4671 4672 4673 4674 4675 4676 4677 4678 4679 4680 4681 4682 4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 4693 4694 4695 4696 4697 4698 4699 4700 4701 4702 4703 4704 4705 4706 4707 4708 4709 4710 4711 4712 4713 4714 4715 4716 4717 4718 4719 4720 4721 4722 4723 4724 4725 4726 4727 4728 4729 4730 4731 4732 4733 4734 4735 4736 4737 4738 4739 4740 4741 4742 4743 4744 4745 4746 4747 4748 4749 4750 4751 4752 4753 4754 4755 4756 4757 4758 4759 4760 4761 4762 4763 4764 4765 4766 4767 4768 4769 4770 4771 4772 4773 4774 4775 4776 4777 4778 4779 4780 4781 4782 4783 4784 4785 4786 4787 4788 4789 4790 4791 4792 4793 4794 4795 4796 4797 4798 4799 4800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824 4825 4826 4827 4828 4829 4830 4831 4832 4833 4834 4835 4836 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 4851 4852 4853 4854 4855 4856 4857 4858 4859 4860 4861 4862 4863 4864 4865 4866 4867 4868 4869 4870 4871 4872 4873 4874 4875 4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 4913 4914 4915 4916 4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 4936 4937 4938 4939 4940 4941 4942 4943 4944 4945 4946 4947 4948 4949 4950 4951 4952 4953 4954 4955 4956 4957 4958 4959 4960 4961 4962 4963 4964 4965 4966 4967 4968 4969 4970 4971 4972 4973 4974 4975 4976 4977 4978 4979 4980 4981 4982 4983 4984 4985 4986 4987 4988 4989 4990 4991 4992 4993 4994 4995 4996 4997 4998 4999 5000 5001 5002 5003 5004 5005 5006 5007 5008 5009 5010 5011 5012 5013 5014 5015 5016 5017 5018 5019 5020 5021 5022 5023 5024 5025 5026 5027 5028 5029 5030 5031 5032 5033 5034 5035 5036 5037 5038 5039 5040 5041 5042 5043 5044 5045 5046 5047 5048 5049 5050 5051 5052 5053 5054 5055 5056 5057 5058 5059 5060 5061 5062 5063 5064 5065 5066 5067 5068 5069 5070 5071 5072 5073 5074 5075 5076 5077 5078 5079 5080 5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 5091 5092 5093 5094 5095 5096 5097 5098 5099 5100 5101 5102 5103 5104 5105 5106 5107 5108 5109 5110 5111 5112 5113 5114 5115 5116 5117 5118 5119 5120 5121 5122 5123 5124 5125 5126 5127 5128 5129 5130 5131 5132 5133 5134 5135 5136 5137 5138 5139 5140 5141 5142 5143 5144 5145 5146 5147 5148 5149 5150 5151 5152 5153 5154 5155 5156 5157 5158 5159 5160 5161 5162 5163 5164 5165 5166 5167 5168 5169 5170 5171 5172 5173 5174 5175 5176 5177 5178 5179 5180 5181 5182 5183 5184 5185 5186 5187 5188 5189 5190 5191 5192 5193 5194 5195 5196 5197 5198 5199 5200 5201 5202 5203 5204 5205 5206 5207 5208 5209 5210 5211 5212 5213 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229 5230 5231 5232 5233 5234 5235 5236 5237 5238 5239 5240 5241 5242 5243 5244 5245 5246 5247 5248 5249 5250 5251 5252 5253 5254 5255 5256 5257 5258 5259 5260 5261 5262 5263 5264 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 5286 5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 5305 5306 5307 5308 5309 5310 5311 5312 5313 5314 5315 5316 5317 5318 5319 5320 5321 5322 5323 5324 5325 5326 5327 5328 5329 5330 5331 5332 5333 5334 5335 5336 5337 5338 5339 5340 5341 5342 5343 5344 5345 5346 5347 5348 5349 5350 5351 5352 5353 5354 5355 5356 5357 5358 5359 5360 5361 5362 5363 5364 5365 5366 5367 5368 5369 5370 5371 5372 5373 5374 5375 5376 5377 5378 5379 5380 5381 5382 5383 5384 5385 5386 5387 5388 5389 5390 5391 5392 5393 5394 5395 5396 5397 5398 5399 5400 5401 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 5416 5417 5418 5419 5420 5421 5422 5423 5424 5425 5426 5427 5428 5429 5430 5431 5432 5433 5434 5435 5436 5437 5438 5439 5440 5441 5442 5443 5444 5445 5446 5447 5448 5449 5450 5451 5452 5453 5454 5455 5456 5457 5458 5459 5460 5461 5462 5463 5464 5465 5466 5467 5468 5469 5470 5471 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 5495 5496 5497 5498 5499 5500 5501 5502 5503 5504 5505 5506 5507 5508 5509 5510 5511 5512 5513 5514 5515 5516 5517 5518 5519 5520 5521 5522 5523 5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544 5545 5546 5547 5548 5549 5550 5551 5552 5553 5554 5555 5556 5557 5558 5559 5560 5561 5562 5563 5564 5565 5566 5567 5568 5569 5570 5571 5572 5573 5574 5575 5576 5577 5578 5579 5580 5581 5582 5583 5584 5585 5586 5587 5588 5589 5590 5591 5592 5593 5594 5595 5596 5597 5598 5599 5600 5601 5602 5603 5604 5605 5606 5607 5608 5609 5610 5611 5612 5613 5614 5615 5616 5617 5618 5619 5620 5621 5622 5623 5624 5625 5626 5627 5628 5629 5630 5631 5632 5633 5634 5635 5636 5637 5638 5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 5650 5651 5652 5653 5654 5655 5656 5657 5658 5659 5660 5661 5662 5663 5664 5665 5666 5667 5668 5669 5670 5671 5672 5673 5674 5675 5676 5677 5678 5679 5680 5681 5682 5683 5684 5685 5686 5687 5688 5689 5690 5691 5692 5693 5694 5695 5696 5697 5698 5699 5700 5701 5702 5703 5704 5705 5706 5707 5708 5709 5710 5711 5712 5713 5714 5715 5716 5717 5718 5719 5720 5721 5722 5723 5724 5725 5726 5727 5728 5729 5730 5731 5732 5733 5734 5735 5736 5737 5738 5739 5740 5741 5742 5743 5744 5745 5746 5747 5748 5749 5750 5751 5752 5753 5754 5755 5756 5757 5758 5759 5760 5761 5762 5763 5764 5765 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 5802 5803 5804 5805 5806 5807 5808 5809 5810 5811 5812 5813 5814 5815 5816 5817 5818 5819 5820 5821 5822 5823 5824 5825 5826 5827 5828 5829 5830 5831 5832 5833 5834 5835 5836 5837 5838 5839 5840 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 5855 5856 5857 5858 5859 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 5871 5872 5873 5874 5875 5876 5877 5878 5879 5880 5881 5882 5883 5884 5885 5886 5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 5897 5898 5899 5900 5901 5902 5903 5904 5905 5906 5907 5908 5909 5910 5911 5912 5913 5914 5915 5916 5917 5918 5919 5920 5921 5922 5923 5924 5925 5926 5927 5928 5929 5930 5931 5932 5933 5934 5935 5936 5937 5938 5939 5940 5941 5942 5943 5944 5945 5946 5947 5948 5949 5950 5951 5952 5953 5954 5955 5956 5957 5958 5959 5960 5961 5962 5963 5964 5965 5966 5967 5968 5969 5970 5971 5972 5973 5974 5975 5976 5977 5978 5979 5980 5981 5982 5983 5984 5985 5986 5987 5988 5989 5990 5991 5992 5993 5994 5995 5996 5997 5998 5999 6000 6001 6002 6003 6004 6005 6006 6007 6008 6009 6010 6011 6012 6013 6014 6015 6016 6017 6018 6019 6020 6021 6022 6023 6024 6025 6026 6027 6028 6029 6030 6031 6032 6033 6034 6035 6036 6037 6038 6039 6040 6041 6042 6043 6044 6045 6046 6047 6048 6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 6120 6121 6122 6123 6124 6125 6126 6127 6128 6129 6130 6131 6132 6133 6134 6135 6136 6137 6138 6139 6140 6141 6142 6143 6144 6145 6146 6147 6148 6149 6150 6151 6152 6153 6154 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 6196 6197 6198 6199 6200 6201 6202 6203 6204 6205 6206 6207 6208 6209 6210 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 6274 6275 6276 6277 6278 6279 6280 6281 6282 6283 6284 6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 6295 6296 6297 6298 6299 6300 6301 6302 6303 6304 6305 6306 6307 6308 6309 6310 6311 6312 6313 6314 6315 6316 6317 6318 6319 6320 6321 6322 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6334 6335 6336 6337 6338 6339 6340 6341 6342 6343 6344 6345 6346 6347 6348 6349 6350 6351 6352 6353 6354 6355 6356 6357 6358 6359 6360 6361 6362 6363 6364 6365 6366 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 6381 6382 6383 6384 6385 6386 6387 6388 6389 6390 6391 6392 6393 6394 6395 6396 6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 6407 6408 6409 6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 6452 6453 6454 6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 6476 6477 6478 6479 6480 6481 6482 6483 6484 6485 6486 6487 6488 6489 6490 6491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 6516 6517 6518 6519 6520 6521 6522 6523 6524 6525 6526 6527 6528 6529 6530 6531 6532 6533 6534 6535 6536 6537 6538 6539 6540 6541 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 6589 6590 6591 6592 6593 6594 6595 6596 6597 6598 6599 6600 6601 6602 6603 6604 6605 6606 6607 6608 6609 6610 6611 6612 6613 6614 6615 6616 6617 6618 6619 6620 6621 6622 6623 6624 6625 6626 6627 6628 6629 6630 6631 6632 6633 6634 6635 6636 6637 6638 6639 6640 6641 6642 6643 6644 6645 6646 6647 6648 6649 6650 6651 6652 6653 6654 6655 6656 6657 6658 6659 6660 6661 6662 6663 6664 6665 6666 6667 6668 6669 6670 6671 6672 6673 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 6692 6693 6694 6695 6696 6697 6698 6699 6700 6701 6702 6703 6704 6705 6706 6707 6708 6709 6710 6711 6712 6713 6714 6715 6716 6717 6718 6719 6720 6721 6722 6723 6724 6725 6726 6727 6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 6751 6752 6753 6754 6755 6756 6757 6758 6759 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 6777 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 6800 6801 6802 6803 6804 6805 6806 6807 6808 6809 6810 6811 6812 6813 6814 6815 6816 6817 6818 6819 6820 6821 6822 6823 6824 6825 6826 6827 6828 6829 6830 6831 6832 6833 6834 6835 6836 6837 6838 6839 6840 6841 6842 6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853 6854 6855 6856 6857 6858 6859 6860 6861 6862 6863 6864 6865 6866 6867 6868 6869 6870 6871 6872 6873 6874 6875 6876 6877 6878 6879 6880 6881 6882 6883 6884 6885 6886 6887 6888 6889 6890 6891 6892 6893 6894 6895 6896 6897 6898 6899 6900 6901 6902 6903 6904 6905 6906 6907 6908 6909 6910 6911 6912 6913 6914 6915 6916 6917 6918 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 6933 6934 6935 6936 6937 6938 6939 6940 6941 6942 6943 6944 6945 6946 6947 6948 6949 6950 6951 6952 6953 6954 6955 6956 6957 6958 6959 6960 6961 6962 6963 6964 6965 6966 6967 6968 6969 6970 6971 6972 6973 6974 6975 6976 6977 6978 6979 6980 6981 6982 6983 6984 6985 6986 6987 6988 6989 6990 6991 6992 6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 7005 7006 7007 7008 7009 7010 7011 7012 7013 7014 7015 7016 7017 7018 7019 7020 7021 7022 7023 7024 7025 7026 7027 7028 7029 7030 7031 7032 7033 7034 7035 7036 7037 7038 7039 7040 7041 7042 7043 7044 7045 7046 7047 7048 7049 7050 7051 7052 7053 7054 7055 7056 7057 7058 7059 7060 7061 7062 7063 7064 7065 7066 7067 7068 7069 7070 7071 7072 7073 7074 7075 7076 7077 7078 7079 7080 7081 7082 7083 7084 7085 7086 7087 7088 7089 7090 7091 7092 7093 7094 7095 7096 7097 7098 7099 7100 7101 7102 7103 7104 7105 7106 7107 7108 7109 7110 7111 7112 7113 7114 7115 7116 7117 7118 7119 7120 7121 7122 7123 7124 7125 7126 7127 7128 7129 7130 7131 7132 7133 7134 7135 7136 7137 7138 7139 7140 7141 7142 7143 7144 7145 7146 7147 7148 7149 7150 7151 7152 7153 7154 7155 7156 7157 7158 7159 7160 7161 7162 7163 7164 7165 7166 7167 7168 7169 7170 7171 7172 7173 7174 7175 7176 7177 7178 7179 7180 7181 7182 7183 7184 7185 7186 7187 7188 7189 7190 7191 7192 7193 7194 7195 7196 7197 7198 7199 7200 7201 7202 7203 7204 7205 7206 7207 7208 7209 7210 7211 7212 7213 7214 7215 7216 7217 7218 7219 7220 7221 7222 7223 7224 7225 7226 7227 7228 7229 7230 7231 7232 7233 7234 7235 7236 7237 7238 7239 7240 7241 7242 7243 7244 7245 7246 7247 7248 7249 7250 7251 7252 7253 7254 7255 7256 7257 7258 7259 7260 7261 7262 7263 7264 7265 7266 7267 7268 7269 7270 7271 7272 7273 7274 7275 7276 7277 7278 7279 7280 7281 7282 7283 7284 7285 7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 7297 7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7315 7316 7317 7318 7319 7320 7321 7322 7323 7324 7325 7326 7327 7328 7329 7330 7331 7332 7333 7334 7335 7336 7337 7338 7339 7340 7341 7342 7343 7344 7345 7346 7347 7348 7349 7350 7351 7352 7353 7354 7355 7356 7357 7358 7359 7360 7361 7362 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 7374 7375 7376 7377 7378 7379 7380 7381 7382 7383 7384 7385 7386 7387 7388 7389 7390 7391 7392 7393 7394 7395 7396 7397 7398 7399 7400 7401 7402 7403 7404 7405 7406 7407 7408 7409 7410 7411 7412 7413 7414 7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 7425 7426 7427 7428 7429 7430 7431 7432 7433 7434 7435 7436 7437 7438 7439 7440 7441 7442 7443 7444 7445 7446 7447 7448 7449 7450 7451 7452 7453 7454 7455 7456 7457 7458 7459 7460 7461 7462 7463 7464 7465 7466 7467 7468 7469 7470 7471 7472 7473 7474 7475 7476 7477 7478 7479 7480 7481 7482 7483 7484 7485 7486 7487 7488 7489 7490 7491 7492 7493 7494 7495 7496 7497 7498 7499 7500 7501 7502 7503 7504 7505 7506 7507 7508 7509 7510 7511 7512 7513 7514 7515 7516 7517 7518 7519 7520 7521 7522 7523 7524 7525 7526 7527 7528 7529 7530 7531 7532 7533 7534 7535 7536 7537 7538 7539 7540 7541 7542 7543 7544 7545 7546 7547 7548 7549 7550 7551 7552 7553 7554 7555 7556 7557 7558 7559 7560 7561 7562 7563 7564 7565 7566 7567 7568 7569 7570 7571 7572 7573 7574 7575 7576 7577 7578 7579 7580 7581 7582 7583 7584 7585 7586 7587 7588 7589 7590 7591 7592 7593 7594 7595 7596 7597 7598 7599 7600 7601 7602 7603 7604 7605 7606 7607 7608 7609 7610 7611 7612 7613 7614 7615 7616 7617 7618 7619 7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 7651 7652 7653 7654 7655 7656 7657 7658 7659 7660 7661 7662 7663 7664 7665 7666 7667 7668 7669 7670 7671 7672 7673 7674 7675 7676 7677 7678 7679 7680 7681 7682 7683 7684 7685 7686 7687 7688 7689 7690 7691 7692 7693 7694 7695 7696 7697 7698 7699 7700 7701 7702 7703 7704 7705 7706 7707 7708 7709 7710 7711 7712 7713 7714 7715 7716 7717 7718 7719 7720 7721 7722 7723 7724 7725 7726 7727 7728 7729 7730 7731 7732 7733 7734 7735 7736 7737 7738 7739 7740 7741 7742 7743 7744 7745 7746 7747 7748 7749 7750 7751 7752 7753 7754 7755 7756 7757 7758 7759 7760 7761 7762 7763 7764 7765 7766 7767 7768 7769 7770 7771 7772 7773 7774 7775 7776 7777 7778 7779 7780 7781 7782 7783 7784 7785 7786 7787 7788 7789 7790 7791 7792 7793 7794 7795 7796 7797 7798 7799 7800 7801 7802 7803 7804 7805 7806 7807 7808 7809 7810 7811 7812 7813 7814 7815 7816 7817 7818 7819 7820 7821 7822 7823 7824 7825 7826 7827 7828 7829 7830 7831 7832 7833 7834 7835 7836 7837 7838 7839 7840 7841 7842 7843 7844 7845 7846 7847 7848 7849 7850 7851 7852 7853 7854 7855 7856 7857 7858 7859 7860 7861 7862 7863 7864 7865 7866 7867 7868 7869 7870 7871 7872 7873 7874 7875 7876 7877 7878 7879 7880 7881 7882 7883 7884 7885 7886 7887 7888 7889 7890 7891 7892 7893 7894 7895 7896 7897 7898 7899 7900 7901 7902 7903 7904 7905 7906 7907 7908 7909 7910 7911 7912 7913 7914 7915 7916 7917 7918 7919 7920 7921 7922 7923 7924 7925 7926 7927 7928 7929 7930 7931 7932 7933 7934 7935 7936 7937 7938 7939 7940 7941 7942 7943 7944 7945 7946 7947 7948 7949 7950 7951 7952 7953 7954 7955 7956 7957 7958 7959 7960 7961 7962 7963 7964 7965 7966 7967 7968 7969 7970 7971 7972 7973 7974 7975 7976 7977 7978 7979 7980 7981 7982 7983 7984 7985 7986 7987 7988 7989 7990 7991 7992 7993 7994 7995 7996 7997 7998 7999 8000 8001 8002 8003 8004 8005 8006 8007 8008 8009 8010 8011 8012 8013 8014 8015 8016 8017 8018 8019 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 8030 8031 8032 8033 8034 8035 8036 8037 8038 8039 8040 8041 8042 8043 8044 8045 8046 8047 8048 8049 8050 8051 8052 8053 8054 8055 8056 8057 8058 8059 8060 8061 8062 8063 8064 8065 8066 8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077 8078 8079 8080 8081 8082 8083 8084 8085 8086 8087 8088 8089 8090 8091 8092 8093 8094 8095 8096 8097 8098 8099 8100 8101 8102 8103 8104 8105 8106 8107 8108 8109 8110 8111 8112 8113 8114 8115 8116 8117 8118 8119 8120 8121 8122 8123 8124 8125 8126 8127 8128 8129 8130 8131 8132 8133 8134 8135 8136 8137 8138 8139 8140 8141 8142 8143 8144 8145 8146 8147 8148 8149 8150 8151 8152 8153 8154 8155 8156 8157 8158 8159 8160 8161 8162 8163 8164 8165 8166 8167 8168 8169 8170 8171 8172 8173 8174 8175 8176 8177 8178 8179 8180 8181 8182 8183 8184 8185 8186 8187 8188 8189 8190 8191 8192 8193 8194 8195 8196 8197 8198 8199 8200 8201 8202 8203 8204 8205 8206 8207 8208 8209 8210 8211 8212 8213 8214 8215 8216 8217 8218 8219 8220 8221 8222 8223 8224 8225 8226 8227 8228 8229 8230 8231 8232 8233 8234 8235 8236 8237 8238 8239 8240 8241 8242 8243 8244 8245 8246 8247 8248 8249 8250 8251 8252 8253 8254 8255 8256 8257 8258 8259 8260 8261 8262 8263 8264 8265 8266 8267 8268 8269 8270 8271 8272 8273 8274 8275 8276 8277 8278 8279 8280 8281 8282 8283 8284 8285 8286 8287 8288 8289 8290 8291 8292 8293 8294 8295 8296 8297 8298 8299 8300 8301 8302 8303 8304 8305 8306 8307 8308 8309 8310 8311 8312 8313 8314 8315 8316 8317 8318 8319 8320 8321 8322 8323 8324 8325 8326 8327 8328 8329 8330 8331 8332 8333 8334 8335 8336 8337 8338 8339 8340 8341 8342 8343 8344 8345 8346 8347 8348 8349 8350 8351 8352 8353 8354 8355 8356 8357 8358 8359 8360 8361 8362 8363 8364 8365 8366 8367 8368 8369 8370 8371 8372 8373 8374 8375 8376 8377 8378 8379 8380 8381 8382 8383 8384 8385 8386 8387 8388 8389 8390 8391 8392 8393 8394 8395 8396 8397 8398 8399 8400 8401 8402 8403 8404 8405 8406 8407 8408 8409 8410 8411 8412 8413 8414 8415 8416 8417 8418 8419 8420 8421 8422 8423 8424 8425 8426 8427 8428 8429 8430 8431 8432 8433 8434 8435 8436 8437 8438 8439 8440 8441 8442 8443 8444 8445 8446 8447 8448 8449 8450 8451 8452 8453 8454 8455 8456 8457 8458 8459 8460 8461 8462 8463 8464 8465 8466 8467 8468 8469 8470 8471 8472 8473 8474 8475 8476 8477 8478 8479 8480 8481 8482 8483 8484 8485 8486 8487 8488 8489 8490 8491 8492 8493 8494 8495 8496 8497 8498 8499 8500 8501 8502 8503 8504 8505 8506 8507 8508 8509 8510 8511 8512 8513 8514 8515 8516 8517 8518 8519 8520 8521 8522 8523 8524 8525 8526 8527 8528 8529 8530 8531 8532 8533 8534 8535 8536 8537 8538 8539 8540 8541 8542 8543 8544 8545 8546 8547 8548 8549 8550 8551 8552 8553 8554 8555 8556 8557 8558 8559 8560 8561 8562 8563 8564 8565 8566 8567 8568 8569 8570 8571 8572 8573 8574 8575 8576 8577 8578 8579 8580 8581 8582 8583 8584 8585 8586 8587 8588 8589 8590 8591 8592 8593 8594 8595 8596 8597 8598 8599 8600 8601 8602 8603 8604 8605 8606 8607 8608 8609 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 8634 8635 8636 8637 8638 8639 8640 8641 8642 8643 8644 8645 8646 8647 8648 8649 8650 8651 8652 8653 8654 8655 8656 8657 8658 8659 8660 8661 8662 8663 8664 8665 8666 8667 8668 8669 8670 8671 8672 8673 8674 8675 8676 8677 8678 8679 8680 8681 8682 8683 8684 8685 8686 8687 8688 8689 8690 8691 8692 8693 8694 8695 8696 8697 8698 8699 8700 8701 8702 8703 8704 8705 8706 8707 8708 8709 8710 8711 8712 8713 8714 8715 8716 8717 8718 8719 8720 8721 8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 8733 8734 8735 8736 8737 8738 8739 8740 8741 8742 8743 8744 8745 8746 8747 8748 8749 8750 8751 8752 8753 8754 8755 8756 8757 8758 8759 8760 8761 8762 8763 8764 8765 8766 8767 8768 8769 8770 8771 8772 8773 8774 8775 8776 8777 8778 8779 8780 8781 8782 8783 8784 8785 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 8796 8797 8798 8799 8800 8801 8802 8803 8804 8805 8806 8807 8808 8809 8810 8811 8812 8813 8814 8815 8816 8817 8818 8819 8820 8821 8822 8823 8824 8825 8826 8827 8828 8829 8830 8831 8832 8833 8834 8835 8836 8837 8838 8839 8840 8841 8842 8843 8844 8845 8846 8847 8848 8849 8850 8851 8852 8853 8854 8855 8856 8857 8858 8859 8860 8861 8862 8863 8864 8865 8866 8867 8868 8869 8870 8871 8872 8873 8874 8875 8876 8877 8878 8879 8880 8881 8882 8883 8884 8885 8886 8887 8888 8889 8890 8891 8892 8893 8894 8895 8896 8897 8898 8899 8900 8901 8902 8903 8904 8905 8906 8907 8908 8909 8910 8911 8912 8913 8914 8915 8916 8917 8918 8919 8920 8921 8922 8923 8924 8925 8926 8927 8928 8929 8930 8931 8932 8933 8934 8935 8936 8937 8938 8939 8940 8941 8942 8943 8944 8945 8946 8947 8948 8949 8950 8951 8952 8953 8954 8955 8956 8957 8958 8959 8960 8961 8962 8963 8964 8965 8966 8967 8968 8969 8970 8971 8972 8973 8974 8975 8976 8977 8978 8979 8980 8981 8982 8983 8984 8985 8986 8987 8988 8989 8990 8991 8992 8993 8994 8995 8996 8997 8998 8999 9000 9001 9002 9003 9004 9005 9006 9007 9008 9009 9010 9011 9012 9013 9014 9015 9016 9017 9018 9019 9020 9021 9022 9023 9024 9025 9026 9027 9028 9029 9030 9031 9032 9033 9034 9035 9036 9037 9038 9039 9040 9041 9042 9043 9044 9045 9046 9047 9048 9049 9050 9051 9052 9053 9054 9055 9056 9057 9058 9059 9060 9061 9062 9063 9064 9065 9066 9067 9068 9069 9070 9071 9072 9073 9074 9075 9076 9077 9078 9079 9080 9081 9082 9083 9084 9085 9086 9087 9088 9089 9090 9091 9092 9093 9094 9095 9096 9097 9098 9099 9100 9101 9102 9103 9104 9105 9106 9107 9108 9109 9110 9111 9112 9113 9114 9115 9116 9117 9118 9119 9120 9121 9122 9123 9124 9125 9126 9127 9128 9129 9130 9131 9132 9133 9134 9135 9136 9137 9138 9139 9140 9141 9142 9143 9144 9145 9146 9147 9148 9149 9150 9151 9152 9153 9154 9155 9156 9157 9158 9159 9160 9161 9162 9163 9164 9165 9166 9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 9178 9179 9180 9181 9182 9183 9184 9185 9186 9187 9188 9189 9190 9191 9192 9193 9194 9195 9196 9197 9198 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208 9209 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 9223 9224 9225 9226 9227 9228 9229 9230 9231 9232 9233 9234 9235 9236 9237 9238 9239 9240 9241 9242 9243 9244 9245 9246 9247 9248 9249 9250 9251 9252 9253 9254 9255 9256 9257 9258 9259 9260 9261 9262 9263 9264 9265 9266 9267 9268 9269 9270 9271 9272 9273 9274 9275 9276 9277 9278 9279 9280 9281 9282 9283 9284 9285 9286 9287 9288 9289 9290 9291 9292 9293 9294 9295 9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 9342 9343 9344 9345 9346 9347 9348 9349 9350 9351 9352 9353 9354 9355 9356 9357 9358 9359 9360 9361 9362 9363 9364 9365 9366 9367 9368 9369 9370 9371 9372 9373 9374 9375 9376 9377 9378 9379 9380 9381 9382 9383 9384 9385 9386 9387 9388 9389 9390 9391 9392 9393 9394 9395 9396 9397 9398 9399 9400 9401 9402 9403 9404 9405 9406 9407 9408 9409 9410 9411 9412 9413 9414 9415 9416 9417 9418 9419 9420 9421 9422 9423 9424 9425 9426 9427 9428 9429 9430 9431 9432 9433 9434 9435 9436 9437 9438 9439 9440 9441 9442 9443 9444 9445 9446 9447 9448 9449 9450 9451 9452 9453 9454 9455 9456 9457 9458 9459 9460 9461 9462 9463 9464 9465 9466 9467 9468 9469 9470 9471 9472 9473 9474 9475 9476 9477 9478 9479 9480 9481 9482 9483 9484 9485 9486 9487 9488 9489 9490 9491 9492 9493 9494 9495 9496 9497 9498 9499 9500 9501 9502 9503 9504 9505 9506 9507 9508 9509 9510 9511 9512 9513 9514 9515 9516 9517 9518 9519 9520 9521 9522 9523 9524 9525 9526 9527 9528 9529 9530 9531 9532 9533 9534 9535 9536 9537 9538 9539 9540 9541 9542 9543 9544 9545 9546 9547 9548 9549 9550 9551 9552 9553 9554 9555 9556 9557 9558 9559 9560 9561 9562 9563 9564 9565 9566 9567 9568 9569 9570 9571 9572 9573 9574 9575 9576 9577 9578 9579 9580 9581 9582 9583 9584 9585 9586 9587 9588 9589 9590 9591 9592 9593 9594 9595 9596 9597 9598 9599 9600 9601 9602 9603 9604 9605 9606 9607 9608 9609 9610 9611 9612 9613 9614 9615 9616 9617 9618 9619 9620 9621 9622 9623 9624 9625 9626 9627 9628 9629 9630 9631 9632 9633 9634 9635 9636 9637 9638 9639 9640 9641 9642 9643 9644 9645 9646 9647 9648 9649 9650 9651 9652 9653 9654 9655 9656 9657 9658 9659 9660 9661 9662 9663 9664 9665 9666 9667 9668 9669 9670 9671 9672 9673 9674 9675 9676 9677 9678 9679 9680 9681 9682 9683 9684 9685 9686 9687 9688 9689 9690 9691 9692 9693 9694 9695 9696 9697 9698 9699 9700 9701 9702 9703 9704 9705 9706 9707 9708 9709 9710 9711 9712 9713 9714 9715 9716 9717 9718 9719 9720 9721 9722 9723 9724 9725 9726 9727 9728 9729 9730 9731 9732 9733 9734 9735 9736 9737 9738 9739 9740 9741 9742 9743 9744 9745 9746 9747 9748 9749 9750 9751 9752 9753 9754 9755 9756 9757 9758 9759 9760 9761 9762 9763 9764 9765 9766 9767 9768 9769 9770 9771 9772 9773 9774 9775 9776 9777 9778 9779 9780 9781 9782 9783 9784 9785 9786 9787 9788 9789 9790 9791 9792 9793 9794 9795 9796 9797 9798 9799 9800 9801 9802 9803 9804 9805 9806 9807 9808 9809 9810 9811 9812 9813 9814 9815 9816 9817 9818 9819 9820 9821 9822 9823 9824 9825 9826 9827 9828 9829 9830 9831 9832 9833 9834 9835 9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 9868 9869 9870 9871 9872 9873 9874 9875 9876 9877 9878 9879 9880 9881 9882 9883 9884 9885 9886 9887 9888 9889 9890 9891 9892 9893 9894 9895 9896 9897 9898 9899 9900 9901 9902 9903 9904 9905 9906 9907 9908 9909 9910 9911 9912 9913 9914 9915 9916 9917 9918 9919 9920 9921 9922 9923 9924 9925 9926 9927 9928 9929 9930 9931 9932 9933 9934 9935 9936 9937 9938 9939 9940 9941 9942 9943 9944 9945 9946 9947 9948 9949 9950 9951 9952 9953 9954 9955 9956 9957 9958 9959 9960 9961 9962 9963 9964 9965 9966 9967 9968 9969 9970 9971 9972 9973 9974 9975 9976 9977 9978 9979 9980 9981 9982 9983 9984 9985 9986 9987 9988 9989 9990 9991 9992 9993 9994 9995 9996 9997 9998 9999 10000 10001 10002 10003 10004 10005 10006 10007 10008 10009 10010 10011 10012 10013 10014 10015 10016 10017 10018 10019 10020 10021 10022 10023 10024 10025 10026 10027 10028 10029 10030 10031 10032 10033 10034 10035 10036 10037 10038 10039 10040 10041 10042 10043 10044 10045 10046 10047 10048 10049 10050 10051 10052 10053 10054 10055 10056 10057 10058 10059 10060 10061 10062 10063 10064 10065 10066 10067 10068 10069 10070 10071 10072 10073 10074 10075 10076 10077 10078 10079 10080 10081 10082 10083 10084 10085 10086 10087 10088 10089 10090 10091 10092 10093 10094 10095 10096 10097 10098 10099 10100 10101 10102 10103 10104 10105 10106 10107 10108 10109 10110 10111 10112 10113 10114 10115 10116 10117 10118 10119 10120 10121 10122 10123 10124 10125 10126 10127 10128 10129 10130 10131 10132 10133 10134 10135 10136 10137 10138 10139 10140 10141 10142 10143 10144 10145 10146 10147 10148 10149 10150 10151 10152 10153 10154 10155 10156 10157 10158 10159 10160 10161 10162 10163 10164 10165 10166 10167 10168 10169 10170 10171 10172 10173 10174 10175 10176 10177 10178 10179 10180 10181 10182 10183 10184 10185 10186 10187 10188 10189 10190 10191 10192 10193 10194 10195 10196 10197 10198 10199 10200 10201 10202 10203 10204 10205 10206 10207 10208 10209 10210 10211 10212 10213 10214 10215 10216 10217 10218 10219 10220 10221 10222 10223 10224 10225 10226 10227 10228 10229 10230 10231 10232 10233 10234 10235 10236 10237 10238 10239 10240 10241 10242 10243 10244 10245 10246 10247 10248 10249 10250 10251 10252 10253 10254 10255 10256 10257 10258 10259 10260 10261 10262 10263 10264 10265 10266 10267 10268 10269 10270 10271 10272 10273 10274 10275 10276 10277 10278 10279 10280 10281 10282 10283 10284 10285 10286 10287 10288 10289 10290 10291 10292 10293 10294 10295 10296 10297 10298 10299 10300 10301 10302 10303 10304 10305 10306 10307 10308 10309 10310 10311 10312 10313 10314 10315 10316 10317 10318 10319 10320 10321 10322 10323 10324 10325 10326 10327 10328 10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 10344 10345 10346 10347 10348 10349 10350 10351 10352 10353 10354 10355 10356 10357 10358 10359 10360 10361 10362 10363 10364 10365 10366 10367 10368 10369 10370 10371 10372 10373 10374 10375 10376 10377 10378 10379 10380 10381 10382 10383 10384 10385 10386 10387 10388 10389 10390 10391 10392 10393 10394 10395 10396 10397 10398 10399 10400 10401 10402 10403 10404 10405 10406 10407 10408 10409 10410 10411 10412 10413 10414 10415 10416 10417 10418 10419 10420 10421 10422 10423 10424 10425 10426 10427 10428 10429 10430 10431 10432 10433 10434 10435 10436 10437 10438 10439 10440 10441 10442 10443 10444 10445 10446 10447 10448 10449 10450 10451 10452 10453 10454 10455 10456 10457 10458 10459 10460 10461 10462 10463 10464 10465 10466 10467 10468 10469 10470 10471 10472 10473 10474 10475 10476 10477 10478 10479 10480 10481 10482 10483 10484 10485 10486 10487 10488 10489 10490 10491 10492 10493 10494 10495 10496 10497 10498 10499 10500 10501 10502 10503 10504 10505 10506 10507 10508 10509 10510 10511 10512 10513 10514 10515 10516 10517 10518 10519 10520 10521 10522 10523 10524 10525 10526 10527 10528 10529 10530 10531 10532 10533 10534 10535 10536 10537 10538 10539 10540 10541 10542 10543 10544 10545 10546 10547 10548 10549 10550 10551 10552 10553 10554 10555 10556 10557 10558 10559 10560 10561 10562 10563 10564 10565 10566 10567 10568 10569 10570 10571 10572 10573 10574 10575 10576 10577 10578 10579 10580 10581 10582 10583 10584 10585 10586 10587 10588 10589 10590 10591 10592 10593 10594 10595 10596 10597 10598 10599 10600 10601 10602 10603 10604 10605 10606 10607 10608 10609 10610 10611 10612 10613 10614 10615 10616 10617 10618 10619 10620 10621 10622 10623 10624 10625 10626 10627 10628 10629 10630 10631 10632 10633 10634 10635 10636 10637 10638 10639 10640 10641 10642 10643 10644 10645 10646 10647 10648 10649 10650 10651 10652 10653 10654 10655 10656 10657 10658 10659 10660 10661 10662 10663 10664 10665 10666 10667 10668 10669 10670 10671 10672 10673 10674 10675 10676 10677 10678 10679 10680 10681 10682 10683 10684 10685 10686 10687 10688 10689 10690 10691 10692 10693 10694 10695 10696 10697 10698 10699 10700 10701 10702 10703 10704 10705 10706 10707 10708 10709 10710 10711 10712 10713 10714 10715 10716 10717 10718 10719 10720 10721 10722 10723 10724 10725 10726 10727 10728 10729 10730 10731 10732 10733 10734 10735 10736 10737 10738 10739 10740 10741 10742 10743 10744 10745 10746 10747 10748 10749 10750 10751 10752 10753 10754 10755 10756 10757 10758 10759 10760 10761 10762 10763 10764 10765 10766 10767 10768 10769 10770 10771 10772 10773 10774 10775 10776 10777 10778 10779 10780 10781 10782 10783 10784 10785 10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 10798 10799 10800 10801 10802 10803 10804 10805 10806 10807 10808 10809 10810 10811 10812 10813 10814 10815 10816 10817 10818 10819 10820 10821 10822 10823 10824 10825 10826 10827 10828 10829 10830 10831 10832 10833 10834 10835 10836 10837 10838 10839 10840 10841 10842 10843 10844 10845 10846 10847 10848 10849 10850 10851 10852 10853 10854 10855 10856 10857 10858 10859 10860 10861 10862 10863 10864 10865 10866 10867 10868 10869 10870 10871 10872 10873 10874 10875 10876 10877 10878 10879 10880 10881 10882 10883 10884 10885 10886 10887 10888 10889 10890 10891 10892 10893 10894 10895 10896 10897 10898 10899 10900 10901 10902 10903 10904 10905 10906 10907 10908 10909 10910 10911 10912 10913 10914 10915 10916 10917 10918 10919 10920 10921 10922 10923 10924 10925 10926 10927 10928 10929 10930 10931 10932 10933 10934 10935 10936 10937 10938 10939 10940 10941 10942 10943 10944 10945 10946 10947 10948 10949 10950 10951 10952 10953 10954 10955 10956 10957 10958 10959 10960 10961 10962 10963 10964 10965 10966 10967 10968 10969 10970 10971 10972 10973 10974 10975 10976 10977 10978 10979 10980 10981 10982 10983 10984 10985 10986 10987 10988 10989 10990 10991 10992 10993 10994 10995 10996 10997 10998 10999 11000 11001 11002 11003 11004 11005 11006 11007 11008 11009 11010 11011 11012 11013 11014 11015 11016 11017 11018 11019 11020 11021 11022 11023 11024 11025 11026 11027 11028 11029 11030 11031 11032 11033 11034 11035 11036 11037 11038 11039 11040 11041 11042 11043 11044 11045 11046 11047 11048 11049 11050 11051 11052 11053 11054 11055 11056 11057 11058 11059 11060 11061 11062 11063 11064 11065 11066 11067 11068 11069 11070 11071 11072 11073 11074 11075 11076 11077 11078 11079 11080 11081 11082 11083 11084 11085 11086 11087 11088 11089 11090 11091 11092 11093 11094 11095 11096 11097 11098 11099 11100 11101 11102 11103 11104 11105 11106 11107 11108 11109 11110 11111 11112 11113 11114 11115 11116 11117 11118 11119 11120 11121 11122 11123 11124 11125 11126 11127 11128 11129 11130 11131 11132 11133 11134 11135 11136 11137 11138 11139 11140 11141 11142 11143 11144 11145 11146 11147 11148 11149 11150 11151 11152 11153 11154 11155 11156 11157 11158 11159 11160 11161 11162 11163 11164 11165 11166 11167 11168 11169 11170 11171 11172 11173 11174 11175 11176 11177 11178 11179 11180 11181 11182 11183 11184 11185 11186 11187 11188 11189 11190 11191 11192 11193 11194 11195 11196 11197 11198 11199 11200 11201 11202 11203 11204 11205 11206 11207 11208 11209 11210 11211 11212 11213 11214 11215 11216 11217 11218 11219 11220 11221 11222 11223 11224 11225 11226 11227 11228 11229 11230 11231 11232 11233 11234 11235 11236 11237 11238 11239 11240 11241 11242 11243 11244 11245 11246 11247 11248 11249 11250 11251 11252 11253 11254 11255 11256 11257 11258 11259 11260 11261 11262 11263 11264 11265 11266 11267 11268 11269 11270 11271 11272 11273 11274 11275 11276 11277 11278 11279 11280 11281 11282 11283 11284 11285 11286 11287 11288 11289 11290 11291 11292 11293 11294 11295 11296 11297 11298 11299 11300 11301 11302 11303 11304 11305 11306 11307 11308 11309 11310 11311 11312 11313 11314 11315 11316 11317 11318 11319 11320 11321 11322 11323 11324 11325 11326 11327 11328 11329 11330 11331 11332 11333 11334 11335 11336 11337 11338 11339 11340 11341 11342 11343 11344 11345 11346 11347 11348 11349 11350 11351 11352 11353 11354 11355 11356 11357 11358 11359 11360 11361 11362 11363 11364 11365 11366 11367 11368 11369 11370 11371 11372 11373 11374 11375 11376 11377 11378 11379 11380 11381 11382 11383 11384 11385 11386 11387 11388 11389 11390 11391 11392 11393 11394 11395 11396 11397 11398 11399 11400 11401 11402 11403 11404 11405 11406 11407 11408 11409 11410 11411 11412 11413 11414 11415 11416 11417 11418 11419 11420 11421 11422 11423 11424 11425 11426 11427 11428 11429 11430 11431 11432 11433 11434 11435 11436 11437 11438 11439 11440 11441 11442 11443 11444 11445 11446 11447 11448 11449 11450 11451 11452 11453 11454 11455 11456 11457 11458 11459 11460 11461 11462 11463 11464 11465 11466 11467 11468 11469 11470 11471 11472 11473 11474 11475 11476 11477 11478 11479 11480 11481 11482 11483 11484 11485 11486 11487 11488 11489 11490 11491 11492 11493 11494 11495 11496 11497 11498 11499 11500 11501 11502 11503 11504 11505 11506 11507 11508 11509 11510 11511 11512 11513 11514 11515 11516 11517 11518 11519 11520 11521 11522 11523 11524 11525 11526 11527 11528 11529 11530 11531 11532 11533 11534 11535 11536 11537 11538 11539 11540 11541 11542 11543 11544 11545 11546 11547 11548 11549 11550 11551 11552 11553 11554 11555 11556 11557 11558 11559 11560 11561 11562 11563 11564 11565 11566 11567 11568 11569 11570 11571 11572 11573 11574 11575 11576 11577 11578 11579 11580 11581 11582 11583 11584 11585 11586 11587 11588 11589 11590 11591 11592 11593 11594 11595 11596 11597 11598 11599 11600 11601 11602 11603 11604 11605 11606 11607 11608 11609 11610 11611 11612 11613 11614 11615 11616 11617 11618 11619 11620 11621 11622 11623 11624 11625 11626 11627 11628 11629 11630 11631 11632 11633 11634 11635 11636 11637 11638 11639 11640 11641 11642 11643 11644 11645 11646 11647 11648 11649 11650 11651 11652 11653 11654 11655 11656 11657 11658 11659 11660 11661 11662 11663 11664 11665 11666 11667 11668 11669 11670 11671 11672 11673 11674 11675 11676 11677 11678 11679 11680 11681 11682 11683 11684 11685 11686 11687 11688 11689 11690 11691 11692 11693 11694 11695 11696 11697 11698 11699 11700 11701 11702 11703 11704 11705 11706 11707 11708 11709 11710 11711 11712 11713 11714 11715 11716 11717 11718 11719 11720 11721 11722 11723 11724 11725 11726 11727 11728 11729 11730 11731 11732 11733 11734 11735 11736 11737 11738 11739 11740 11741 11742 11743 11744 11745 11746 11747 11748 11749 11750 11751 11752 11753 11754 11755 11756 11757 11758 11759 11760 11761 11762 11763 11764 11765 11766 11767 11768 11769 11770 11771 11772 11773 11774 11775 11776 11777 11778 11779 11780 11781 11782 11783 11784 11785 11786 11787 11788 11789 11790 11791 11792 11793 11794 11795 11796 11797 11798 11799 11800 11801 11802 11803 11804 11805 11806 11807 11808 11809 11810 11811 11812 11813 11814 11815 11816 11817 11818 11819 11820 11821 11822 11823 11824 11825 11826 11827 11828 11829 11830 11831 11832 11833 11834 11835 11836 11837 11838 11839 11840 11841 11842 11843 11844 11845 11846 11847 11848 11849 11850 11851 11852 11853 11854 11855 11856 11857 11858 11859 11860 11861 11862 11863 11864 11865 11866 11867 11868 11869 11870 11871 11872 11873 11874 11875 11876 11877 11878 11879 11880 11881 11882 11883 11884 11885 11886 11887 11888 11889 11890 11891 11892 11893 11894 11895 11896 11897 11898 11899 11900 11901 11902 11903 11904 11905 11906 11907 11908 11909 11910 11911 11912 11913 11914 11915 11916 11917 11918 11919 11920 11921 11922 11923 11924 11925 11926 11927 11928 11929 11930 11931 11932 11933 11934 11935 11936 11937 11938 11939 11940 11941 11942 11943 11944 11945 11946 11947 11948 11949 11950 11951 11952 11953 11954 11955 11956 11957 11958 11959 11960 11961 11962 11963 11964 11965 11966 11967 11968 11969 11970 11971 11972 11973 11974 11975 11976 11977 11978 11979 11980 11981 11982 11983 11984 11985 11986 11987 11988 11989 11990 11991 11992 11993 11994 11995 11996 11997 11998 11999 12000 12001 12002 12003 12004 12005 12006 12007 12008 12009 12010 12011 12012 12013 12014 12015 12016 12017 12018 12019 12020 12021 12022 12023 12024 12025 12026 12027 12028 12029 12030 12031 12032 12033 12034 12035 12036 12037 12038 12039 12040 12041 12042 12043 12044 12045 12046 12047 12048 12049 12050 12051 12052 12053 12054 12055 12056 12057 12058 12059 12060 12061 12062 12063 12064 12065 12066 12067 12068 12069 12070 12071 12072 12073 12074 12075 12076 12077 12078 12079 12080 12081 12082 12083 12084 12085 12086 12087 12088 12089 12090 12091 12092 12093 12094 12095 12096 12097 12098 12099 12100 12101 12102 12103 12104 12105 12106 12107 12108 12109 12110 12111 12112 12113 12114 12115 12116 12117 12118 12119 12120 12121 12122 12123 12124 12125 12126 12127 12128 12129 12130 12131 12132 12133 12134 12135 12136 12137 12138 12139 12140 12141 12142 12143 12144 12145 12146 12147 12148 12149 12150 12151 12152 12153 12154 12155 12156 12157 12158 12159 12160 12161 12162 12163 12164 12165 12166 12167 12168 12169 12170 12171 12172 12173 12174 12175 12176 12177 12178 12179 12180 12181 12182 12183 12184 12185 12186 12187 12188 12189 12190 12191 12192 12193 12194 12195 12196 12197 12198 12199 12200 12201 12202 12203 12204 12205 12206 12207 12208 12209 12210 12211 12212 12213 12214 12215 12216 12217 12218 12219 12220 12221 12222 12223 12224 12225 12226 12227 12228 12229 12230 12231 12232 12233 12234 12235 12236 12237 12238 12239 12240 12241 12242 12243 12244 12245 12246 12247 12248 12249 12250 12251 12252 12253 12254 12255 12256 12257 12258 12259 12260 12261 12262 12263 12264 12265 12266 12267 12268 12269 12270 12271 12272 12273 12274 12275 12276 12277 12278 12279 12280 12281 12282 12283 12284 12285 12286 12287 12288 12289 12290 12291 12292 12293 12294 12295 12296 12297 12298 12299 12300 12301 12302 12303 12304 12305 12306 12307 12308 12309 12310 12311 12312 12313 12314 12315 12316 12317 12318 12319 12320 12321 12322 12323 12324 12325 12326 12327 12328 12329 12330 12331 12332 12333 12334 12335 12336 12337 12338 12339 12340 12341 12342 12343 12344 12345 12346 12347 12348 12349 12350 12351 12352 12353 12354 12355 12356 12357 12358 12359 12360 12361 12362 12363 12364 12365 12366 12367 12368 12369 12370 12371 12372 12373 12374 12375 12376 12377 12378 12379 12380 12381 12382 12383 12384 12385 12386 12387 12388 12389 12390 12391 12392 12393 12394 12395 12396 12397 12398 12399 12400 12401 12402 12403 12404 12405 12406 12407 12408 12409 12410 12411 12412 12413 12414 12415 12416 12417 12418 12419 12420 12421 12422 12423 12424 12425 12426 12427 12428 12429 12430 12431 12432 12433 12434 12435 12436 12437 12438 12439 12440 12441 12442 12443 12444 12445 12446 12447 12448 12449 12450 12451 12452 12453 12454 12455 12456 12457 12458 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 12469 12470 12471 12472 12473 12474 12475 12476 12477 12478 12479 12480 12481 12482 12483 12484 12485 12486 12487 12488 12489 12490 12491 12492 12493 12494 12495 12496 12497 12498 12499 12500 12501 12502 12503 12504 12505 12506 12507 12508 12509 12510 12511 12512 12513 12514 12515 12516 12517 12518 12519 12520 12521 12522 12523 12524 12525 12526 12527 12528 12529 12530 12531 12532 12533 12534 12535 12536 12537 12538 12539 12540 12541 12542 12543 12544 12545 12546 12547 12548 12549 12550 12551 12552 12553 12554 12555 12556 12557 12558 12559 12560 12561 12562 12563 12564 12565 12566 12567 12568 12569 12570 12571 12572 12573 12574 12575 12576 12577 12578 12579 12580 12581 12582 12583 12584 12585 12586 12587 12588 12589 12590 12591 12592 12593 12594 12595 12596 12597 12598 12599 12600 12601 12602 12603 12604 12605 12606 12607 12608 12609 12610 12611 12612 12613 12614 12615 12616 12617 12618 12619 12620 12621 12622 12623 12624 12625 12626 12627 12628 12629 12630 12631 12632 12633 12634 12635 12636 12637 12638 12639 12640 12641 12642 12643 12644 12645 12646 12647 12648 12649 12650 12651 12652 12653 12654 12655 12656 12657 12658 12659 12660 12661 12662 12663 12664 12665 12666 12667 12668 12669 12670 12671 12672 12673 12674 12675 12676 12677 12678 12679 12680 12681 12682 12683 12684 12685 12686 12687 12688 12689 12690 12691 12692 12693 12694 12695 12696 12697 12698 12699 12700 12701 12702 12703 12704 12705 12706 12707 12708 12709 12710 12711 12712 12713 12714 12715 12716 12717 12718 12719 12720 12721 12722 12723 12724 12725 12726 12727 12728 12729 12730 12731 12732 12733 12734 12735 12736 12737 12738 12739 12740 12741 12742 12743 12744 12745 12746 12747 12748 12749 12750 12751 12752 12753 12754 12755 12756 12757 12758 12759 12760 12761 12762 12763 12764 12765 12766 12767 12768 12769 12770 12771 12772 12773 12774 12775 12776 12777 12778 12779 12780 12781 12782 12783 12784 12785 12786 12787 12788 12789 12790 12791 12792 12793 12794 12795 12796 12797 12798 12799 12800 12801 12802 12803 12804 12805 12806 12807 12808 12809 12810 12811 12812 12813 12814 12815 12816 12817 12818 12819 12820 12821 12822 12823 12824 12825 12826 12827 12828 12829 12830 12831 12832 12833 12834 12835 12836 12837 12838 12839 12840 12841 12842 12843 12844 12845 12846 12847 12848 12849 12850 12851 12852 12853 12854 12855 12856 12857 12858 12859 12860 12861 12862 12863 12864 12865 12866 12867 12868 12869 12870 12871 12872 12873 12874 12875 12876 12877 12878 12879 12880 12881 12882 12883 12884 12885 12886 12887 12888 12889 12890 12891 12892 12893 12894 12895 12896 12897 12898 12899 12900 12901 12902 12903 12904 12905 12906 12907 12908 12909 12910 12911 12912 12913 12914 12915 12916 12917 12918 12919 12920 12921 12922 12923 12924 12925 12926 12927 12928 12929 12930 12931 12932 12933 12934 12935 12936 12937 12938 12939 12940 12941 12942 12943 12944 12945 12946 12947 12948 12949 12950 12951 12952 12953 12954 12955 12956 12957 12958 12959 12960 12961 12962 12963 12964 12965 12966 12967 12968 12969 12970 12971 12972 12973 12974 12975 12976 12977 12978 12979 12980 12981 12982 12983 12984 12985 12986 12987 12988 12989 12990 12991 12992 12993 12994 12995 12996 12997 12998 12999 13000 13001 13002 13003 13004 13005 13006 13007 13008 13009 13010 13011 13012 13013 13014 13015 13016 13017 13018 13019 13020 13021 13022 13023 13024 13025 13026 13027 13028 13029 13030 13031 13032 13033 13034 13035 13036 13037 13038 13039 13040 13041 13042 13043 13044 13045 13046 13047 13048 13049 13050 13051 13052 13053 13054 13055 13056 13057 13058 13059 13060 13061 13062 13063 13064 13065 13066 13067 13068 13069 13070 13071 13072 13073 13074 13075 13076 13077 13078 13079 13080 13081 13082 13083 13084 13085 13086 13087 13088 13089 13090 13091 13092 13093 13094 13095 13096 13097 13098 13099 13100 13101 13102 13103 13104 13105 13106 13107 13108 13109 13110 13111 13112 13113 13114 13115 13116 13117 13118 13119 13120 13121 13122 13123 13124 13125 13126 13127 13128 13129 13130 13131 13132 13133 13134 13135 13136 13137 13138 13139 13140 13141 13142 13143 13144 13145 13146 13147 13148 13149 13150 13151 13152 13153 13154 13155 13156 13157 13158 13159 13160 13161 13162 13163 13164 13165 13166 13167 13168 13169 13170 13171 13172 13173 13174 13175 13176 13177 13178 13179 13180 13181 13182 13183 13184 13185 13186 13187 13188 13189 13190 13191 13192 13193 13194 13195 13196 13197 13198 13199 13200 13201 13202 13203 13204 13205 13206 13207 13208 13209 13210 13211 13212 13213 13214 13215 13216 13217 13218 13219 13220 13221 13222 13223 13224 13225 13226 13227 13228 13229 13230 13231 13232 13233 13234 13235 13236 13237 13238 13239 13240 13241 13242 13243 13244 13245 13246 13247 13248 13249 13250 13251 13252 13253 13254 13255 13256 13257 13258 13259 13260 13261 13262 13263 13264 13265 13266 13267 13268 13269 13270 13271 13272 13273 13274 13275 13276 13277 13278 13279 13280 13281 13282 13283 13284 13285 13286 13287 13288 13289 13290 13291 13292 13293 13294 13295 13296 13297 13298 13299 13300 13301 13302 13303 13304 13305 13306 13307 13308 13309 13310 13311 13312 13313 13314 13315 13316 13317 13318 13319 13320 13321 13322 13323 13324 13325 13326 13327 13328 13329 13330 13331 13332 13333 13334 13335 13336 13337 13338 13339 13340 13341 13342 13343 13344 13345 13346 13347 13348 13349 13350 13351 13352 13353 13354 13355 13356 13357 13358 13359 13360 13361 13362 13363 13364 13365 13366 13367 13368 13369 13370 13371 13372 13373 13374 13375 13376 13377 13378 13379 13380 13381 13382 13383 13384 13385 13386 13387 13388 13389 13390 13391 13392 13393 13394 13395 13396 13397 13398 13399 13400 13401 13402 13403 13404 13405 13406 13407 13408 13409 13410 13411 13412 13413 13414 13415 13416 13417 13418 13419 13420 13421 13422 13423 13424 13425 13426 13427 13428 13429 13430 13431 13432 13433 13434 13435 13436 13437 13438 13439 13440 13441 13442 13443 13444 13445 13446 13447 13448 13449 13450 13451 13452 13453 13454 13455 13456 13457 13458 13459 13460 13461 13462 13463 13464 13465 13466 13467 13468 13469 13470 13471 13472 13473 13474 13475 13476 13477 13478 13479 13480 13481 13482 13483 13484 13485 13486 13487 13488 13489 13490 13491 13492 13493 13494 13495 13496 13497 13498 13499 13500 13501 13502 13503 13504 13505 13506 13507 13508 13509 13510 13511 13512 13513 13514 13515 13516 13517 13518 13519 13520 13521 13522 13523 13524 13525 13526 13527 13528 13529 13530 13531 13532 13533 13534 13535 13536 13537 13538 13539 13540 13541 13542 13543 13544 13545 13546 13547 13548 13549 13550 13551 13552 13553 13554 13555 13556 13557 13558 13559 13560 13561 13562 13563 13564 13565 13566 13567 13568 13569 13570 13571 13572 13573 13574 13575 13576 13577 13578 13579 13580 13581 13582 13583 13584 13585 13586 13587 13588 13589 13590 13591 13592 13593 13594 13595 13596 13597 13598 13599 13600 13601 13602 13603 13604 13605 13606 13607 13608 13609 13610 13611 13612 13613 13614 13615 13616 13617 13618 13619 13620 13621 13622 13623 13624 13625 13626 13627 13628 13629 13630 13631 13632 13633 13634 13635 13636 13637 13638 13639 13640 13641 13642 13643 13644 13645 13646 13647 13648 13649 13650 13651 13652 13653 13654 13655 13656 13657 13658 13659 13660 13661 13662 13663 13664 13665 13666 13667 13668 13669 13670 13671 13672 13673 13674 13675 13676 13677 13678 13679 13680 13681 13682 13683 13684 13685 13686 13687 13688 13689 13690 13691 13692 13693 13694 13695 13696 13697 13698 13699 13700 13701 13702 13703 13704 13705 13706 13707 13708 13709 13710 13711 13712 13713 13714 13715 13716 13717 13718 13719 13720 13721 13722 13723 13724 13725 13726 13727 13728 13729 13730 13731 13732 13733 13734 13735 13736 13737 13738 13739 13740 13741 13742 13743 13744 13745 13746 13747 13748 13749 13750 13751 13752 13753 13754 13755 13756 13757 13758 13759 13760 13761 13762 13763 13764 13765 13766 13767 13768 13769 13770 13771 13772 13773 13774 13775 13776 13777 13778 13779 13780 13781 13782 13783 13784 13785 13786 13787 13788 13789 13790 13791 13792 13793 13794 13795 13796 13797 13798 13799 13800 13801 13802 13803 13804 13805 13806 13807 13808 13809 13810 13811 13812 13813 13814 13815 13816 13817 13818 13819 13820 13821 13822 13823 13824 13825 13826 13827 13828 13829 13830 13831 13832 13833 13834 13835 13836 13837 13838 13839 13840 13841 13842 13843 13844 13845 13846 13847 13848 13849 13850 13851 13852 13853 13854 13855 13856 13857 13858 13859 13860 13861 13862 13863 13864 13865 13866 13867 13868 13869 13870 13871 13872 13873 13874 13875 13876 13877 13878 13879 13880 13881 13882 13883 13884 13885 13886 13887 13888 13889 13890 13891 13892 13893 13894 13895 13896 13897 13898 13899 13900 13901 13902 13903 13904 13905 13906 13907 13908 13909 13910 13911 13912 13913 13914 13915 13916 13917 13918 13919 13920 13921 13922 13923 13924 13925 13926 13927 13928 13929 13930 13931 13932 13933 13934 13935 13936 13937 13938 13939 13940 13941 13942 13943 13944 13945 13946 13947 13948 13949 13950 13951 13952 13953 13954 13955 13956 13957 13958 13959 13960 13961 13962 13963 13964 13965 13966 13967 13968 13969 13970 13971 13972 13973 13974 13975 13976 13977 13978 13979 13980 13981 13982 13983 13984 13985 13986 13987 13988 13989 13990 13991 13992 13993 13994 13995 13996 13997 13998 13999 14000 14001 14002 14003 14004 14005 14006 14007 14008 14009 14010 14011 14012 14013 14014 14015 14016 14017 14018 14019 14020 14021 14022 14023 14024 14025 14026 14027 14028 14029 14030 14031 14032 14033 14034 14035 14036 14037 14038 14039 14040 14041 14042 14043 14044 14045 14046 14047 14048 14049 14050 14051 14052 14053 14054 14055 14056 14057 14058 14059 14060 14061 14062 14063 14064 14065 14066 14067 14068 14069 14070 14071 14072 14073 14074 14075 14076 14077 14078 14079 14080 14081 14082 14083 14084 14085 14086 14087 14088 14089 14090 14091 14092 14093 14094 14095 14096 14097 14098 14099 14100 14101 14102 14103 14104 14105 14106 14107 14108 14109 14110 14111 14112 14113 14114 14115 14116 14117 14118 14119 14120 14121 14122 14123 14124 14125 14126 14127 14128 14129 14130 14131 14132 14133 14134 14135 14136 14137 14138 14139 14140 14141 14142 14143 14144 14145 14146 14147 14148 14149 14150 14151 14152 14153 14154 14155 14156 14157 14158 14159 14160 14161 14162 14163 14164 14165 14166 14167 14168 14169 14170 14171 14172 14173 14174 14175 14176 14177 14178 14179 14180 14181 14182 14183 14184 14185 14186 14187 14188 14189 14190 14191 14192 14193 14194 14195 14196 14197 14198 14199 14200 14201 14202 14203 14204 14205 14206 14207 14208 14209 14210 14211 14212 14213 14214 14215 14216 14217 14218 14219 14220 14221 14222 14223 14224 14225 14226 14227 14228 14229 14230 14231 14232 14233 14234 14235 14236 14237 14238 14239 14240 14241 14242 14243 14244 14245 14246 14247 14248 14249 14250 14251 14252 14253 14254 14255 14256 14257 14258 14259 14260 14261 14262 14263 14264 14265 14266 14267 14268 14269 14270 14271 14272 14273 14274 14275 14276 14277 14278 14279 14280 14281 14282 14283 14284 14285 14286 14287 14288 14289 14290 14291 14292 14293 14294 14295 14296 14297 14298 14299 14300 14301 14302 14303 14304 14305 14306 14307 14308 14309 14310 14311 14312 14313 14314 14315 14316 14317 14318 14319 14320 14321 14322 14323 14324 14325 14326 14327 14328 14329 14330 14331 14332 14333 14334 14335 14336 14337 14338 14339 14340 14341 14342 14343 14344 14345 14346 14347 14348 14349 14350 14351 14352 14353 14354 14355 14356 14357 14358 14359 14360 14361 14362 14363 14364 14365 14366 14367 14368 14369 14370 14371 14372 14373 14374 14375 14376 14377 14378 14379 14380 14381 14382 14383 14384 14385 14386 14387 14388 14389 14390 14391 14392 14393 14394 14395 14396 14397 14398 14399 14400 14401 14402 14403 14404 14405 14406 14407 14408 14409 14410 14411 14412 14413 14414 14415 14416 14417 14418 14419 14420 14421 14422 14423 14424 14425 14426 14427 14428 14429 14430 14431 14432 14433 14434 14435 14436 14437 14438 14439 14440 14441 14442 14443 14444 14445 14446 14447 14448 14449 14450 14451 14452 14453 14454 14455 14456 14457 14458 14459 14460 14461 14462 14463 14464 14465 14466 14467 14468 14469 14470 14471 14472 14473 14474 14475 14476 14477 14478 14479 14480 14481 14482 14483 14484 14485 14486 14487 14488 14489 14490 14491 14492 14493 14494 14495 14496 14497 14498 14499 14500 14501 14502 14503 14504 14505 14506 14507 14508 14509 14510 14511 14512 14513 14514 14515 14516 14517 14518 14519 14520 14521 14522 14523 14524 14525 14526 14527 14528 14529 14530 14531 14532 14533 14534 14535 14536 14537 14538 14539 14540 14541 14542 14543 14544 14545 14546 14547 14548 14549 14550 14551 14552 14553 14554 14555 14556 14557 14558 14559 14560 14561 14562 14563 14564 14565 14566 14567 14568 14569 14570 14571 14572 14573 14574 14575 14576 14577 14578 14579 14580 14581 14582 14583 14584 14585 14586 14587 14588 14589 14590 14591 14592 14593 14594 14595 14596 14597 14598 14599 14600 14601 14602 14603 14604 14605 14606 14607 14608 14609 14610 14611 14612 14613 14614 14615 14616 14617 14618 14619 14620 14621 14622 14623 14624 14625 14626 14627 14628 14629 14630 14631 14632 14633 14634 14635 14636 14637 14638 14639 14640 14641 14642 14643 14644 14645 14646 14647 14648 14649 14650 14651 14652 14653 14654 14655 14656 14657 14658 14659 14660 14661 14662 14663 14664 14665 14666 14667 14668 14669 14670 14671 14672 14673 14674 14675 14676 14677 14678 14679 14680 14681 14682 14683 14684 14685 14686 14687 14688 14689 14690 14691 14692 14693 14694 14695 14696 14697 14698 14699 14700 14701 14702 14703 14704 14705 14706 14707 14708 14709 14710 14711 14712 14713 14714 14715 14716 14717 14718 14719 14720 14721 14722 14723 14724 14725 14726 14727 14728 14729 14730 14731 14732 14733 14734 14735 14736 14737 14738 14739 14740 14741 14742 14743 14744 14745 14746 14747 14748 14749 14750 14751 14752 14753 14754 14755 14756 14757 14758 14759 14760 14761 14762 14763 14764 14765 14766 14767 14768 14769 14770 14771 14772 14773 14774 14775 14776 14777 14778 14779 14780 14781 14782 14783 14784 14785 14786 14787 14788 14789 14790 14791 14792 14793 14794 14795 14796 14797 14798 14799 14800 14801 14802 14803 14804 14805 14806 14807 14808 14809 14810 14811 14812 14813 14814 14815 14816 14817 14818 14819 14820 14821 14822 14823 14824 14825 14826 14827 14828 14829 14830 14831 14832 14833 14834 14835 14836 14837 14838 14839 14840 14841 14842 14843 14844 14845 14846 14847 14848 14849 14850 14851 14852 14853 14854 14855 14856 14857 14858 14859 14860 14861 14862 14863 14864 14865 14866 14867 14868 14869 14870 14871 14872 14873 14874 14875 14876 14877 14878 14879 14880 14881 14882 14883 14884 14885 14886 14887 14888 14889 14890 14891 14892 14893 14894 14895 14896 14897 14898 14899 14900 14901 14902 14903 14904 14905 14906 14907 14908 14909 14910 14911 14912 14913 14914 14915 14916 14917 14918 14919 14920 14921 14922 14923 14924 14925 14926 14927 14928 14929 14930 14931 14932 14933 14934 14935 14936 14937 14938 14939 14940 14941 14942 14943 14944 14945 14946 14947 14948 14949 14950 14951 14952 14953 14954 14955 14956 14957 14958 14959 14960 14961 14962 14963 14964 14965 14966 14967 14968 14969 14970 14971 14972 14973 14974 14975 14976 14977 14978 14979 14980 14981 14982 14983 14984 14985 14986 14987 14988 14989 14990 14991 14992 14993 14994 14995 14996 14997 14998 14999 15000 15001 15002 15003 15004 15005 15006 15007 15008 15009 15010 15011 15012 15013 15014 15015 15016 15017 15018 15019 15020 15021 15022 15023 15024 15025 15026 15027 15028 15029 15030 15031 15032 15033 15034 15035 15036 15037 15038 15039 15040 15041 15042 15043 15044 15045 15046 15047 15048 15049 15050 15051 15052 15053 15054 15055 15056 15057 15058 15059 15060 15061 15062 15063 15064 15065 15066 15067 15068 15069 15070 15071 15072 15073 15074 15075 15076 15077 15078 15079 15080 15081 15082 15083 15084 15085 15086 15087 15088 15089 15090 15091 15092 15093 15094 15095 15096 15097 15098 15099 15100 15101 15102 15103 15104 15105 15106 15107 15108 15109 15110 15111 15112 15113 15114 15115 15116 15117 15118 15119 15120 15121 15122 15123 15124 15125 15126 15127 15128 15129 15130 15131 15132 15133 15134 15135 15136 15137 15138 15139 15140 15141 15142 15143 15144 15145 15146 15147 15148 15149 15150 15151 15152 15153 15154 15155 15156 15157 15158 15159 15160 15161 15162 15163 15164 15165 15166 15167 15168 15169 15170 15171 15172 15173 15174 15175 15176 15177 15178 15179 15180 15181 15182 15183 15184 15185 15186 15187 15188 15189 15190 15191 15192 15193 15194 15195 15196 15197 15198 15199 15200 15201 15202 15203 15204 15205 15206 15207 15208 15209 15210 15211 15212 15213 15214 15215 15216 15217 15218 15219 15220 15221 15222 15223 15224 15225 15226 15227 15228 15229 15230 15231 15232 15233 15234 15235 15236 15237 15238 15239 15240 15241 15242 15243 15244 15245 15246 15247 15248 15249 15250 15251 15252 15253 15254 15255 15256 15257 15258 15259 15260 15261 15262 15263 15264 15265 15266 15267 15268 15269 15270 15271 15272 15273 15274 15275 15276 15277 15278 15279 15280 15281 15282 15283 15284 15285 15286 15287 15288 15289 15290 15291 15292 15293 15294 15295 15296 15297 15298 15299 15300 15301 15302 15303 15304 15305 15306 15307 15308 15309 15310 15311 15312 15313 15314 15315 15316 15317 15318 15319 15320 15321 15322 15323 15324 15325 15326 15327 15328 15329 15330 15331 15332 15333 15334 15335 15336 15337 15338 15339 15340 15341 15342 15343 15344 15345 15346 15347 15348 15349 15350 15351 15352 15353 15354 15355 15356 15357 15358 15359 15360 15361 15362 15363 15364 15365 15366 15367 15368 15369 15370 15371 15372 15373 15374 15375 15376 15377 15378 15379 15380 15381 15382 15383 15384 15385 15386 15387 15388 15389 15390 15391 15392 15393 15394 15395 15396 15397 15398 15399 15400 15401 15402 15403 15404 15405 15406 15407 15408 15409 15410 15411 15412 15413 15414 15415 15416 15417 15418 15419 15420 15421 15422 15423 15424 15425 15426 15427 15428 15429 15430 15431 15432 15433 15434 15435 15436 15437 15438 15439 15440 15441 15442 15443 15444 15445 15446 15447 15448 15449 15450 15451 15452 15453 15454 15455 15456 15457 15458 15459 15460 15461 15462 15463 15464 15465 15466 15467 15468 15469 15470 15471 15472 15473 15474 15475 15476 15477 15478 15479 15480 15481 15482 15483 15484 15485 15486 15487 15488 15489 15490 15491 15492 15493 15494 15495 15496 15497 15498 15499 15500 15501 15502 15503 15504 15505 15506 15507 15508 15509 15510 15511 15512 15513 15514 15515 15516 15517 15518 15519 15520 15521 15522 15523 15524 15525 15526 15527 15528 15529 15530 15531 15532 15533 15534 15535 15536 15537 15538 15539 15540 15541 15542 15543 15544 15545 15546 15547 15548 15549 15550 15551 15552 15553 15554 15555 15556 15557 15558 15559 15560 15561 15562 15563 15564 15565 15566 15567 15568 15569 15570 15571 15572 15573 15574 15575 15576 15577 15578 15579 15580 15581 15582 15583 15584 15585 15586 15587 15588 15589 15590 15591 15592 15593 15594 15595 15596 15597 15598 15599 15600 15601 15602 15603 15604 15605 15606 15607 15608 15609 15610 15611 15612 15613 15614 15615 15616 15617 15618 15619 15620 15621 15622 15623 15624 15625 15626 15627 15628 15629 15630 15631 15632 15633 15634 15635 15636 15637 15638 15639 15640 15641 15642 15643 15644 15645 15646 15647 15648 15649 15650 15651 15652 15653 15654 15655 15656 15657 15658 15659 15660 15661 15662 15663 15664 15665 15666 15667 15668 15669 15670 15671 15672 15673 15674 15675 15676 15677 15678 15679 15680 15681 15682 15683 15684 15685 15686 15687 15688 15689 15690 15691 15692 15693 15694 15695 15696 15697 15698 15699 15700 15701 15702 15703 15704 15705 15706 15707 15708 15709 15710 15711 15712 15713 15714 15715 15716 15717 15718 15719 15720 15721 15722 15723 15724 15725 15726 15727 15728 15729 15730 15731 15732 15733 15734 15735 15736 15737 15738 15739 15740 15741 15742 15743 15744 15745 15746 15747 15748 15749 15750 15751 15752 15753 15754 15755 15756 15757 15758 15759 15760 15761 15762 15763 15764 15765 15766 15767 15768 15769 15770 15771 15772 15773 15774 15775 15776 15777 15778 15779 15780 15781 15782 15783 15784 15785 15786 15787 15788 15789 15790 15791 15792 15793 15794 15795 15796 15797 15798 15799 15800 15801 15802 15803 15804 15805 15806 15807 15808 15809 15810 15811 15812 15813 15814 15815 15816 15817 15818 15819 15820 15821 15822 15823 15824 15825 15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 15842 15843 15844 15845 15846 15847 15848 15849 15850 15851 15852 15853 15854 15855 15856 15857 15858 15859 15860 15861 15862 15863 15864 15865 15866 15867 15868 15869 15870 15871 15872 15873 15874 15875 15876 15877 15878 15879 15880 15881 15882 15883 15884 15885 15886 15887 15888 15889 15890 15891 15892 15893 15894 15895 15896 15897 15898 15899 15900 15901 15902 15903 15904 15905 15906 15907 15908 15909 15910 15911 15912 15913 15914 15915 15916 15917 15918 15919 15920 15921 15922 15923 15924 15925 15926 15927 15928 15929 15930 15931 15932 15933 15934 15935 15936 15937 15938 15939 15940 15941 15942 15943 15944 15945 15946 15947 15948 15949 15950 15951 15952 15953 15954 15955 15956 15957 15958 15959 15960 15961 15962 15963 15964 15965 15966 15967 15968 15969 15970 15971 15972 15973 15974 15975 15976 15977 15978 15979 15980 15981 15982 15983 15984 15985 15986 15987 15988 15989 15990 15991 15992 15993 15994 15995 15996 15997 15998 15999 16000 16001 16002 16003 16004 16005 16006 16007 16008 16009 16010 16011 16012 16013 16014 16015 16016 16017 16018 16019 16020 16021 16022 16023 16024 16025 16026 16027 16028 16029 16030 16031 16032 16033 16034 16035 16036 16037 16038 16039 16040 16041 16042 16043 16044 16045 16046 16047 16048 16049 16050 16051 16052 16053 16054 16055 16056 16057 16058 16059 16060 16061 16062 16063 16064 16065 16066 16067 16068 16069 16070 16071 16072 16073 16074 16075 16076 16077 16078 16079 16080 16081 16082 16083 16084 16085 16086 16087 16088 16089 16090 16091 16092 16093 16094 16095 16096 16097 16098 16099 16100 16101 16102 16103 16104 16105 16106 16107 16108 16109 16110 16111 16112 16113 16114 16115 16116 16117 16118 16119 16120 16121 16122 16123 16124 16125 16126 16127 16128 16129 16130 16131 16132 16133 16134 16135 16136 16137 16138 16139 16140 16141 16142 16143 16144 16145 16146 16147 16148 16149 16150 16151 16152 16153 16154 16155 16156 16157 16158 16159 16160 16161 16162 16163 16164 16165 16166 16167 16168 16169 16170 16171 16172 16173 16174 16175 16176 16177 16178 16179 16180 16181 16182 16183 16184 16185 16186 16187 16188 16189 16190 16191 16192 16193 16194 16195 16196 16197 16198 16199 16200 16201 16202 16203 16204 16205 16206 16207 16208 16209 16210 16211 16212 16213 16214 16215 16216 16217 16218 16219 16220 16221 16222 16223 16224 16225 16226 16227 16228 16229 16230 16231 16232 16233 16234 16235 16236 16237 16238 16239 16240 16241 16242 16243 16244 16245 16246 16247 16248 16249 16250 16251 16252 16253 16254 16255 16256 16257 16258 16259 16260 16261 16262 16263 16264 16265 16266 16267 16268 16269 16270 16271 16272 16273 16274 16275 16276 16277 16278 16279 16280 16281 16282 16283 16284 16285 16286 16287 16288 16289 16290 16291 16292 16293 16294 16295 16296 16297 16298 16299 16300 16301 16302 16303 16304 16305 16306 16307 16308 16309 16310 16311 16312 16313 16314 16315 16316 16317 16318 16319 16320 16321 16322 16323 16324 16325 16326 16327 16328 16329 16330 16331 16332 16333 16334 16335 16336 16337 16338 16339 16340 16341 16342 16343 16344 16345 16346 16347 16348 16349 16350 16351 16352 16353 16354 16355 16356 16357 16358 16359 16360 16361 16362 16363 16364 16365 16366 16367 16368 16369 16370 16371 16372 16373 16374 16375 16376 16377 16378 16379 16380 16381 16382 16383 16384 16385 16386 16387 16388 16389 16390 16391 16392 16393 16394 16395 16396 16397 16398 16399 16400 16401 16402 16403 16404 16405 16406 16407 16408 16409 16410 16411 16412 16413 16414 16415 16416 16417 16418 16419 16420 16421 16422 16423 16424 16425 16426 16427 16428 16429 16430 16431 16432 16433 16434 16435 16436 16437 16438 16439 16440 16441 16442 16443 16444 16445 16446 16447 16448 16449 16450 16451 16452 16453 16454 16455 16456 16457 16458 16459 16460 16461 16462 16463 16464 16465 16466 16467 16468 16469 16470 16471 16472 16473 16474 16475 16476 16477 16478 16479 16480 16481 16482 16483 16484 16485 16486 16487 16488 16489 16490 16491 16492 16493 16494 16495 16496 16497 16498 16499 16500 16501 16502 16503 16504 16505 16506 16507 16508 16509 16510 16511 16512 16513 16514 16515 16516 16517 16518 16519 16520 16521 16522 16523 16524 16525 16526 16527 16528 16529 16530 16531 16532 16533 16534 16535 16536 16537 16538 16539 16540 16541 16542 16543 16544 16545 16546 16547 16548 16549 16550 16551 16552 16553 16554 16555 16556 16557 16558 16559 16560 16561 16562 16563 16564 16565 16566 16567 16568 16569 16570 16571 16572 16573 16574 16575 16576 16577 16578 16579 16580 16581 16582 16583 16584 16585 16586 16587 16588 16589 16590 16591 16592 16593 16594 16595 16596 16597 16598 16599 16600 16601 16602 16603 16604 16605 16606 16607 16608 16609 16610 16611 16612 16613 16614 16615 16616 16617 16618 16619 16620 16621 16622 16623 16624 16625 16626 16627 16628 16629 16630 16631 16632 16633 16634 16635 16636 16637 16638 16639 16640 16641 16642 16643 16644 16645 16646 16647 16648 16649 16650 16651 16652 16653 16654 16655 16656 16657 16658 16659 16660 16661 16662 16663 16664 16665 16666 16667 16668 16669 16670 16671 16672 16673 16674 16675 16676 16677 16678 16679 16680 16681 16682 16683 16684 16685 16686 16687 16688 16689 16690 16691 16692 16693 16694 16695 16696 16697 16698 16699 16700 16701 16702 16703 16704 16705 16706 16707 16708 16709 16710 16711 16712 16713 16714 16715 16716 16717 16718 16719 16720 16721 16722 16723 16724 16725 16726 16727 16728 16729 16730 16731 16732 16733 16734 16735 16736 16737 16738 16739 16740 16741 16742 16743 16744 16745 16746 16747 16748 16749 16750 16751 16752 16753 16754 16755 16756 16757 16758 16759 16760 16761 16762 16763 16764 16765 16766 16767 16768 16769 16770 16771 16772 16773 16774 16775 16776 16777 16778 16779 16780 16781 16782 16783 16784 16785 16786 16787 16788 16789 16790 16791 16792 16793 16794 16795 16796 16797 16798 16799 16800 16801 16802 16803 16804 16805 16806 16807 16808 16809 16810 16811 16812 16813 16814 16815 16816 16817 16818 16819 16820 16821 16822 16823 16824 16825 16826 16827 16828 16829 16830 16831 16832 16833 16834 16835 16836 16837 16838 16839 16840 16841 16842 16843 16844 16845 16846 16847 16848 16849 16850 16851 16852 16853 16854 16855 16856 16857 16858 16859 16860 16861 16862 16863 16864 16865 16866 16867 16868 16869 16870 16871 16872 16873 16874 16875 16876 16877 16878 16879 16880 16881 16882 16883 16884 16885 16886 16887 16888 16889 16890 16891 16892 16893 16894 16895 16896 16897 16898 16899 16900 16901 16902 16903 16904 16905 16906 16907 16908 16909 16910 16911 16912 16913 16914 16915 16916 16917 16918 16919 16920 16921 16922 16923 16924 16925 16926 16927 16928 16929 16930 16931 16932 16933 16934 16935 16936 16937 16938 16939 16940 16941 16942 16943 16944 16945 16946 16947 16948 16949 16950 16951 16952 16953 16954 16955 16956 16957 16958 16959 16960 16961 16962 16963 16964 16965 16966 16967 16968 16969 16970 16971 16972 16973 16974 16975 16976 16977 16978 16979 16980 16981 16982 16983 16984 16985 16986 16987 16988 16989 16990 16991 16992 16993 16994 16995 16996 16997 16998 16999 17000 17001 17002 17003 17004 17005 17006 17007 17008 17009 17010 17011 17012 17013 17014 17015 17016 17017 17018 17019 17020 17021 17022 17023 17024 17025 17026 17027 17028 17029 17030 17031 17032 17033 17034 17035 17036 17037 17038 17039 17040 17041 17042 17043 17044 17045 17046 17047 17048 17049 17050 17051 17052 17053 17054 17055 17056 17057 17058 17059 17060 17061 17062 17063 17064 17065 17066 17067 17068 17069 17070 17071
|
# Generated by configure. Do not edit.
commit f6fd372a8b31a0bebbdfe36090d6ffc7bab9a2f8
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Mon Oct 13 18:54:12 2014 -0700
pattern: Restore dropped inclusion of cairoint.h
Fixes failure in make release-check due by check-preprocessor-syntax.sh
due to requirement that cairoint.h be the first include for source files.
src/cairo-pattern.c | 2 ++
1 file changed, 2 insertions(+)
commit 60ca80b248c2a5ffd0744162af7a1f1df1b04398
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Mon Oct 13 18:45:53 2014 -0700
1.14.0 release
cairo-version.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 3e41f7b38169f7724ed737790a5c0ad68ff80a04
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Mon Oct 13 18:30:23 2014 -0700
NEWS: Flesh out docs for new APIs
NEWS | 13 +++++++++++--
src/cairo-surface.c | 2 +-
2 files changed, 12 insertions(+), 3 deletions(-)
commit 41561c527c72d20f6f09f898f6390a578cfd4095
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Mon Oct 13 18:20:45 2014 -0700
NEWS: Update with latest changes and finalize for release
NEWS | 24 +++++++++++++++++++-----
1 file changed, 19 insertions(+), 5 deletions(-)
commit ab2a7b61d59258b71e1c3256edf2f42ea6cc1eb2
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Oct 12 21:04:37 2014 +1030
pdf: don't use '\' to split strings across multiple lines
The PDF interpreter in my printer does not handle this correctly.
So instead we add the string delimiters '(' and ')' to each line.
src/cairo-pdf-operators.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 45934f69cd158b7bb5632f5e4334a156795147f4
Author: Bill Spitzak <spitzak@gmail.com>
Date: Thu Oct 9 19:46:16 2014 -0700
image: Corrected extents calculations
New implementations of _cairo_pattern_sampled_area and _cairo_pattern_get_extents
which produce a more accurate bounding box. These do not depend on side-effects
of analyze_filter, can handle different horizontal and vertical scales, filters
wider than 1 for down-scaling, and compute a somewhat tighter bounding box
in most cases.
I removed the pad output of _cairo_pattern_analyze_filter as it is unused.
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-composite-rectangles.c | 2 +-
src/cairo-pattern-private.h | 5 +-
src/cairo-pattern.c | 275 +++++++++++++++++++++++---------------
src/cairo-xlib-core-compositor.c | 4 +-
src/cairoint.h | 4 -
src/drm/cairo-drm-i915-shader.c | 39 +-----
6 files changed, 176 insertions(+), 153 deletions(-)
commit 3cd7ed1f320c3ce330da3d3153c39b613e4a5a15
Author: Bill Spitzak <spitzak@gmail.com>
Date: Thu Oct 9 19:46:15 2014 -0700
xcb: Use image fallback for GOOD/BEST filters
It will not use the fallback if the symbols in the previous patch
are turned on.
Also some code rearrangement to make this resemble the xlib version
more and to remove some suspect bugs. In particular meshes should not
work just because the translation is an integer.
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-xcb-surface-render.c | 34 ++++++++++++++++------------------
1 file changed, 16 insertions(+), 18 deletions(-)
commit ca9aee4e62d914b3cd3d6747ff1a4961d9aff8ed
Author: Bill Spitzak <spitzak@gmail.com>
Date: Thu Oct 9 19:46:14 2014 -0700
xcb: Add switches for whether XRender supports GOOD/BEST filtering
Currently these are always false, but if XRender use a pixman that
supports filtering these could be turned on for that version.
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-xcb-connection.c | 10 ++++++++++
src/cairo-xcb-private.h | 6 +++++-
2 files changed, 15 insertions(+), 1 deletion(-)
commit 58728da6eba4d89ba7c4328b22a552af633abb05
Author: Bill Spitzak <spitzak@gmail.com>
Date: Thu Oct 9 19:46:13 2014 -0700
xlib: Use image fallback for GOOD/BEST filters
Fallback is not used if the symbols defined in the previous patch to
indicate if XRender does GOOD/BEST are true.
This patch also includes some changes to take advantage of the fact that
if there is an integer translation analyze_filter will already have set
the filter to NEAREST.
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-xlib-source.c | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)
commit c653dcd3e6ac1cef2440fa0db97a8e5ce30b2a47
Author: Bill Spitzak <spitzak@gmail.com>
Date: Thu Oct 9 19:46:12 2014 -0700
xlib: Add symbols to indicate if XRender supports GOOD/BEST filtering
Currently these are always false, but if some version of xlib uses
a pixman supporting filtering they could be changed to return true
for that version.
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-xlib-private.h | 2 ++
1 file changed, 2 insertions(+)
commit c8b1bf55ad016de0675f4e924fdb8e17051a029c
Author: Bill Spitzak <spitzak@gmail.com>
Date: Thu Oct 9 19:46:11 2014 -0700
image: Move filter decision to _cairo_pattern_analyze_filter
The analysis to deterimine if the GOOD filter can be replaced with
the BILINEAR filter is moved to this function so it can be used
by backends other than the image backend.
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-image-source.c | 22 +++++++++-------------
src/cairo-pattern.c | 36 +++++++++++++++++++++++++++++++++++-
2 files changed, 44 insertions(+), 14 deletions(-)
commit 82cd66f8330da0521c29c003ef0a4bb773d6dbc6
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Thu Oct 9 17:55:09 2014 -0700
test: Update pixman downscaling 95 reference images
The pixman downscaling "95" tests attempt to rescale a 96x96 pixmap to
95x95. Ideally the borders between color areas should be sharp, but for
this use case we allow for 1 pixel of blur between the areas as
acceptable. The choice of what color to use for this blurred region is
not important, and in fact varies from backend to backend.
The old reference images were generated by Krzysztof Kosiński's
downscaling algorithm. These new images are against the algorithms
written by Bill Spitzak.
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
.../pixman-downscale-best-95.image.rgb24.ref.png | Bin 0 -> 659 bytes
.../pixman-downscale-best-95.image16.rgb24.ref.png | Bin 0 -> 648 bytes
.../reference/pixman-downscale-best-95.pdf.ref.png | Bin 0 -> 479 bytes
.../reference/pixman-downscale-best-95.ps2.ref.png | Bin 0 -> 460 bytes
.../reference/pixman-downscale-best-95.ps3.ref.png | Bin 0 -> 460 bytes
...ixman-downscale-best-95.recording.rgb24.ref.png | Bin 0 -> 659 bytes
test/reference/pixman-downscale-best-95.ref.png | Bin 685 -> 771 bytes
.../pixman-downscale-best-95.script.ref.png | Bin 0 -> 772 bytes
.../pixman-downscale-best-95.svg11.ref.png | Bin 0 -> 474 bytes
.../pixman-downscale-best-95.svg12.ref.png | Bin 0 -> 474 bytes
...ixman-downscale-best-95.test-base.rgb24.ref.png | Bin 0 -> 659 bytes
...n-downscale-best-95.test-fallback.rgb24.ref.png | Bin 0 -> 659 bytes
...ixman-downscale-best-95.test-mask.rgb24.ref.png | Bin 0 -> 659 bytes
...-downscale-best-95.test-paginated.rgb24.ref.png | Bin 0 -> 659 bytes
...xman-downscale-best-95.test-spans.rgb24.ref.png | Bin 0 -> 659 bytes
...xman-downscale-best-95.test-traps.rgb24.ref.png | Bin 0 -> 659 bytes
...an-downscale-best-95.xcb-fallback.rgb24.ref.png | Bin 0 -> 659 bytes
...-downscale-best-95.xcb-render-0_0.rgb24.ref.png | Bin 0 -> 659 bytes
...man-downscale-best-95.xcb-window&.rgb24.ref.png | Bin 0 -> 474 bytes
...xman-downscale-best-95.xcb-window.rgb24.ref.png | Bin 0 -> 474 bytes
.../reference/pixman-downscale-best-95.xcb.ref.png | Bin 0 -> 474 bytes
...n-downscale-best-95.xlib-fallback.rgb24.ref.png | Bin 0 -> 659 bytes
...downscale-best-95.xlib-render-0_0.rgb24.ref.png | Bin 0 -> 659 bytes
...man-downscale-best-95.xlib-window.rgb24.ref.png | Bin 0 -> 474 bytes
.../pixman-downscale-best-95.xlib.ref.png | Bin 0 -> 474 bytes
...man-downscale-bilinear-95.image16.rgb24.ref.png | Bin 0 -> 481 bytes
.../pixman-downscale-bilinear-95.pdf.ref.png | Bin 0 -> 479 bytes
.../pixman-downscale-bilinear-95.ps2.ref.png | Bin 0 -> 460 bytes
.../pixman-downscale-bilinear-95.ps3.ref.png | Bin 0 -> 460 bytes
.../reference/pixman-downscale-bilinear-95.ref.png | Bin 685 -> 474 bytes
.../pixman-downscale-bilinear-95.script.ref.png | Bin 0 -> 481 bytes
.../pixman-downscale-fast-95.image16.rgb24.ref.png | Bin 0 -> 304 bytes
.../reference/pixman-downscale-fast-95.pdf.ref.png | Bin 0 -> 479 bytes
.../reference/pixman-downscale-fast-95.ps2.ref.png | Bin 0 -> 299 bytes
.../reference/pixman-downscale-fast-95.ps3.ref.png | Bin 0 -> 299 bytes
.../pixman-downscale-fast-95.svg11.ref.png | Bin 0 -> 474 bytes
.../pixman-downscale-fast-95.svg12.ref.png | Bin 0 -> 474 bytes
.../pixman-downscale-good-95.image16.rgb24.ref.png | Bin 0 -> 481 bytes
.../reference/pixman-downscale-good-95.pdf.ref.png | Bin 0 -> 479 bytes
.../reference/pixman-downscale-good-95.ps2.ref.png | Bin 0 -> 460 bytes
.../reference/pixman-downscale-good-95.ps3.ref.png | Bin 0 -> 460 bytes
test/reference/pixman-downscale-good-95.ref.png | Bin 685 -> 474 bytes
.../pixman-downscale-good-95.script.ref.png | Bin 0 -> 481 bytes
...xman-downscale-nearest-95.image16.rgb24.ref.png | Bin 0 -> 304 bytes
.../pixman-downscale-nearest-95.pdf.ref.png | Bin 0 -> 479 bytes
.../pixman-downscale-nearest-95.ps2.ref.png | Bin 0 -> 299 bytes
.../pixman-downscale-nearest-95.ps3.ref.png | Bin 0 -> 299 bytes
.../pixman-downscale-nearest-95.svg11.ref.png | Bin 0 -> 474 bytes
.../pixman-downscale-nearest-95.svg12.ref.png | Bin 0 -> 474 bytes
49 files changed, 0 insertions(+), 0 deletions(-)
commit 79b5a35f8387845a2fe46215776082a8abc3caba
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Thu Oct 9 17:47:10 2014 -0700
test: Add an update-refs.sh script to update reference images
There are cases where the rendered output of a test can vary from
backend to backend in ways which are visually acceptable. This is why
we have reference images in the first place. In these cases, changes to
the rendering logic can result in slight differences in the output that
is also within acceptable visual limits.
We see this in the pixman downscaling tests. This script is introduced
as a way to more easily update the reference images after a renderer
change.
This script is intended to be expanded to handle updating of references
for other tests as we identify similar issues. The intent is that this
script then serves as a way to document these exceptional cases.
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
test/update-refs.sh | 84 +++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 84 insertions(+)
commit 1570fa23e8043204bd30b122d55a036da15b16e5
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Wed Oct 8 20:08:47 2014 -0700
test: Fix error message to specify the executable that was missing
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
test/check-refs.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit a8abf3a48b588632e3f39028b0b978d73c362f46
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 9 10:43:15 2014 +0100
test: Fix conflation of different device scales in index.html
Currently testtable.js does not recognise the difference between running
the same test with multiple scale factors and merges the results into
one.
test/testtable.js | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 8047179bfca65cad36c61daf5f88c97cc971848b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 9 10:54:58 2014 +0100
test: Teach check-preprocessor-syntax.sh about -inlines.h
src/check-preprocessor-syntax.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 7c1db82a2e9dc04fd652d6e6bb6f4eb976922368
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Fri Oct 3 12:34:06 2014 -0700
Get make check back to a happy spot
Fix header ordering for some recently added code so cairo internal
headers are included first. Quells two make check errors.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=84638
src/cairo-gl-info.c | 4 ++--
src/cairo-line-private.h | 4 ++--
2 files changed, 4 insertions(+), 4 deletions(-)
commit f57c0fd4656ef4fdbe13dbc69aa1ce4e130c37ce
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Fri Oct 3 12:20:13 2014 -0700
Declare as private the new cairo_lines_compare_at_y symbol
Fixes a make check error.
Checking that .libs/libcairo.so has the same symbol list as cairo.def
126a127
> cairo_lines_compare_at_y
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=84638
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-line-private.h | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
commit d9ba8337ab456ae0e232d3c603cb41cea984ebea
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Fri Oct 3 11:52:32 2014 -0700
quartz: Check for quartz surface type before conversion
Fixes the following warning introduced in a recent commit reported by
~suv:
CC cairo-quartz-image-surface.lo
cairo-quartz-image-surface.c:382:37: warning: incompatible pointer types
passing 'cairo_quartz_image_surface_t *'
(aka 'struct cairo_quartz_image_surface *') to parameter of type
'const cairo_surface_t *' (aka 'const struct _cairo_surface *')
[-Wincompatible-pointer-types]
if (! _cairo_surface_is_quartz (surface)) {
^~~~~~~
./cairo-quartz-private.h:87:50: note: passing argument to parameter 'surface' here
_cairo_surface_is_quartz (const cairo_surface_t *surface);
References: https://bugs.freedesktop.org/show_bug.cgi?id=84569
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-quartz-image-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 03756e042a2916e6c5334e2a00ec503a38e172d4
Author: Andrea Canciani <ranma42@gmail.com>
Date: Fri Oct 3 09:56:24 2014 +0200
quartz-image: Fix build
The quartz-image backend uses _cairo_surface_is_quartz(), which
therefore needs to be made available to it. Fixed as suggested by
Bryce in the referenced bugreport.
References: https://bugs.freedesktop.org/show_bug.cgi?id=84569
Signed-off-by: Andrea Canciani <ranma42@gmail.com>
src/cairo-quartz-private.h | 3 +++
src/cairo-quartz-surface.c | 5 +----
2 files changed, 4 insertions(+), 4 deletions(-)
commit 531da6fb915a6e9ea33216a90196ae962876acf4
Author: Andrea Canciani <ranma42@gmail.com>
Date: Thu Oct 2 18:10:00 2014 +0200
quartz: Fix build
Cairo cannot build with Quartz enabled since
573ddfc3d5c08c37b95a21e0a1b34acecc646053, because of a double
definition of _cairo_surface_is_quartz().
References: https://bugs.freedesktop.org/show_bug.cgi?id=84569
Signed-off-by: Andrea Canciani <ranma42@gmail.com>
src/cairo-quartz-surface.c | 22 ++++++++--------------
1 file changed, 8 insertions(+), 14 deletions(-)
commit 14df211b9c12719f67412aedd6610eb623df7d7e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 2 13:08:50 2014 +0100
test: Add whole flipped replays
When investing the symmetry of the raterisation, we want to have a
simple replay of all of the original geometry through a the flipped
recording surface. This reduces the worry about artifacts from the
clipped rendering.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/recordflip.c | 188 ++++++++++++++++++++
test/reference/recordflip-whole-fill-alpha.ref.png | Bin 0 -> 2803 bytes
.../recordflip-whole-paint-alpha-clip-mask.ref.png | Bin 0 -> 351 bytes
.../recordflip-whole-paint-alpha-clip.ref.png | Bin 0 -> 316 bytes
...recordflip-whole-paint-alpha-solid-clip.ref.png | Bin 0 -> 291 bytes
.../reference/recordflip-whole-paint-alpha.ref.png | Bin 0 -> 257 bytes
test/reference/recordflip-whole-paint.ref.png | Bin 0 -> 93 bytes
.../recordflip-whole-select-font-face.ref.png | Bin 0 -> 2240 bytes
.../recordflip-whole-self-intersecting.ref.png | Bin 0 -> 168 bytes
.../recordflip-whole-text-transform.ref.png | Bin 0 -> 5609 bytes
10 files changed, 188 insertions(+)
commit 7f7ed4c04e49b64c15d60889a8cdc4075efd8236
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 2 09:16:04 2014 +0100
image: Eliminate self-intersections for the pixman traps compositor
As pixman uses an accumulation mask, it oversamples neighbouring edges
within a cell. We can reduce the impact of this by eliminating
overlapping triangles/trapezoids from being passed into pixman.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
commit 7aacd81befc5ad1aec26bcf7e65fa5bd36c6a9b4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 2 08:17:14 2014 +0100
test: Refresh reference images for tor rendering changes
(And include a git add missed from commit
ccd48b346436a80629e4f9a07f2ba7ffbfd802f1
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 14:06:21 2014 +0100
test: Remove more duplicated reference images
but were mostly invalidated by the rasteriser changes anyway).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/a8-clear.ref.png | Bin 0 -> 267 bytes
test/reference/aliasing.ref.png | Bin 0 -> 103877 bytes
test/reference/arc-direction.ref.png | Bin 0 -> 6073 bytes
test/reference/big-line.ref.png | Bin 0 -> 999 bytes
test/reference/big-little-triangle.argb32.ref.png | Bin 409 -> 399 bytes
test/reference/big-little-triangle.rgb24.ref.png | Bin 331 -> 320 bytes
test/reference/bilevel-xlib.ref.png | Bin 0 -> 105 bytes
test/reference/bug-40410.ref.png | Bin 0 -> 429 bytes
test/reference/bug-84115.ref.png | Bin 64233 -> 62964 bytes
test/reference/bug-bo-ricotz.ref.png | Bin 0 -> 2128 bytes
test/reference/bug-extents.ref.png | Bin 0 -> 9211 bytes
test/reference/bug-seams.ref.png | Bin 1364 -> 1638 bytes
test/reference/bug-spline.ref.png | Bin 0 -> 5405 bytes
test/reference/caps-joins-alpha.ref.png | Bin 0 -> 2420 bytes
test/reference/caps-joins-curve.ref.png | Bin 0 -> 5681 bytes
test/reference/caps-joins.ref.png | Bin 0 -> 2560 bytes
test/reference/caps-sub-paths.ref.png | Bin 0 -> 168 bytes
test/reference/caps-tails-curve.ref.png | Bin 0 -> 53182 bytes
test/reference/caps.ref.png | Bin 0 -> 2115 bytes
test/reference/clear-source.ref.png | Bin 0 -> 882 bytes
test/reference/clear.argb32.ref.png | Bin 692 -> 701 bytes
test/reference/clear.rgb24.ref.png | Bin 621 -> 624 bytes
test/reference/clip-disjoint-hatching.ref.png | Bin 0 -> 7918 bytes
test/reference/clip-disjoint-quad.ref.png | Bin 0 -> 1642 bytes
test/reference/clip-disjoint.ref.png | Bin 0 -> 5348 bytes
.../clip-fill-eo-unbounded.argb32.ref.png | Bin 0 -> 4053 bytes
test/reference/clip-fill-eo-unbounded.ref.png | Bin 4076 -> 0 bytes
.../reference/clip-fill-eo-unbounded.rgb24.ref.png | Bin 0 -> 3408 bytes
.../clip-fill-nz-unbounded.argb32.ref.png | Bin 0 -> 4053 bytes
test/reference/clip-fill-nz-unbounded.ref.png | Bin 4076 -> 0 bytes
.../reference/clip-fill-nz-unbounded.rgb24.ref.png | Bin 0 -> 3408 bytes
test/reference/clip-fill-rule.argb32.ref.png | Bin 437 -> 430 bytes
test/reference/clip-fill-rule.rgb24.ref.png | Bin 388 -> 376 bytes
test/reference/clip-fill.ref.png | Bin 0 -> 1046 bytes
test/reference/clip-group-shapes-circles.ref.png | Bin 0 -> 1504 bytes
test/reference/clip-image.ref.png | Bin 0 -> 2677 bytes
test/reference/clip-intersect.ref.png | Bin 0 -> 224 bytes
test/reference/clip-mixed-antialias.ref.png | Bin 0 -> 1084 bytes
test/reference/clip-nesting.argb32.ref.png | Bin 0 -> 1026 bytes
test/reference/clip-nesting.ref.png | Bin 1094 -> 0 bytes
test/reference/clip-nesting.rgb24.ref.png | Bin 0 -> 917 bytes
test/reference/clip-operator.argb32.ref.png | Bin 8685 -> 8514 bytes
test/reference/clip-operator.rgb24.ref.png | Bin 3458 -> 3417 bytes
test/reference/clip-polygons.ref.png | Bin 0 -> 1352 bytes
test/reference/clip-push-group.ref.png | Bin 0 -> 164 bytes
test/reference/clip-shape.ref.png | Bin 0 -> 2902 bytes
.../reference/clip-stroke-unbounded.argb32.ref.png | Bin 0 -> 4097 bytes
test/reference/clip-stroke-unbounded.ref.png | Bin 4104 -> 0 bytes
test/reference/clip-stroke-unbounded.rgb24.ref.png | Bin 0 -> 3486 bytes
test/reference/clip-stroke.ref.png | Bin 0 -> 1571 bytes
test/reference/clip-text.ref.png | Bin 0 -> 912 bytes
test/reference/clip-twice.argb32.ref.png | Bin 0 -> 1333 bytes
test/reference/clip-twice.ref.png | Bin 1357 -> 0 bytes
test/reference/clip-twice.rgb24.ref.png | Bin 0 -> 1171 bytes
test/reference/clip-xlib.ref.png | Bin 0 -> 2686 bytes
test/reference/clipped-group.ref.png | Bin 0 -> 315 bytes
test/reference/close-path.ref.png | Bin 0 -> 294 bytes
test/reference/copy-path.ref.png | Bin 0 -> 616 bytes
test/reference/coverage-column-triangles.xfail.png | Bin 0 -> 7632 bytes
.../coverage-intersecting-triangles.xfail.png | Bin 0 -> 14444 bytes
test/reference/coverage-rhombus.xfail.png | Bin 0 -> 9898 bytes
test/reference/coverage-row-triangles.xfail.png | Bin 0 -> 512 bytes
test/reference/coverage-triangles.xfail.png | Bin 0 -> 14283 bytes
test/reference/create-from-png.ref.png | Bin 0 -> 96 bytes
test/reference/culled-glyphs.ref.png | Bin 0 -> 440 bytes
test/reference/dash-caps-joins.ref.png | Bin 5089 -> 4713 bytes
test/reference/dash-curve.ref.png | Bin 0 -> 41069 bytes
test/reference/dash-infinite-loop.ref.png | Bin 0 -> 877 bytes
test/reference/dash-offset-negative.ref.png | Bin 0 -> 129 bytes
test/reference/dash-scale.ref.png | Bin 8831 -> 7826 bytes
test/reference/dash-state.ref.png | Bin 0 -> 8027 bytes
test/reference/degenerate-arc.ref.png | Bin 0 -> 626 bytes
test/reference/degenerate-dash.ref.png | Bin 0 -> 1960 bytes
test/reference/degenerate-linear-gradient.ref.png | Bin 0 -> 336 bytes
test/reference/degenerate-pen.ref.png | Bin 0 -> 1019 bytes
test/reference/drunkard-tails.ref.png | Bin 6261 -> 6157 bytes
test/reference/extend-pad-border.ref.png | Bin 0 -> 495 bytes
.../extended-blend-alpha-mask.argb32.ref.png | Bin 0 -> 9221 bytes
test/reference/extended-blend-alpha-mask.ref.png | Bin 9221 -> 0 bytes
.../extended-blend-alpha-mask.rgb24.ref.png | Bin 0 -> 4597 bytes
test/reference/extended-blend-alpha.argb32.ref.png | Bin 0 -> 9406 bytes
test/reference/extended-blend-alpha.ref.png | Bin 9406 -> 0 bytes
test/reference/extended-blend-alpha.rgb24.ref.png | Bin 0 -> 5740 bytes
test/reference/extended-blend-mask.argb32.ref.png | Bin 0 -> 3959 bytes
test/reference/extended-blend-mask.ref.png | Bin 3971 -> 0 bytes
test/reference/extended-blend-mask.rgb24.ref.png | Bin 0 -> 3634 bytes
.../extended-blend-solid-alpha.argb32.ref.png | Bin 0 -> 9406 bytes
test/reference/extended-blend-solid-alpha.ref.png | Bin 9406 -> 0 bytes
.../extended-blend-solid-alpha.rgb24.ref.png | Bin 0 -> 5740 bytes
test/reference/extended-blend-solid.argb32.ref.png | Bin 0 -> 4072 bytes
test/reference/extended-blend-solid.ref.png | Bin 4063 -> 0 bytes
test/reference/extended-blend-solid.rgb24.ref.png | Bin 0 -> 3784 bytes
test/reference/extended-blend.argb32.ref.png | Bin 0 -> 4072 bytes
test/reference/extended-blend.ref.png | Bin 4063 -> 0 bytes
test/reference/extended-blend.rgb24.ref.png | Bin 0 -> 3784 bytes
test/reference/fallback.argb32.ref.png | Bin 0 -> 4133 bytes
test/reference/fallback.ref.png | Bin 4106 -> 0 bytes
test/reference/fallback.rgb24.ref.png | Bin 0 -> 3283 bytes
test/reference/fill-alpha-pattern.ref.png | Bin 0 -> 3500 bytes
test/reference/fill-alpha.ref.png | Bin 0 -> 2754 bytes
test/reference/fill-and-stroke-alpha-add.ref.png | Bin 0 -> 558 bytes
test/reference/fill-and-stroke-alpha.ref.png | Bin 0 -> 513 bytes
.../fill-degenerate-sort-order.argb32.ref.png | Bin 0 -> 2390 bytes
test/reference/fill-degenerate-sort-order.ref.png | Bin 2414 -> 0 bytes
.../fill-degenerate-sort-order.rgb24.ref.png | Bin 0 -> 2048 bytes
test/reference/fill-image.ref.png | Bin 0 -> 1457 bytes
test/reference/fill-rule.argb32.ref.png | Bin 2086 -> 2076 bytes
test/reference/fill-rule.rgb24.ref.png | Bin 1797 -> 1763 bytes
test/reference/fill-xlib.ref.png | Bin 0 -> 1458 bytes
test/reference/filter-bilinear-extents.ref.png | Bin 0 -> 1210 bytes
test/reference/font-matrix-translation.ref.png | Bin 0 -> 865 bytes
test/reference/ft-show-glyphs-positioning.ref.png | Bin 0 -> 3243 bytes
test/reference/ft-show-glyphs-table.ref.png | Bin 0 -> 9975 bytes
.../ft-text-vertical-layout-type1.ref.png | Bin 0 -> 3052 bytes
.../ft-text-vertical-layout-type3.ref.png | Bin 0 -> 3609 bytes
test/reference/glyph-cache-pressure.ref.png | Bin 0 -> 2858 bytes
test/reference/group-unaligned.ref.png | Bin 0 -> 475 bytes
test/reference/halo-transform.ref.png | Bin 0 -> 15265 bytes
test/reference/halo.ref.png | Bin 0 -> 8631 bytes
test/reference/hatchings.ref.png | Bin 0 -> 90698 bytes
test/reference/horizontal-clip.ref.png | Bin 0 -> 113 bytes
test/reference/huge-linear.ref.png | Bin 0 -> 1636 bytes
test/reference/infinite-join.ref.png | Bin 0 -> 164 bytes
test/reference/inverse-text.ref.png | Bin 0 -> 2162 bytes
test/reference/inverted-clip.argb32.ref.png | Bin 0 -> 1390 bytes
test/reference/inverted-clip.rgb24.ref.png | Bin 1323 -> 1274 bytes
test/reference/joins-loop.ref.png | Bin 0 -> 4333 bytes
test/reference/joins-retrace.ref.png | Bin 4900 -> 4687 bytes
test/reference/joins-star.ref.png | Bin 0 -> 4015 bytes
test/reference/large-twin-antialias-mixed.ref.png | Bin 0 -> 16494 bytes
test/reference/leaky-dashed-stroke.ref.png | Bin 0 -> 9286 bytes
test/reference/leaky-polygon.ref.png | Bin 0 -> 337 bytes
.../line-width-large-overlap-rotated.ref.png | Bin 0 -> 415 bytes
test/reference/line-width-overlap-rotated.ref.png | Bin 0 -> 688 bytes
test/reference/line-width-scale.ref.png | Bin 0 -> 5721 bytes
test/reference/line-width-tolerance.ref.png | Bin 0 -> 168 bytes
test/reference/line-width.ref.png | Bin 0 -> 178 bytes
test/reference/linear-gradient-reflect.ref.png | Bin 0 -> 185 bytes
test/reference/linear-gradient-subset.ref.png | Bin 0 -> 813 bytes
test/reference/linear-gradient.ref.png | Bin 0 -> 959 bytes
test/reference/long-dashed-lines.ref.png | Bin 0 -> 2548 bytes
test/reference/map-all-to-xlib.ref.png | Bin 0 -> 86 bytes
test/reference/map-bit-to-xlib.ref.png | Bin 0 -> 103 bytes
test/reference/mask-alpha.argb32.ref.png | Bin 0 -> 629 bytes
test/reference/mask-alpha.ref.png | Bin 642 -> 0 bytes
test/reference/mask-alpha.rgb24.ref.png | Bin 0 -> 595 bytes
test/reference/mask-transformed-image.ref.png | Bin 0 -> 3812 bytes
test/reference/mask-transformed-similar.ref.png | Bin 0 -> 3812 bytes
test/reference/mask-transformed-xlib.ref.png | Bin 0 -> 3809 bytes
test/reference/mask.argb32.ref.png | Bin 8681 -> 8530 bytes
test/reference/mask.rgb24.ref.png | Bin 7215 -> 7160 bytes
test/reference/miter-precision.ref.png | Bin 0 -> 824 bytes
test/reference/operator-clear.argb32.ref.png | Bin 1067 -> 1061 bytes
test/reference/operator-clear.rgb24.ref.png | Bin 940 -> 939 bytes
test/reference/operator-source.argb32.ref.png | Bin 5626 -> 5620 bytes
test/reference/operator-source.rgb24.ref.png | Bin 4026 -> 4006 bytes
test/reference/over-above-source.argb32.ref.png | Bin 557 -> 533 bytes
test/reference/over-above-source.rgb24.ref.png | Bin 459 -> 452 bytes
test/reference/over-around-source.argb32.ref.png | Bin 633 -> 604 bytes
test/reference/over-around-source.rgb24.ref.png | Bin 504 -> 489 bytes
test/reference/over-below-source.argb32.ref.png | Bin 447 -> 440 bytes
test/reference/over-below-source.rgb24.ref.png | Bin 389 -> 376 bytes
test/reference/over-between-source.argb32.ref.png | Bin 607 -> 572 bytes
test/reference/over-between-source.rgb24.ref.png | Bin 482 -> 457 bytes
test/reference/overlapping-dash-caps.ref.png | Bin 0 -> 3952 bytes
test/reference/paint-with-alpha-clip-mask.ref.png | Bin 0 -> 335 bytes
test/reference/partial-clip-text-bottom.ref.png | Bin 0 -> 261 bytes
test/reference/partial-clip-text-left.ref.png | Bin 0 -> 301 bytes
test/reference/partial-clip-text-right.ref.png | Bin 0 -> 155 bytes
test/reference/partial-clip-text-top.ref.png | Bin 0 -> 181 bytes
test/reference/path-append.ref.png | Bin 0 -> 6338 bytes
test/reference/path-stroke-twice.ref.png | Bin 0 -> 240 bytes
test/reference/pthread-show-text.ref.png | Bin 0 -> 30199 bytes
test/reference/push-group-color.ref.png | Bin 0 -> 3002 bytes
test/reference/push-group.argb32.ref.png | Bin 3116 -> 3123 bytes
test/reference/push-group.rgb24.ref.png | Bin 2929 -> 2951 bytes
test/reference/random-clip.ref.png | Bin 0 -> 525010 bytes
.../random-intersections-curves-eo.ref.png | Bin 0 -> 244632 bytes
.../random-intersections-curves-nz.ref.png | Bin 0 -> 264413 bytes
test/reference/random-intersections-eo.ref.png | Bin 0 -> 135555 bytes
.../reference/random-intersections-nonzero.ref.png | Bin 0 -> 141737 bytes
test/reference/record-fill-alpha.ref.png | Bin 0 -> 2754 bytes
.../reference/record-paint-alpha-clip-mask.ref.png | Bin 0 -> 335 bytes
test/reference/record-paint-alpha-clip.ref.png | Bin 0 -> 290 bytes
test/reference/record-select-font-face.ref.png | Bin 0 -> 2250 bytes
test/reference/record-text-transform.ref.png | Bin 5281 -> 5579 bytes
test/reference/record1414x-fill-alpha.ref.png | Bin 0 -> 4124 bytes
.../record1414x-paint-alpha-clip-mask.ref.png | Bin 0 -> 460 bytes
.../reference/record1414x-paint-alpha-clip.ref.png | Bin 0 -> 378 bytes
.../record1414x-paint-alpha-solid-clip.ref.png | Bin 0 -> 317 bytes
test/reference/record1414x-paint-alpha.ref.png | Bin 0 -> 265 bytes
test/reference/record1414x-paint.ref.png | Bin 0 -> 95 bytes
.../reference/record1414x-select-font-face.ref.png | Bin 0 -> 3177 bytes
.../record1414x-self-intersecting.ref.png | Bin 0 -> 385 bytes
test/reference/record1414x-text-transform.ref.png | Bin 8365 -> 8713 bytes
test/reference/record2x-fill-alpha.ref.png | Bin 0 -> 5756 bytes
.../record2x-paint-alpha-clip-mask.ref.png | Bin 0 -> 483 bytes
test/reference/record2x-paint-alpha-clip.ref.png | Bin 0 -> 322 bytes
.../record2x-paint-alpha-solid-clip.ref.png | Bin 0 -> 281 bytes
test/reference/record2x-paint-alpha.ref.png | Bin 0 -> 291 bytes
test/reference/record2x-paint.ref.png | Bin 0 -> 98 bytes
test/reference/record2x-select-font-face.ref.png | Bin 0 -> 4407 bytes
test/reference/record2x-self-intersecting.ref.png | Bin 0 -> 171 bytes
test/reference/record2x-text-transform.ref.png | Bin 13072 -> 13476 bytes
test/reference/record90-fill-alpha.ref.png | Bin 0 -> 2656 bytes
.../record90-paint-alpha-clip-mask.ref.png | Bin 0 -> 317 bytes
test/reference/record90-paint-alpha-clip.ref.png | Bin 0 -> 306 bytes
.../record90-paint-alpha-solid-clip.ref.png | Bin 0 -> 293 bytes
test/reference/record90-paint-alpha.ref.png | Bin 0 -> 105 bytes
test/reference/record90-paint.ref.png | Bin 0 -> 93 bytes
test/reference/record90-select-font-face.ref.png | Bin 0 -> 2272 bytes
test/reference/record90-self-intersecting.ref.png | Bin 244 -> 240 bytes
test/reference/record90-text-transform.ref.png | Bin 5481 -> 5811 bytes
test/reference/recordflip-fill-alpha.ref.png | Bin 2864 -> 2803 bytes
.../recordflip-paint-alpha-clip-mask.ref.png | Bin 372 -> 351 bytes
.../recording-surface-extend-none.argb32.ref.png | Bin 0 -> 3670 bytes
.../recording-surface-extend-none.ref.png | Bin 3153 -> 0 bytes
.../recording-surface-extend-none.rgb24.ref.png | Bin 0 -> 3741 bytes
.../recording-surface-extend-pad.argb32.ref.png | Bin 0 -> 12932 bytes
.../reference/recording-surface-extend-pad.ref.png | Bin 11200 -> 0 bytes
.../recording-surface-extend-pad.rgb24.ref.png | Bin 0 -> 13581 bytes
...recording-surface-extend-reflect.argb32.ref.png | Bin 0 -> 28910 bytes
.../recording-surface-extend-reflect.ref.png | Bin 23967 -> 0 bytes
.../recording-surface-extend-reflect.rgb24.ref.png | Bin 0 -> 25588 bytes
.../recording-surface-extend-repeat.argb32.ref.png | Bin 0 -> 29648 bytes
.../recording-surface-extend-repeat.ref.png | Bin 24091 -> 0 bytes
.../recording-surface-extend-repeat.rgb24.ref.png | Bin 0 -> 25337 bytes
.../recording-surface-over.argb32.ref.png | Bin 0 -> 3670 bytes
test/reference/recording-surface-over.ref.png | Bin 3153 -> 0 bytes
.../reference/recording-surface-over.rgb24.ref.png | Bin 0 -> 3741 bytes
.../recording-surface-source.argb32.ref.png | Bin 0 -> 3688 bytes
test/reference/recording-surface-source.ref.png | Bin 3153 -> 0 bytes
.../recording-surface-source.rgb24.ref.png | Bin 0 -> 3738 bytes
test/reference/rectilinear-miter-limit.ref.png | Bin 0 -> 145 bytes
.../rotate-clip-image-surface-paint.ref.png | Bin 0 -> 332 bytes
test/reference/rotated-clip.ref.png | Bin 0 -> 3834 bytes
test/reference/rounded-rectangle-fill.ref.png | Bin 0 -> 872 bytes
test/reference/rounded-rectangle-stroke.ref.png | Bin 833 -> 872 bytes
test/reference/scale-offset-image.ref.png | Bin 0 -> 9748 bytes
test/reference/scale-offset-similar.ref.png | Bin 0 -> 9779 bytes
test/reference/scale-offset-xlib.ref.png | Bin 0 -> 9120 bytes
test/reference/select-font-face.ref.png | Bin 0 -> 2250 bytes
test/reference/self-copy.ref.png | Bin 0 -> 257 bytes
test/reference/shape-general-convex.ref.png | Bin 0 -> 2539 bytes
test/reference/shape-sierpinski.ref.png | Bin 0 -> 54850 bytes
test/reference/show-glyphs-advance.ref.png | Bin 0 -> 1394 bytes
test/reference/show-text-current-point.ref.png | Bin 0 -> 2151 bytes
test/reference/simple-edge.xfail.png | Bin 0 -> 2124 bytes
test/reference/skew-extreme.ref.png | Bin 0 -> 944 bytes
test/reference/smask-fill.ref.png | Bin 0 -> 1185 bytes
test/reference/smask-image-mask.ref.png | Bin 0 -> 619 bytes
test/reference/smask-mask.ref.png | Bin 0 -> 2353 bytes
test/reference/smask-paint.ref.png | Bin 0 -> 2469 bytes
test/reference/smask-stroke.ref.png | Bin 0 -> 1701 bytes
test/reference/smask-text.ref.png | Bin 0 -> 1661 bytes
test/reference/smask.ref.png | Bin 0 -> 3422 bytes
test/reference/spline-decomposition.ref.png | Bin 0 -> 19578 bytes
test/reference/stride-12-xlib.ref.png | Bin 0 -> 81121 bytes
test/reference/stroke-clipped.ref.png | Bin 0 -> 5845 bytes
test/reference/stroke-image.ref.png | Bin 0 -> 1455 bytes
test/reference/stroke-pattern.ref.png | Bin 0 -> 1514 bytes
test/reference/stroke-xlib.ref.png | Bin 0 -> 1467 bytes
test/reference/subsurface-scale.ref.png | Bin 0 -> 5921 bytes
test/reference/subsurface.ref.png | Bin 0 -> 1811 bytes
.../surface-pattern-operator.argb32.ref.png | Bin 5107 -> 5087 bytes
.../surface-pattern-operator.rgb24.ref.png | Bin 1926 -> 1919 bytes
test/reference/surface-pattern-scale-down.ref.png | Bin 0 -> 1326 bytes
test/reference/surface-pattern-scale-up.ref.png | Bin 0 -> 4020 bytes
test/reference/surface-pattern.ref.png | Bin 0 -> 11088 bytes
test/reference/text-antialias-gray.ref.png | Bin 0 -> 966 bytes
test/reference/text-antialias-subpixel-bgr.ref.png | Bin 0 -> 1124 bytes
test/reference/text-antialias-subpixel-rgb.ref.png | Bin 0 -> 1109 bytes
.../reference/text-antialias-subpixel-vbgr.ref.png | Bin 0 -> 1205 bytes
.../reference/text-antialias-subpixel-vrgb.ref.png | Bin 0 -> 1180 bytes
test/reference/text-antialias-subpixel.ref.png | Bin 0 -> 1109 bytes
test/reference/text-glyph-range.ref.png | Bin 0 -> 1928 bytes
test/reference/text-rotate.ref.png | Bin 0 -> 16356 bytes
test/reference/tiger.ref.png | Bin 0 -> 94477 bytes
test/reference/tighten-bounds.argb32.ref.png | Bin 0 -> 8997 bytes
test/reference/tighten-bounds.ref.png | Bin 9443 -> 0 bytes
test/reference/tighten-bounds.rgb24.ref.png | Bin 0 -> 8450 bytes
test/reference/transforms.ref.png | Bin 0 -> 348 bytes
test/reference/trap-clip.argb32.ref.png | Bin 5972 -> 5822 bytes
test/reference/trap-clip.rgb24.ref.png | Bin 5462 -> 5422 bytes
test/reference/twin-antialias-gray.ref.png | Bin 0 -> 3536 bytes
test/reference/twin-antialias-mixed.ref.png | Bin 0 -> 2392 bytes
test/reference/twin-antialias-none.ref.png | Bin 0 -> 688 bytes
test/reference/twin-antialias-subpixel.ref.png | Bin 0 -> 3536 bytes
test/reference/twin.ref.png | Bin 0 -> 3536 bytes
test/reference/unbounded-operator.argb32.ref.png | Bin 2755 -> 2744 bytes
test/reference/unbounded-operator.rgb24.ref.png | Bin 1328 -> 1303 bytes
test/reference/user-font-proxy.ref.png | Bin 0 -> 16981 bytes
test/reference/user-font-rescale.ref.png | Bin 0 -> 14883 bytes
test/reference/user-font.ref.png | Bin 0 -> 5875 bytes
test/reference/world-map-fill.ref.png | Bin 0 -> 57407 bytes
test/reference/world-map-stroke.ref.png | Bin 0 -> 65152 bytes
test/reference/world-map.ref.png | Bin 0 -> 70463 bytes
297 files changed, 0 insertions(+), 0 deletions(-)
commit 950f1e7103a3b4f3405fbb3ee2844ed24b902834
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 2 07:52:05 2014 +0100
tor: Enable analytic processing for starting rows
If all the edges start at the very beginning of the whole row, we can
merge them and include check for intersections/endings during the row.
This allows us to enable fast analytic processing for even the very
first row on pixel aligned vertices.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-tor-scan-converter.c | 27 +++++++++++++++++----------
1 file changed, 17 insertions(+), 10 deletions(-)
commit 1a32ce83e4c1f3ca22a3f137b0126003a0e3d6e7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Oct 1 12:59:29 2014 +0100
tor: Perform analytic coverage over the pixel not sample points
We use two different methods within tor to compute the coverage.
The first is that we iterate over every sample point within the pixel
and see if it is covered. The second is that we look at a whole pixel
and analytically compute the coverage inside (if we have no
intersections within that row).
One side effect of
commit 03c3d4b7c159a3004071522bac2461e553fec211
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 08:44:43 2014 +0100
tor: Fix loss of precision from projection onto sample grid
was to compute our X coordinates for the sample locations (offset by
half a subrow) and that in order to compute the analytical pixel
coverage correctly, we therefore need to backstep by half the subrow to
the pixel boundary.
References: https://bugs.freedesktop.org/show_bug.cgi?id=84396
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-tor-scan-converter.c | 67 +++++++++++++++++++++++++++++-----------
1 file changed, 49 insertions(+), 18 deletions(-)
commit 79c8b14b9fd8716d47fab4436b34d26b0135e9d7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 2 00:20:52 2014 +0100
test/simple: Tighten sanity checks in reference image generator
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/simple.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
commit 50b41e214533ea5fd3b64128306b6cb94d353145
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Oct 1 22:50:10 2014 +0100
test: Add a simple rasteriser to check fidelity of edge rendering
In order to check the behaviour of the analytic rasteriser inside tor,
let's compare it against a very simple rasteriser that uses a rectiliner
256x256 sample grid.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/reference/simple-edge.ref.png | Bin 0 -> 1922 bytes
test/simple.c | 347 ++++++++++++++++++++++++++++++++++++
3 files changed, 348 insertions(+)
commit 2144e7f48ba49d5bdb4a0dd1fb672be9d313fb65
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 16:18:34 2014 +0100
test: Fix coverage-abutting
Using CAIRO_OPERATOR_OVER in case causes oversampling of the coincident
edges, to measure coverage we should only use ADD. :|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/coverage.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 0c42d5c176b27725ac8ab293c3e941be64f51613
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 16:14:57 2014 +0100
test: Add another coverage example demonstrating the seams in tor
References: https://bugs.freedesktop.org/show_bug.cgi?id=84396
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/coverage.c | 53 ++++++++++++++++++++++++++++++
test/reference/coverage-abutting.ref.png | Bin 0 -> 777 bytes
2 files changed, 53 insertions(+)
commit 95e147bfa05a122541645f32be52cf1902c3a4b2
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 14:30:45 2014 +0100
test: Explicitly flip the reference image for recordflip
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/recordflip.c | 58 +++++++++++++++++++-
test/reference/recordflip-fill-alpha.ref.png | Bin 2790 -> 2864 bytes
.../recordflip-paint-alpha-clip-mask.ref.png | Bin 340 -> 372 bytes
test/reference/recordflip-paint-alpha-clip.ref.png | Bin 291 -> 316 bytes
.../recordflip-paint-alpha-solid-clip.ref.png | Bin 280 -> 291 bytes
test/reference/recordflip-paint-alpha.ref.png | Bin 242 -> 257 bytes
test/reference/recordflip-select-font-face.ref.png | Bin 2229 -> 2240 bytes
test/reference/recordflip-text-transform.ref.png | Bin 5606 -> 5609 bytes
8 files changed, 55 insertions(+), 3 deletions(-)
commit ccd48b346436a80629e4f9a07f2ba7ffbfd802f1
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 14:06:21 2014 +0100
test: Remove more duplicated reference images
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/a8-clear.argb32.ref.png | Bin 269 -> 0 bytes
test/reference/a8-clear.rgb24.ref.png | Bin 269 -> 0 bytes
test/reference/aliasing.argb32.ref.png | Bin 104193 -> 0 bytes
test/reference/aliasing.rgb24.ref.png | Bin 104193 -> 0 bytes
test/reference/arc-direction.argb32.ref.png | Bin 6473 -> 0 bytes
test/reference/arc-direction.rgb24.ref.png | Bin 6473 -> 0 bytes
test/reference/big-line.argb32.ref.png | Bin 977 -> 0 bytes
test/reference/big-line.rgb24.ref.png | Bin 977 -> 0 bytes
test/reference/bilevel-xlib.argb32.ref.png | Bin 105 -> 0 bytes
test/reference/bilevel-xlib.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/bug-40410.argb32.ref.png | Bin 429 -> 0 bytes
test/reference/bug-40410.rgb24.ref.png | Bin 429 -> 0 bytes
test/reference/bug-bo-ricotz.argb32.ref.png | Bin 2128 -> 0 bytes
test/reference/bug-bo-ricotz.rgb24.ref.png | Bin 2128 -> 0 bytes
test/reference/bug-extents.argb32.ref.png | Bin 9264 -> 0 bytes
test/reference/bug-extents.rgb24.ref.png | Bin 9264 -> 0 bytes
test/reference/bug-spline.argb32.ref.png | Bin 5490 -> 0 bytes
test/reference/bug-spline.rgb24.ref.png | Bin 5490 -> 0 bytes
test/reference/caps-joins-alpha.argb32.ref.png | Bin 2482 -> 0 bytes
test/reference/caps-joins-alpha.rgb24.ref.png | Bin 2482 -> 0 bytes
test/reference/caps-joins-curve.argb32.ref.png | Bin 5972 -> 0 bytes
test/reference/caps-joins-curve.rgb24.ref.png | Bin 5972 -> 0 bytes
test/reference/caps-joins.argb32.ref.png | Bin 2893 -> 0 bytes
test/reference/caps-joins.rgb24.ref.png | Bin 2893 -> 0 bytes
test/reference/caps-sub-paths.argb32.ref.png | Bin 168 -> 0 bytes
test/reference/caps-sub-paths.rgb24.ref.png | Bin 168 -> 0 bytes
test/reference/caps-tails-curve.argb32.ref.png | Bin 54409 -> 0 bytes
test/reference/caps-tails-curve.rgb24.ref.png | Bin 54409 -> 0 bytes
test/reference/caps.argb32.ref.png | Bin 2115 -> 0 bytes
test/reference/caps.rgb24.ref.png | Bin 2115 -> 0 bytes
test/reference/clear-source.argb32.ref.png | Bin 882 -> 0 bytes
test/reference/clear-source.rgb24.ref.png | Bin 882 -> 0 bytes
.../clip-disjoint-hatching.argb32.ref.png | Bin 7918 -> 0 bytes
.../reference/clip-disjoint-hatching.rgb24.ref.png | Bin 7918 -> 0 bytes
test/reference/clip-disjoint-quad.argb32.ref.png | Bin 1642 -> 0 bytes
test/reference/clip-disjoint-quad.rgb24.ref.png | Bin 1642 -> 0 bytes
test/reference/clip-disjoint.argb32.ref.png | Bin 5464 -> 0 bytes
test/reference/clip-disjoint.rgb24.ref.png | Bin 5464 -> 0 bytes
test/reference/clip-fill.argb32.ref.png | Bin 1064 -> 0 bytes
test/reference/clip-fill.rgb24.ref.png | Bin 1064 -> 0 bytes
.../clip-group-shapes-circles.argb32.ref.png | Bin 1533 -> 0 bytes
.../clip-group-shapes-circles.rgb24.ref.png | Bin 1533 -> 0 bytes
test/reference/clip-image.argb32.ref.png | Bin 2677 -> 0 bytes
test/reference/clip-image.rgb24.ref.png | Bin 2677 -> 0 bytes
test/reference/clip-intersect.argb32.ref.png | Bin 223 -> 0 bytes
test/reference/clip-intersect.rgb24.ref.png | Bin 223 -> 0 bytes
test/reference/clip-mixed-antialias.argb32.ref.png | Bin 1084 -> 0 bytes
test/reference/clip-mixed-antialias.rgb24.ref.png | Bin 1084 -> 0 bytes
test/reference/clip-operator.ref.png | Bin 8257 -> 0 bytes
test/reference/clip-polygons.argb32.ref.png | Bin 1352 -> 0 bytes
test/reference/clip-polygons.rgb24.ref.png | Bin 1352 -> 0 bytes
test/reference/clip-push-group.argb32.ref.png | Bin 164 -> 0 bytes
test/reference/clip-push-group.rgb24.ref.png | Bin 164 -> 0 bytes
test/reference/clip-shape.argb32.ref.png | Bin 2923 -> 0 bytes
test/reference/clip-shape.rgb24.ref.png | Bin 2923 -> 0 bytes
test/reference/clip-stroke.argb32.ref.png | Bin 1551 -> 0 bytes
test/reference/clip-stroke.rgb24.ref.png | Bin 1551 -> 0 bytes
test/reference/clip-text.argb32.ref.png | Bin 918 -> 0 bytes
test/reference/clip-text.rgb24.ref.png | Bin 918 -> 0 bytes
test/reference/clip-xlib.argb32.ref.png | Bin 2686 -> 0 bytes
test/reference/clip-xlib.rgb24.ref.png | Bin 2686 -> 0 bytes
test/reference/clipped-group.argb32.ref.png | Bin 315 -> 0 bytes
test/reference/clipped-group.rgb24.ref.png | Bin 315 -> 0 bytes
test/reference/close-path.argb32.ref.png | Bin 294 -> 0 bytes
test/reference/close-path.rgb24.ref.png | Bin 294 -> 0 bytes
test/reference/copy-path.argb32.ref.png | Bin 616 -> 0 bytes
test/reference/copy-path.rgb24.ref.png | Bin 616 -> 0 bytes
test/reference/create-from-png.argb32.ref.png | Bin 96 -> 0 bytes
test/reference/create-from-png.rgb24.ref.png | Bin 96 -> 0 bytes
test/reference/culled-glyphs.argb32.ref.png | Bin 440 -> 0 bytes
test/reference/culled-glyphs.rgb24.ref.png | Bin 440 -> 0 bytes
test/reference/dash-curve.argb32.ref.png | Bin 41069 -> 0 bytes
test/reference/dash-curve.rgb24.ref.png | Bin 41069 -> 0 bytes
test/reference/dash-infinite-loop.argb32.ref.png | Bin 877 -> 0 bytes
test/reference/dash-infinite-loop.rgb24.ref.png | Bin 877 -> 0 bytes
test/reference/dash-offset-negative.argb32.ref.png | Bin 129 -> 0 bytes
test/reference/dash-offset-negative.rgb24.ref.png | Bin 129 -> 0 bytes
test/reference/dash-state.argb32.ref.png | Bin 8027 -> 0 bytes
test/reference/dash-state.rgb24.ref.png | Bin 8027 -> 0 bytes
test/reference/degenerate-arc.argb32.ref.png | Bin 646 -> 0 bytes
test/reference/degenerate-arc.rgb24.ref.png | Bin 646 -> 0 bytes
test/reference/degenerate-dash.argb32.ref.png | Bin 1908 -> 0 bytes
test/reference/degenerate-dash.rgb24.ref.png | Bin 1908 -> 0 bytes
.../degenerate-linear-gradient.argb32.ref.png | Bin 336 -> 0 bytes
.../degenerate-linear-gradient.rgb24.ref.png | Bin 336 -> 0 bytes
test/reference/degenerate-pen.argb32.ref.png | Bin 1019 -> 0 bytes
test/reference/degenerate-pen.rgb24.ref.png | Bin 1019 -> 0 bytes
test/reference/extend-pad-border.argb32.ref.png | Bin 495 -> 0 bytes
test/reference/extend-pad-border.rgb24.ref.png | Bin 495 -> 0 bytes
test/reference/fill-alpha-pattern.argb32.ref.png | Bin 3489 -> 0 bytes
test/reference/fill-alpha-pattern.rgb24.ref.png | Bin 3489 -> 0 bytes
test/reference/fill-alpha.argb32.ref.png | Bin 2815 -> 0 bytes
test/reference/fill-alpha.rgb24.ref.png | Bin 2815 -> 0 bytes
.../fill-and-stroke-alpha-add.argb32.ref.png | Bin 558 -> 0 bytes
.../fill-and-stroke-alpha-add.rgb24.ref.png | Bin 558 -> 0 bytes
.../reference/fill-and-stroke-alpha.argb32.ref.png | Bin 513 -> 0 bytes
test/reference/fill-and-stroke-alpha.rgb24.ref.png | Bin 513 -> 0 bytes
test/reference/fill-image.argb32.ref.png | Bin 1315 -> 0 bytes
test/reference/fill-image.rgb24.ref.png | Bin 1315 -> 0 bytes
test/reference/fill-xlib.argb32.ref.png | Bin 1458 -> 0 bytes
test/reference/fill-xlib.rgb24.ref.png | Bin 1458 -> 0 bytes
.../filter-bilinear-extents.argb32.ref.png | Bin 1210 -> 0 bytes
.../filter-bilinear-extents.rgb24.ref.png | Bin 1210 -> 0 bytes
.../font-matrix-translation.argb32.ref.png | Bin 865 -> 0 bytes
.../font-matrix-translation.rgb24.ref.png | Bin 865 -> 0 bytes
.../ft-show-glyphs-positioning.argb32.ref.png | Bin 3243 -> 0 bytes
.../ft-show-glyphs-positioning.rgb24.ref.png | Bin 3243 -> 0 bytes
test/reference/ft-show-glyphs-table.argb32.ref.png | Bin 9975 -> 0 bytes
test/reference/ft-show-glyphs-table.rgb24.ref.png | Bin 9975 -> 0 bytes
.../ft-text-vertical-layout-type1.argb32.ref.png | Bin 3075 -> 0 bytes
.../ft-text-vertical-layout-type1.rgb24.ref.png | Bin 3075 -> 0 bytes
.../ft-text-vertical-layout-type3.argb32.ref.png | Bin 3609 -> 0 bytes
.../ft-text-vertical-layout-type3.rgb24.ref.png | Bin 3609 -> 0 bytes
test/reference/glyph-cache-pressure.argb32.ref.png | Bin 2858 -> 0 bytes
test/reference/glyph-cache-pressure.rgb24.ref.png | Bin 2858 -> 0 bytes
test/reference/group-unaligned.argb32.ref.png | Bin 494 -> 0 bytes
test/reference/group-unaligned.rgb24.ref.png | Bin 494 -> 0 bytes
test/reference/halo-transform.argb32.ref.png | Bin 15234 -> 0 bytes
test/reference/halo-transform.rgb24.ref.png | Bin 15234 -> 0 bytes
test/reference/halo.argb32.ref.png | Bin 8621 -> 0 bytes
test/reference/halo.rgb24.ref.png | Bin 8621 -> 0 bytes
test/reference/hatchings.argb32.ref.png | Bin 90640 -> 0 bytes
test/reference/hatchings.rgb24.ref.png | Bin 90640 -> 0 bytes
test/reference/horizontal-clip.argb32.ref.png | Bin 113 -> 0 bytes
test/reference/horizontal-clip.rgb24.ref.png | Bin 113 -> 0 bytes
test/reference/huge-linear.argb32.ref.png | Bin 1600 -> 0 bytes
test/reference/huge-linear.rgb24.ref.png | Bin 1600 -> 0 bytes
test/reference/infinite-join.argb32.ref.png | Bin 164 -> 0 bytes
test/reference/infinite-join.rgb24.ref.png | Bin 164 -> 0 bytes
test/reference/joins-loop.argb32.ref.png | Bin 4492 -> 0 bytes
test/reference/joins-loop.rgb24.ref.png | Bin 4492 -> 0 bytes
test/reference/joins-star.argb32.ref.png | Bin 4914 -> 0 bytes
test/reference/joins-star.rgb24.ref.png | Bin 4914 -> 0 bytes
.../large-twin-antialias-mixed.argb32.ref.png | Bin 16442 -> 0 bytes
.../large-twin-antialias-mixed.rgb24.ref.png | Bin 16442 -> 0 bytes
test/reference/leaky-dashed-stroke.argb32.ref.png | Bin 9286 -> 0 bytes
test/reference/leaky-dashed-stroke.rgb24.ref.png | Bin 9286 -> 0 bytes
test/reference/leaky-polygon.argb32.ref.png | Bin 337 -> 0 bytes
test/reference/leaky-polygon.rgb24.ref.png | Bin 337 -> 0 bytes
...line-width-large-overlap-rotated.argb32.ref.png | Bin 439 -> 0 bytes
.../line-width-large-overlap-rotated.rgb24.ref.png | Bin 439 -> 0 bytes
.../line-width-overlap-rotated.argb32.ref.png | Bin 722 -> 0 bytes
.../line-width-overlap-rotated.rgb24.ref.png | Bin 722 -> 0 bytes
test/reference/line-width-scale.argb32.ref.png | Bin 5721 -> 0 bytes
test/reference/line-width-scale.rgb24.ref.png | Bin 5721 -> 0 bytes
test/reference/line-width-tolerance.argb32.ref.png | Bin 168 -> 0 bytes
test/reference/line-width-tolerance.rgb24.ref.png | Bin 168 -> 0 bytes
test/reference/line-width.argb32.ref.png | Bin 178 -> 0 bytes
test/reference/line-width.rgb24.ref.png | Bin 178 -> 0 bytes
.../linear-gradient-reflect.argb32.ref.png | Bin 185 -> 0 bytes
.../linear-gradient-reflect.rgb24.ref.png | Bin 185 -> 0 bytes
.../linear-gradient-subset.argb32.ref.png | Bin 813 -> 0 bytes
.../reference/linear-gradient-subset.rgb24.ref.png | Bin 813 -> 0 bytes
test/reference/linear-gradient.argb32.ref.png | Bin 959 -> 0 bytes
test/reference/linear-gradient.rgb24.ref.png | Bin 959 -> 0 bytes
test/reference/long-dashed-lines.argb32.ref.png | Bin 2548 -> 0 bytes
test/reference/long-dashed-lines.rgb24.ref.png | Bin 2548 -> 0 bytes
test/reference/map-all-to-xlib.argb32.ref.png | Bin 86 -> 0 bytes
test/reference/map-all-to-xlib.rgb24.ref.png | Bin 86 -> 0 bytes
test/reference/map-bit-to-xlib.argb32.ref.png | Bin 103 -> 0 bytes
test/reference/map-bit-to-xlib.rgb24.ref.png | Bin 103 -> 0 bytes
.../mask-transformed-image.argb32.ref.png | Bin 3812 -> 0 bytes
.../reference/mask-transformed-image.rgb24.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-similar.argb32.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-similar.rgb24.ref.png | Bin 3812 -> 0 bytes
.../reference/mask-transformed-xlib.argb32.ref.png | Bin 3809 -> 0 bytes
test/reference/mask-transformed-xlib.rgb24.ref.png | Bin 3809 -> 0 bytes
test/reference/miter-precision.argb32.ref.png | Bin 1030 -> 0 bytes
test/reference/miter-precision.rgb24.ref.png | Bin 1030 -> 0 bytes
.../reference/overlapping-dash-caps.argb32.ref.png | Bin 3952 -> 0 bytes
test/reference/overlapping-dash-caps.rgb24.ref.png | Bin 3952 -> 0 bytes
.../paint-with-alpha-clip-mask.argb32.ref.png | Bin 351 -> 0 bytes
.../paint-with-alpha-clip-mask.rgb24.ref.png | Bin 351 -> 0 bytes
.../partial-clip-text-bottom.argb32.ref.png | Bin 261 -> 0 bytes
.../partial-clip-text-bottom.rgb24.ref.png | Bin 261 -> 0 bytes
.../partial-clip-text-left.argb32.ref.png | Bin 301 -> 0 bytes
.../reference/partial-clip-text-left.rgb24.ref.png | Bin 301 -> 0 bytes
.../partial-clip-text-right.argb32.ref.png | Bin 155 -> 0 bytes
.../partial-clip-text-right.rgb24.ref.png | Bin 155 -> 0 bytes
.../reference/partial-clip-text-top.argb32.ref.png | Bin 181 -> 0 bytes
test/reference/partial-clip-text-top.rgb24.ref.png | Bin 181 -> 0 bytes
test/reference/path-append.argb32.ref.png | Bin 6309 -> 0 bytes
test/reference/path-append.rgb24.ref.png | Bin 6309 -> 0 bytes
test/reference/path-stroke-twice.argb32.ref.png | Bin 240 -> 0 bytes
test/reference/path-stroke-twice.rgb24.ref.png | Bin 240 -> 0 bytes
test/reference/pthread-show-text.argb32.ref.png | Bin 30199 -> 0 bytes
test/reference/pthread-show-text.rgb24.ref.png | Bin 30199 -> 0 bytes
test/reference/push-group-color.argb32.ref.png | Bin 2976 -> 0 bytes
test/reference/push-group-color.rgb24.ref.png | Bin 2976 -> 0 bytes
test/reference/random-clip.argb32.ref.png | Bin 525469 -> 0 bytes
test/reference/random-clip.rgb24.ref.png | Bin 525469 -> 0 bytes
.../random-intersections-curves-eo.argb32.ref.png | Bin 244656 -> 0 bytes
.../random-intersections-curves-eo.rgb24.ref.png | Bin 244656 -> 0 bytes
.../random-intersections-curves-nz.argb32.ref.png | Bin 264449 -> 0 bytes
.../random-intersections-curves-nz.rgb24.ref.png | Bin 264449 -> 0 bytes
.../random-intersections-eo.argb32.ref.png | Bin 135556 -> 0 bytes
.../random-intersections-eo.rgb24.ref.png | Bin 135556 -> 0 bytes
.../random-intersections-nonzero.argb32.ref.png | Bin 141582 -> 0 bytes
.../random-intersections-nonzero.rgb24.ref.png | Bin 141582 -> 0 bytes
test/reference/record-fill-alpha.argb32.ref.png | Bin 2822 -> 0 bytes
test/reference/record-fill-alpha.rgb24.ref.png | Bin 2822 -> 0 bytes
.../record-paint-alpha-clip-mask.argb32.ref.png | Bin 321 -> 0 bytes
.../record-paint-alpha-clip-mask.rgb24.ref.png | Bin 321 -> 0 bytes
.../record-paint-alpha-clip.argb32.ref.png | Bin 290 -> 0 bytes
.../record-paint-alpha-clip.rgb24.ref.png | Bin 290 -> 0 bytes
.../record-select-font-face.argb32.ref.png | Bin 2250 -> 0 bytes
.../record-select-font-face.rgb24.ref.png | Bin 2250 -> 0 bytes
.../record1414x-fill-alpha.argb32.ref.png | Bin 4244 -> 0 bytes
.../reference/record1414x-fill-alpha.rgb24.ref.png | Bin 4244 -> 0 bytes
...ecord1414x-paint-alpha-clip-mask.argb32.ref.png | Bin 544 -> 0 bytes
...record1414x-paint-alpha-clip-mask.rgb24.ref.png | Bin 544 -> 0 bytes
.../record1414x-paint-alpha-clip.argb32.ref.png | Bin 378 -> 0 bytes
.../record1414x-paint-alpha-clip.rgb24.ref.png | Bin 378 -> 0 bytes
...cord1414x-paint-alpha-solid-clip.argb32.ref.png | Bin 317 -> 0 bytes
...ecord1414x-paint-alpha-solid-clip.rgb24.ref.png | Bin 317 -> 0 bytes
.../record1414x-paint-alpha.argb32.ref.png | Bin 265 -> 0 bytes
.../record1414x-paint-alpha.rgb24.ref.png | Bin 265 -> 0 bytes
test/reference/record1414x-paint.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/record1414x-paint.rgb24.ref.png | Bin 95 -> 0 bytes
.../record1414x-select-font-face.argb32.ref.png | Bin 3177 -> 0 bytes
.../record1414x-select-font-face.rgb24.ref.png | Bin 3177 -> 0 bytes
.../record1414x-self-intersecting.argb32.ref.png | Bin 394 -> 0 bytes
.../record1414x-self-intersecting.rgb24.ref.png | Bin 394 -> 0 bytes
test/reference/record2x-fill-alpha.argb32.ref.png | Bin 6016 -> 0 bytes
test/reference/record2x-fill-alpha.rgb24.ref.png | Bin 6016 -> 0 bytes
.../record2x-paint-alpha-clip-mask.argb32.ref.png | Bin 543 -> 0 bytes
.../record2x-paint-alpha-clip-mask.rgb24.ref.png | Bin 543 -> 0 bytes
.../record2x-paint-alpha-clip.argb32.ref.png | Bin 322 -> 0 bytes
.../record2x-paint-alpha-clip.rgb24.ref.png | Bin 322 -> 0 bytes
.../record2x-paint-alpha-solid-clip.argb32.ref.png | Bin 281 -> 0 bytes
.../record2x-paint-alpha-solid-clip.rgb24.ref.png | Bin 281 -> 0 bytes
test/reference/record2x-paint-alpha.argb32.ref.png | Bin 291 -> 0 bytes
test/reference/record2x-paint-alpha.rgb24.ref.png | Bin 291 -> 0 bytes
test/reference/record2x-paint.argb32.ref.png | Bin 98 -> 0 bytes
test/reference/record2x-paint.rgb24.ref.png | Bin 98 -> 0 bytes
.../record2x-select-font-face.argb32.ref.png | Bin 4407 -> 0 bytes
.../record2x-select-font-face.rgb24.ref.png | Bin 4407 -> 0 bytes
.../record2x-self-intersecting.argb32.ref.png | Bin 171 -> 0 bytes
.../record2x-self-intersecting.rgb24.ref.png | Bin 171 -> 0 bytes
test/reference/record90-fill-alpha.argb32.ref.png | Bin 2654 -> 0 bytes
test/reference/record90-fill-alpha.rgb24.ref.png | Bin 2654 -> 0 bytes
.../record90-paint-alpha-clip-mask.argb32.ref.png | Bin 317 -> 0 bytes
.../record90-paint-alpha-clip-mask.rgb24.ref.png | Bin 317 -> 0 bytes
.../record90-paint-alpha-clip.argb32.ref.png | Bin 335 -> 0 bytes
.../record90-paint-alpha-clip.rgb24.ref.png | Bin 335 -> 0 bytes
.../record90-paint-alpha-solid-clip.argb32.ref.png | Bin 293 -> 0 bytes
.../record90-paint-alpha-solid-clip.rgb24.ref.png | Bin 293 -> 0 bytes
test/reference/record90-paint-alpha.argb32.ref.png | Bin 105 -> 0 bytes
test/reference/record90-paint-alpha.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/record90-paint.argb32.ref.png | Bin 93 -> 0 bytes
test/reference/record90-paint.rgb24.ref.png | Bin 93 -> 0 bytes
.../record90-select-font-face.argb32.ref.png | Bin 2272 -> 0 bytes
.../record90-select-font-face.rgb24.ref.png | Bin 2272 -> 0 bytes
.../rectilinear-miter-limit.argb32.ref.png | Bin 145 -> 0 bytes
.../rectilinear-miter-limit.rgb24.ref.png | Bin 145 -> 0 bytes
.../rotate-clip-image-surface-paint.argb32.ref.png | Bin 331 -> 0 bytes
.../rotate-clip-image-surface-paint.rgb24.ref.png | Bin 331 -> 0 bytes
test/reference/rotated-clip.argb32.ref.png | Bin 3829 -> 0 bytes
test/reference/rotated-clip.rgb24.ref.png | Bin 3829 -> 0 bytes
.../rounded-rectangle-fill.argb32.ref.png | Bin 787 -> 0 bytes
.../reference/rounded-rectangle-fill.rgb24.ref.png | Bin 787 -> 0 bytes
test/reference/scale-offset-image.argb32.ref.png | Bin 9748 -> 0 bytes
test/reference/scale-offset-image.rgb24.ref.png | Bin 9748 -> 0 bytes
test/reference/scale-offset-similar.argb32.ref.png | Bin 9779 -> 0 bytes
test/reference/scale-offset-similar.rgb24.ref.png | Bin 9779 -> 0 bytes
test/reference/scale-offset-xlib.argb32.ref.png | Bin 9120 -> 0 bytes
test/reference/scale-offset-xlib.rgb24.ref.png | Bin 9120 -> 0 bytes
test/reference/select-font-face.argb32.ref.png | Bin 2250 -> 0 bytes
test/reference/select-font-face.rgb24.ref.png | Bin 2250 -> 0 bytes
test/reference/self-copy.argb32.ref.png | Bin 257 -> 0 bytes
test/reference/self-copy.rgb24.ref.png | Bin 257 -> 0 bytes
test/reference/shape-general-convex.argb32.ref.png | Bin 2539 -> 0 bytes
test/reference/shape-general-convex.rgb24.ref.png | Bin 2539 -> 0 bytes
test/reference/shape-sierpinski.argb32.ref.png | Bin 54850 -> 0 bytes
test/reference/shape-sierpinski.rgb24.ref.png | Bin 54850 -> 0 bytes
test/reference/show-glyphs-advance.argb32.ref.png | Bin 1394 -> 0 bytes
test/reference/show-glyphs-advance.rgb24.ref.png | Bin 1394 -> 0 bytes
.../show-text-current-point.argb32.ref.png | Bin 2151 -> 0 bytes
.../show-text-current-point.rgb24.ref.png | Bin 2151 -> 0 bytes
test/reference/skew-extreme.argb32.ref.png | Bin 799 -> 0 bytes
test/reference/skew-extreme.rgb24.ref.png | Bin 799 -> 0 bytes
test/reference/smask-fill.argb32.ref.png | Bin 1196 -> 0 bytes
test/reference/smask-fill.rgb24.ref.png | Bin 1196 -> 0 bytes
test/reference/smask-image-mask.argb32.ref.png | Bin 619 -> 0 bytes
test/reference/smask-image-mask.rgb24.ref.png | Bin 619 -> 0 bytes
test/reference/smask-mask.argb32.ref.png | Bin 2353 -> 0 bytes
test/reference/smask-mask.rgb24.ref.png | Bin 2353 -> 0 bytes
test/reference/smask-paint.argb32.ref.png | Bin 2469 -> 0 bytes
test/reference/smask-paint.rgb24.ref.png | Bin 2469 -> 0 bytes
test/reference/smask-stroke.argb32.ref.png | Bin 1700 -> 0 bytes
test/reference/smask-stroke.rgb24.ref.png | Bin 1700 -> 0 bytes
test/reference/smask-text.argb32.ref.png | Bin 1661 -> 0 bytes
test/reference/smask-text.rgb24.ref.png | Bin 1661 -> 0 bytes
test/reference/smask.argb32.ref.png | Bin 3422 -> 0 bytes
test/reference/smask.rgb24.ref.png | Bin 3422 -> 0 bytes
test/reference/spline-decomposition.argb32.ref.png | Bin 19520 -> 0 bytes
test/reference/spline-decomposition.rgb24.ref.png | Bin 19520 -> 0 bytes
test/reference/stride-12-xlib.argb32.ref.png | Bin 81121 -> 0 bytes
test/reference/stride-12-xlib.rgb24.ref.png | Bin 81121 -> 0 bytes
test/reference/stroke-clipped.argb32.ref.png | Bin 5857 -> 0 bytes
test/reference/stroke-clipped.rgb24.ref.png | Bin 5857 -> 0 bytes
test/reference/stroke-image.argb32.ref.png | Bin 1424 -> 0 bytes
test/reference/stroke-image.rgb24.ref.png | Bin 1424 -> 0 bytes
test/reference/stroke-pattern.argb32.ref.png | Bin 1510 -> 0 bytes
test/reference/stroke-pattern.rgb24.ref.png | Bin 1510 -> 0 bytes
test/reference/stroke-xlib.argb32.ref.png | Bin 1467 -> 0 bytes
test/reference/stroke-xlib.rgb24.ref.png | Bin 1467 -> 0 bytes
test/reference/subsurface-scale.argb32.ref.png | Bin 5921 -> 0 bytes
test/reference/subsurface-scale.rgb24.ref.png | Bin 5921 -> 0 bytes
test/reference/subsurface.argb32.ref.png | Bin 1811 -> 0 bytes
test/reference/subsurface.rgb24.ref.png | Bin 1811 -> 0 bytes
.../surface-pattern-scale-down.argb32.ref.png | Bin 1326 -> 0 bytes
.../surface-pattern-scale-down.rgb24.ref.png | Bin 1326 -> 0 bytes
.../surface-pattern-scale-up.argb32.ref.png | Bin 4020 -> 0 bytes
.../surface-pattern-scale-up.rgb24.ref.png | Bin 4020 -> 0 bytes
test/reference/surface-pattern.argb32.ref.png | Bin 11088 -> 0 bytes
test/reference/surface-pattern.rgb24.ref.png | Bin 11088 -> 0 bytes
test/reference/text-antialias-gray.argb32.ref.png | Bin 966 -> 0 bytes
test/reference/text-antialias-gray.rgb24.ref.png | Bin 966 -> 0 bytes
.../text-antialias-subpixel-bgr.argb32.ref.png | Bin 1005 -> 0 bytes
.../text-antialias-subpixel-bgr.rgb24.ref.png | Bin 1005 -> 0 bytes
.../text-antialias-subpixel-rgb.argb32.ref.png | Bin 1013 -> 0 bytes
.../text-antialias-subpixel-rgb.rgb24.ref.png | Bin 1013 -> 0 bytes
.../text-antialias-subpixel-vbgr.argb32.ref.png | Bin 985 -> 0 bytes
.../text-antialias-subpixel-vbgr.rgb24.ref.png | Bin 985 -> 0 bytes
.../text-antialias-subpixel-vrgb.argb32.ref.png | Bin 1009 -> 0 bytes
.../text-antialias-subpixel-vrgb.rgb24.ref.png | Bin 1009 -> 0 bytes
.../text-antialias-subpixel.argb32.ref.png | Bin 1013 -> 0 bytes
.../text-antialias-subpixel.rgb24.ref.png | Bin 1013 -> 0 bytes
test/reference/text-glyph-range.argb32.ref.png | Bin 1928 -> 0 bytes
test/reference/text-glyph-range.rgb24.ref.png | Bin 1928 -> 0 bytes
test/reference/text-rotate.argb32.ref.png | Bin 16307 -> 0 bytes
test/reference/text-rotate.rgb24.ref.png | Bin 16307 -> 0 bytes
test/reference/tiger.argb32.ref.png | Bin 94790 -> 0 bytes
test/reference/tiger.rgb24.ref.png | Bin 94790 -> 0 bytes
test/reference/transforms.argb32.ref.png | Bin 348 -> 0 bytes
test/reference/transforms.rgb24.ref.png | Bin 348 -> 0 bytes
test/reference/twin-antialias-gray.argb32.ref.png | Bin 3536 -> 0 bytes
test/reference/twin-antialias-gray.rgb24.ref.png | Bin 3536 -> 0 bytes
test/reference/twin-antialias-mixed.argb32.ref.png | Bin 2359 -> 0 bytes
test/reference/twin-antialias-mixed.rgb24.ref.png | Bin 2359 -> 0 bytes
test/reference/twin-antialias-none.argb32.ref.png | Bin 692 -> 0 bytes
test/reference/twin-antialias-none.rgb24.ref.png | Bin 692 -> 0 bytes
.../twin-antialias-subpixel.argb32.ref.png | Bin 3536 -> 0 bytes
.../twin-antialias-subpixel.rgb24.ref.png | Bin 3536 -> 0 bytes
test/reference/twin.argb32.ref.png | Bin 3536 -> 0 bytes
test/reference/twin.rgb24.ref.png | Bin 3536 -> 0 bytes
test/reference/user-font-proxy.argb32.ref.png | Bin 16981 -> 0 bytes
test/reference/user-font-proxy.rgb24.ref.png | Bin 16981 -> 0 bytes
test/reference/user-font-rescale.argb32.ref.png | Bin 14883 -> 0 bytes
test/reference/user-font-rescale.rgb24.ref.png | Bin 14883 -> 0 bytes
test/reference/user-font.argb32.ref.png | Bin 5889 -> 0 bytes
test/reference/user-font.rgb24.ref.png | Bin 5889 -> 0 bytes
test/reference/world-map-fill.argb32.ref.png | Bin 57407 -> 0 bytes
test/reference/world-map-fill.rgb24.ref.png | Bin 57407 -> 0 bytes
test/reference/world-map-stroke.argb32.ref.png | Bin 65152 -> 0 bytes
test/reference/world-map-stroke.rgb24.ref.png | Bin 65152 -> 0 bytes
test/reference/world-map.argb32.ref.png | Bin 70463 -> 0 bytes
test/reference/world-map.rgb24.ref.png | Bin 70463 -> 0 bytes
359 files changed, 0 insertions(+), 0 deletions(-)
commit 167561f2823767058e2be3a26131b5f820b35c35
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 10:22:41 2014 +0100
tor: Review full-row walker
When updating the quorem between cells, we would lose the overflow
increment as it was only applied locally and not preserved by updating
the quorem.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-tor-scan-converter.c | 86 ++++++++------------
test/reference/aliasing.argb32.ref.png | Bin 106073 -> 104193 bytes
test/reference/aliasing.rgb24.ref.png | Bin 106073 -> 104193 bytes
test/reference/arc-direction.argb32.ref.png | Bin 6491 -> 6473 bytes
test/reference/arc-direction.rgb24.ref.png | Bin 6491 -> 6473 bytes
test/reference/big-little-triangle.argb32.ref.png | Bin 0 -> 409 bytes
test/reference/big-little-triangle.ref.png | Bin 409 -> 0 bytes
test/reference/big-little-triangle.rgb24.ref.png | Bin 329 -> 331 bytes
test/reference/bug-extents.argb32.ref.png | Bin 9257 -> 9264 bytes
test/reference/bug-extents.rgb24.ref.png | Bin 9257 -> 9264 bytes
test/reference/bug-spline.argb32.ref.png | Bin 5462 -> 5490 bytes
test/reference/bug-spline.rgb24.ref.png | Bin 5462 -> 5490 bytes
test/reference/caps-joins-alpha.argb32.ref.png | Bin 2479 -> 2482 bytes
test/reference/caps-joins-alpha.rgb24.ref.png | Bin 2479 -> 2482 bytes
test/reference/clear.argb32.ref.png | Bin 0 -> 692 bytes
test/reference/clear.ref.png | Bin 692 -> 0 bytes
test/reference/clear.rgb24.ref.png | Bin 0 -> 621 bytes
test/reference/clip-disjoint-quad.argb32.ref.png | Bin 1643 -> 1642 bytes
test/reference/clip-disjoint-quad.rgb24.ref.png | Bin 1643 -> 1642 bytes
test/reference/clip-disjoint.argb32.ref.png | Bin 5465 -> 5464 bytes
test/reference/clip-disjoint.rgb24.ref.png | Bin 5465 -> 5464 bytes
test/reference/clip-fill-eo-unbounded.ref.png | Bin 4084 -> 4076 bytes
test/reference/clip-fill-nz-unbounded.ref.png | Bin 4084 -> 4076 bytes
test/reference/clip-fill-rule.argb32.ref.png | Bin 0 -> 437 bytes
test/reference/clip-fill-rule.ref.png | Bin 437 -> 0 bytes
test/reference/clip-fill-rule.rgb24.ref.png | Bin 0 -> 388 bytes
.../clip-group-shapes-circles.argb32.ref.png | Bin 1526 -> 1533 bytes
.../clip-group-shapes-circles.rgb24.ref.png | Bin 1526 -> 1533 bytes
test/reference/clip-intersect.argb32.ref.png | Bin 220 -> 223 bytes
test/reference/clip-intersect.rgb24.ref.png | Bin 220 -> 223 bytes
test/reference/clip-operator.argb32.ref.png | Bin 0 -> 8685 bytes
test/reference/clip-operator.rgb24.ref.png | Bin 0 -> 3458 bytes
test/reference/clip-shape.argb32.ref.png | Bin 2945 -> 2923 bytes
test/reference/clip-shape.rgb24.ref.png | Bin 2945 -> 2923 bytes
.../reference/clip-stroke-unbounded.argb32.ref.png | Bin 4105 -> 0 bytes
test/reference/clip-stroke-unbounded.ref.png | Bin 4127 -> 4104 bytes
test/reference/clip-stroke-unbounded.rgb24.ref.png | Bin 3517 -> 0 bytes
test/reference/clip-twice.ref.png | Bin 1344 -> 1357 bytes
test/reference/degenerate-arc.argb32.ref.png | Bin 639 -> 646 bytes
test/reference/degenerate-arc.rgb24.ref.png | Bin 639 -> 646 bytes
test/reference/fill-alpha-pattern.argb32.ref.png | Bin 3381 -> 3489 bytes
test/reference/fill-alpha-pattern.rgb24.ref.png | Bin 3381 -> 3489 bytes
test/reference/fill-alpha.argb32.ref.png | Bin 2815 -> 2815 bytes
test/reference/fill-alpha.rgb24.ref.png | Bin 2815 -> 2815 bytes
test/reference/fill-degenerate-sort-order.ref.png | Bin 2410 -> 2414 bytes
test/reference/fill-rule.argb32.ref.png | Bin 0 -> 2086 bytes
test/reference/fill-rule.ref.png | Bin 2086 -> 0 bytes
test/reference/fill-rule.rgb24.ref.png | Bin 0 -> 1797 bytes
.../ft-text-vertical-layout-type1.argb32.ref.png | Bin 3084 -> 3075 bytes
.../ft-text-vertical-layout-type1.rgb24.ref.png | Bin 3084 -> 3075 bytes
.../ft-text-vertical-layout-type3.argb32.ref.png | Bin 3610 -> 3609 bytes
.../ft-text-vertical-layout-type3.rgb24.ref.png | Bin 3610 -> 3609 bytes
test/reference/halo-transform.argb32.ref.png | Bin 15231 -> 15234 bytes
test/reference/halo-transform.rgb24.ref.png | Bin 15231 -> 15234 bytes
test/reference/halo.argb32.ref.png | Bin 8666 -> 8621 bytes
test/reference/halo.rgb24.ref.png | Bin 8666 -> 8621 bytes
test/reference/hatchings.argb32.ref.png | Bin 91041 -> 90640 bytes
test/reference/hatchings.rgb24.ref.png | Bin 91041 -> 90640 bytes
test/reference/inverted-clip.rgb24.ref.png | Bin 1333 -> 1323 bytes
test/reference/leaky-dashed-stroke.argb32.ref.png | Bin 9286 -> 9286 bytes
test/reference/leaky-dashed-stroke.rgb24.ref.png | Bin 9286 -> 9286 bytes
...line-width-large-overlap-rotated.argb32.ref.png | Bin 436 -> 439 bytes
.../line-width-large-overlap-rotated.rgb24.ref.png | Bin 436 -> 439 bytes
.../line-width-overlap-rotated.argb32.ref.png | Bin 716 -> 722 bytes
.../line-width-overlap-rotated.rgb24.ref.png | Bin 716 -> 722 bytes
.../linear-gradient-subset.argb32.ref.png | Bin 812 -> 813 bytes
.../reference/linear-gradient-subset.rgb24.ref.png | Bin 812 -> 813 bytes
test/reference/linear-gradient.argb32.ref.png | Bin 960 -> 959 bytes
test/reference/linear-gradient.rgb24.ref.png | Bin 960 -> 959 bytes
test/reference/mask-alpha.ref.png | Bin 644 -> 642 bytes
test/reference/mask.argb32.ref.png | Bin 0 -> 8681 bytes
test/reference/mask.ref.png | Bin 8565 -> 0 bytes
test/reference/mask.rgb24.ref.png | Bin 0 -> 7215 bytes
test/reference/operator-alpha.argb32.ref.png | Bin 0 -> 280 bytes
test/reference/operator-alpha.ref.png | Bin 280 -> 0 bytes
test/reference/operator-alpha.rgb24.ref.png | Bin 0 -> 205 bytes
test/reference/operator-clear.argb32.ref.png | Bin 1068 -> 1067 bytes
test/reference/operator-clear.ref.png | Bin 1071 -> 0 bytes
test/reference/operator-clear.rgb24.ref.png | Bin 0 -> 940 bytes
test/reference/operator-source.argb32.ref.png | Bin 0 -> 5626 bytes
test/reference/operator-source.ref.png | Bin 5614 -> 0 bytes
test/reference/operator-source.rgb24.ref.png | Bin 0 -> 4026 bytes
test/reference/operator.argb32.ref.png | Bin 0 -> 238 bytes
test/reference/operator.ref.png | Bin 238 -> 0 bytes
test/reference/operator.rgb24.ref.png | Bin 0 -> 189 bytes
test/reference/over-above-source.argb32.ref.png | Bin 0 -> 557 bytes
test/reference/over-above-source.ref.png | Bin 557 -> 0 bytes
test/reference/over-above-source.rgb24.ref.png | Bin 0 -> 459 bytes
test/reference/over-around-source.argb32.ref.png | Bin 0 -> 633 bytes
test/reference/over-around-source.ref.png | Bin 633 -> 0 bytes
test/reference/over-around-source.rgb24.ref.png | Bin 0 -> 504 bytes
test/reference/over-below-source.argb32.ref.png | Bin 0 -> 447 bytes
test/reference/over-below-source.ref.png | Bin 447 -> 0 bytes
test/reference/over-below-source.rgb24.ref.png | Bin 0 -> 389 bytes
test/reference/over-between-source.argb32.ref.png | Bin 0 -> 607 bytes
test/reference/over-between-source.ref.png | Bin 607 -> 0 bytes
test/reference/over-between-source.rgb24.ref.png | Bin 0 -> 482 bytes
test/reference/path-append.argb32.ref.png | Bin 6297 -> 6309 bytes
test/reference/path-append.rgb24.ref.png | Bin 6297 -> 6309 bytes
test/reference/push-group-color.argb32.ref.png | Bin 0 -> 2976 bytes
test/reference/push-group-color.ref.png | Bin 2961 -> 0 bytes
test/reference/push-group-color.rgb24.ref.png | Bin 0 -> 2976 bytes
test/reference/push-group.argb32.ref.png | Bin 3097 -> 3116 bytes
test/reference/push-group.ref.png | Bin 3062 -> 0 bytes
test/reference/push-group.rgb24.ref.png | Bin 0 -> 2929 bytes
test/reference/random-clip.argb32.ref.png | Bin 525539 -> 525469 bytes
test/reference/random-clip.rgb24.ref.png | Bin 525539 -> 525469 bytes
.../random-intersections-curves-eo.argb32.ref.png | Bin 244655 -> 244656 bytes
.../random-intersections-curves-eo.rgb24.ref.png | Bin 244655 -> 244656 bytes
.../random-intersections-curves-nz.argb32.ref.png | Bin 264447 -> 264449 bytes
.../random-intersections-curves-nz.rgb24.ref.png | Bin 264447 -> 264449 bytes
.../random-intersections-eo.argb32.ref.png | Bin 135591 -> 135556 bytes
.../random-intersections-eo.rgb24.ref.png | Bin 135591 -> 135556 bytes
.../random-intersections-nonzero.argb32.ref.png | Bin 141598 -> 141582 bytes
.../random-intersections-nonzero.rgb24.ref.png | Bin 141598 -> 141582 bytes
test/reference/record2x-fill-alpha.argb32.ref.png | Bin 5986 -> 6016 bytes
test/reference/record2x-fill-alpha.rgb24.ref.png | Bin 5986 -> 6016 bytes
.../rotate-clip.surface-paint.image.argb32.ref.png | Bin 0 -> 340 bytes
.../rotate-clip.surface-paint.image.rgb24.ref.png | Bin 0 -> 340 bytes
test/reference/scale-offset-similar.argb32.ref.png | Bin 9847 -> 9779 bytes
test/reference/scale-offset-similar.rgb24.ref.png | Bin 9847 -> 9779 bytes
test/reference/smask-fill.argb32.ref.png | Bin 1201 -> 1196 bytes
test/reference/smask-fill.rgb24.ref.png | Bin 1201 -> 1196 bytes
test/reference/smask-stroke.argb32.ref.png | Bin 1707 -> 1700 bytes
test/reference/smask-stroke.rgb24.ref.png | Bin 1707 -> 1700 bytes
test/reference/smask.argb32.ref.png | Bin 3436 -> 3422 bytes
test/reference/smask.rgb24.ref.png | Bin 3436 -> 3422 bytes
.../surface-pattern-operator.argb32.ref.png | Bin 0 -> 5107 bytes
test/reference/surface-pattern-operator.ref.png | Bin 5217 -> 0 bytes
.../surface-pattern-operator.rgb24.ref.png | Bin 0 -> 1926 bytes
test/reference/text-rotate.argb32.ref.png | Bin 16518 -> 16307 bytes
test/reference/text-rotate.rgb24.ref.png | Bin 16518 -> 16307 bytes
test/reference/tiger.argb32.ref.png | Bin 94714 -> 94790 bytes
test/reference/tiger.rgb24.ref.png | Bin 94714 -> 94790 bytes
test/reference/trap-clip.argb32.ref.png | Bin 0 -> 5972 bytes
test/reference/trap-clip.ref.png | Bin 5826 -> 0 bytes
test/reference/trap-clip.rgb24.ref.png | Bin 0 -> 5462 bytes
test/reference/unbounded-operator.argb32.ref.png | Bin 2763 -> 2755 bytes
test/reference/unbounded-operator.ref.png | Bin 2781 -> 0 bytes
test/reference/unbounded-operator.rgb24.ref.png | Bin 0 -> 1328 bytes
test/reference/user-font-proxy.argb32.ref.png | Bin 16971 -> 16981 bytes
test/reference/user-font-proxy.rgb24.ref.png | Bin 16971 -> 16981 bytes
test/reference/user-font.argb32.ref.png | Bin 5882 -> 5889 bytes
test/reference/user-font.rgb24.ref.png | Bin 5882 -> 5889 bytes
144 files changed, 34 insertions(+), 52 deletions(-)
commit ff23afd5f26e46e9b3c1fbfa31b2809f4329c4f0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 12:25:56 2014 +0100
test: Include coverage in the normal test run
Currently coverage is marked as slow. It is slower than the typical
test, but it is quite a useful check on our rasterisation quality
without going too far overboard (unlike partial-coverage!).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/coverage.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
commit 03c3d4b7c159a3004071522bac2461e553fec211
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 08:44:43 2014 +0100
tor: Fix loss of precision from projection onto sample grid
The goal is to preserve the precision in the gradients of the edges and
only apply the projection into the final cell location. We also include
the half-subrow offset as spotted by Massimo.
References: https://bugs.freedesktop.org/show_bug.cgi?id=84396
Testcase: coverage-rhombus
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-tor-scan-converter.c | 331 ++++++++++----------
test/reference/a1-clip-fill-rule.ref.png | Bin 0 -> 236 bytes
test/reference/a8-clear.argb32.ref.png | Bin 271 -> 269 bytes
test/reference/a8-clear.rgb24.ref.png | Bin 271 -> 269 bytes
test/reference/aliasing.argb32.ref.png | Bin 104324 -> 106073 bytes
test/reference/aliasing.rgb24.ref.png | Bin 104324 -> 106073 bytes
test/reference/alpha-similar.ref.png | Bin 0 -> 99 bytes
test/reference/arc-direction.argb32.ref.png | Bin 6380 -> 6491 bytes
test/reference/arc-direction.rgb24.ref.png | Bin 6380 -> 6491 bytes
test/reference/big-empty-box.ref.png | Bin 0 -> 111 bytes
test/reference/big-empty-triangle.ref.png | Bin 0 -> 111 bytes
test/reference/big-little-box.ref.png | Bin 0 -> 169 bytes
test/reference/big-little-triangle.ref.png | Bin 0 -> 409 bytes
test/reference/big-little-triangle.rgb24.ref.png | Bin 0 -> 329 bytes
test/reference/bitmap-font.ref.png | Bin 0 -> 950 bytes
test/reference/bug-extents.argb32.ref.png | Bin 9251 -> 9257 bytes
test/reference/bug-extents.rgb24.ref.png | Bin 9251 -> 9257 bytes
test/reference/bug-source-cu.ref.png | Bin 0 -> 3815 bytes
test/reference/bug-spline.argb32.ref.png | Bin 0 -> 5462 bytes
test/reference/bug-spline.ref.png | Bin 5577 -> 0 bytes
test/reference/bug-spline.rgb24.ref.png | Bin 0 -> 5462 bytes
test/reference/caps-joins-alpha.argb32.ref.png | Bin 0 -> 2479 bytes
test/reference/caps-joins-alpha.ref.png | Bin 2643 -> 0 bytes
test/reference/caps-joins-alpha.rgb24.ref.png | Bin 0 -> 2479 bytes
test/reference/caps-joins-curve.argb32.ref.png | Bin 0 -> 5972 bytes
test/reference/caps-joins-curve.ref.png | Bin 6228 -> 0 bytes
test/reference/caps-joins-curve.rgb24.ref.png | Bin 0 -> 5972 bytes
test/reference/caps-tails-curve.argb32.ref.png | Bin 0 -> 54409 bytes
test/reference/caps-tails-curve.ref.png | Bin 54314 -> 0 bytes
test/reference/caps-tails-curve.rgb24.ref.png | Bin 0 -> 54409 bytes
test/reference/clear.ref.png | Bin 0 -> 692 bytes
test/reference/clip-device-offset.ref.png | Bin 0 -> 175 bytes
.../clip-disjoint-hatching.argb32.ref.png | Bin 9022 -> 7918 bytes
.../reference/clip-disjoint-hatching.rgb24.ref.png | Bin 9022 -> 7918 bytes
test/reference/clip-disjoint-quad.argb32.ref.png | Bin 0 -> 1643 bytes
test/reference/clip-disjoint-quad.ref.png | Bin 1592 -> 0 bytes
test/reference/clip-disjoint-quad.rgb24.ref.png | Bin 0 -> 1643 bytes
test/reference/clip-disjoint.argb32.ref.png | Bin 0 -> 5465 bytes
test/reference/clip-disjoint.ref.png | Bin 5438 -> 0 bytes
test/reference/clip-disjoint.rgb24.ref.png | Bin 0 -> 5465 bytes
test/reference/clip-fill-eo-unbounded.ref.png | Bin 0 -> 4084 bytes
test/reference/clip-fill-nz-unbounded.ref.png | Bin 0 -> 4084 bytes
.../reference/clip-fill-rule-pixel-aligned.ref.png | Bin 0 -> 195 bytes
test/reference/clip-fill-rule.ref.png | Bin 0 -> 437 bytes
test/reference/clip-fill.argb32.ref.png | Bin 1031 -> 1064 bytes
test/reference/clip-fill.rgb24.ref.png | Bin 1031 -> 1064 bytes
.../clip-group-shapes-circles.argb32.ref.png | Bin 1525 -> 1526 bytes
.../clip-group-shapes-circles.rgb24.ref.png | Bin 1525 -> 1526 bytes
test/reference/clip-intersect.argb32.ref.png | Bin 200 -> 220 bytes
test/reference/clip-intersect.rgb24.ref.png | Bin 200 -> 220 bytes
test/reference/clip-nesting.ref.png | Bin 0 -> 1094 bytes
test/reference/clip-operator.ref.png | Bin 0 -> 8257 bytes
test/reference/clip-push-group.argb32.ref.png | Bin 164 -> 164 bytes
test/reference/clip-push-group.rgb24.ref.png | Bin 164 -> 164 bytes
test/reference/clip-shape.argb32.ref.png | Bin 3073 -> 2945 bytes
test/reference/clip-shape.rgb24.ref.png | Bin 3073 -> 2945 bytes
.../reference/clip-stroke-unbounded.argb32.ref.png | Bin 0 -> 4105 bytes
test/reference/clip-stroke-unbounded.ref.png | Bin 0 -> 4127 bytes
test/reference/clip-stroke-unbounded.rgb24.ref.png | Bin 0 -> 3517 bytes
test/reference/clip-stroke.argb32.ref.png | Bin 0 -> 1551 bytes
test/reference/clip-stroke.ref.png | Bin 1419 -> 0 bytes
test/reference/clip-stroke.rgb24.ref.png | Bin 0 -> 1551 bytes
test/reference/clip-text.argb32.ref.png | Bin 928 -> 918 bytes
test/reference/clip-text.rgb24.ref.png | Bin 928 -> 918 bytes
test/reference/clip-twice.ref.png | Bin 0 -> 1344 bytes
test/reference/clip-unbounded.ref.png | Bin 0 -> 100 bytes
test/reference/clipped-group.argb32.ref.png | Bin 342 -> 315 bytes
test/reference/clipped-group.rgb24.ref.png | Bin 342 -> 315 bytes
test/reference/dash-curve.argb32.ref.png | Bin 0 -> 41069 bytes
test/reference/dash-curve.ref.png | Bin 40945 -> 0 bytes
test/reference/dash-curve.rgb24.ref.png | Bin 0 -> 41069 bytes
test/reference/dash-zero-length.ref.png | Bin 0 -> 230 bytes
test/reference/degenerate-arc.argb32.ref.png | Bin 0 -> 639 bytes
test/reference/degenerate-arc.ref.png | Bin 692 -> 0 bytes
test/reference/degenerate-arc.rgb24.ref.png | Bin 0 -> 639 bytes
test/reference/degenerate-dash.argb32.ref.png | Bin 0 -> 1908 bytes
test/reference/degenerate-dash.ref.png | Bin 1985 -> 0 bytes
test/reference/degenerate-dash.rgb24.ref.png | Bin 0 -> 1908 bytes
test/reference/degenerate-path.ref.png | Bin 0 -> 251 bytes
test/reference/device-offset-positive.ref.png | Bin 0 -> 139 bytes
test/reference/device-offset.ref.png | Bin 0 -> 137 bytes
test/reference/egl-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/extended-blend-alpha-mask.ref.png | Bin 0 -> 9221 bytes
test/reference/extended-blend-alpha.ref.png | Bin 0 -> 9406 bytes
test/reference/extended-blend-mask.ref.png | Bin 0 -> 3971 bytes
test/reference/extended-blend-solid-alpha.ref.png | Bin 0 -> 9406 bytes
test/reference/extended-blend-solid.ref.png | Bin 0 -> 4063 bytes
test/reference/extended-blend.ref.png | Bin 0 -> 4063 bytes
test/reference/fallback.ref.png | Bin 0 -> 4106 bytes
test/reference/fill-alpha.argb32.ref.png | Bin 2736 -> 2815 bytes
test/reference/fill-alpha.rgb24.ref.png | Bin 2736 -> 2815 bytes
.../fill-and-stroke-alpha-add.argb32.ref.png | Bin 556 -> 558 bytes
.../fill-and-stroke-alpha-add.rgb24.ref.png | Bin 556 -> 558 bytes
.../reference/fill-and-stroke-alpha.argb32.ref.png | Bin 508 -> 513 bytes
test/reference/fill-and-stroke-alpha.rgb24.ref.png | Bin 508 -> 513 bytes
test/reference/fill-and-stroke.ref.png | Bin 0 -> 328 bytes
test/reference/fill-degenerate-sort-order.ref.png | Bin 0 -> 2410 bytes
test/reference/fill-empty.ref.png | Bin 0 -> 99 bytes
test/reference/fill-missed-stop.ref.png | Bin 0 -> 455 bytes
test/reference/fill-rule.ref.png | Bin 0 -> 2086 bytes
test/reference/fill.image.argb32.ref.png | Bin 0 -> 1482 bytes
test/reference/fill.image.rgb24.ref.png | Bin 0 -> 1482 bytes
test/reference/finer-grained-fallbacks.ref.png | Bin 0 -> 1151 bytes
.../ft-text-vertical-layout-type1.argb32.ref.png | Bin 3062 -> 3084 bytes
.../ft-text-vertical-layout-type1.rgb24.ref.png | Bin 3062 -> 3084 bytes
.../ft-text-vertical-layout-type3.argb32.ref.png | Bin 0 -> 3610 bytes
.../ft-text-vertical-layout-type3.ref.png | Bin 3608 -> 0 bytes
.../ft-text-vertical-layout-type3.rgb24.ref.png | Bin 0 -> 3610 bytes
test/reference/gl-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/gradient-alpha.ref.png | Bin 0 -> 125 bytes
test/reference/gradient-constant-alpha.ref.png | Bin 0 -> 111 bytes
test/reference/gradient-zero-stops-mask.ref.png | Bin 0 -> 86 bytes
test/reference/gradient-zero-stops.ref.png | Bin 0 -> 105 bytes
test/reference/group-unaligned.argb32.ref.png | Bin 427 -> 494 bytes
test/reference/group-unaligned.rgb24.ref.png | Bin 427 -> 494 bytes
test/reference/halo-transform.argb32.ref.png | Bin 15063 -> 15231 bytes
test/reference/halo-transform.rgb24.ref.png | Bin 15063 -> 15231 bytes
test/reference/halo.argb32.ref.png | Bin 0 -> 8666 bytes
test/reference/halo.ref.png | Bin 8774 -> 0 bytes
test/reference/halo.rgb24.ref.png | Bin 0 -> 8666 bytes
test/reference/hatchings.argb32.ref.png | Bin 0 -> 91041 bytes
test/reference/hatchings.ref.png | Bin 95333 -> 0 bytes
test/reference/hatchings.rgb24.ref.png | Bin 0 -> 91041 bytes
test/reference/image-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/inverted-clip.rgb24.ref.png | Bin 0 -> 1333 bytes
.../large-twin-antialias-mixed.argb32.ref.png | Bin 16660 -> 16442 bytes
.../large-twin-antialias-mixed.rgb24.ref.png | Bin 16660 -> 16442 bytes
test/reference/leaky-dashed-stroke.argb32.ref.png | Bin 9387 -> 9286 bytes
test/reference/leaky-dashed-stroke.rgb24.ref.png | Bin 9387 -> 9286 bytes
...line-width-large-overlap-rotated.argb32.ref.png | Bin 427 -> 436 bytes
.../line-width-large-overlap-rotated.rgb24.ref.png | Bin 427 -> 436 bytes
.../line-width-overlap-rotated.argb32.ref.png | Bin 828 -> 716 bytes
.../line-width-overlap-rotated.rgb24.ref.png | Bin 828 -> 716 bytes
test/reference/linear-gradient-one-stop.ref.png | Bin 0 -> 225 bytes
.../linear-gradient-subset.argb32.ref.png | Bin 820 -> 812 bytes
.../reference/linear-gradient-subset.rgb24.ref.png | Bin 820 -> 812 bytes
test/reference/linear-gradient.argb32.ref.png | Bin 974 -> 960 bytes
test/reference/linear-gradient.rgb24.ref.png | Bin 974 -> 960 bytes
test/reference/mask-alpha.ref.png | Bin 0 -> 644 bytes
test/reference/mask-ctm.ref.png | Bin 0 -> 129 bytes
test/reference/mask-surface-ctm.ref.png | Bin 0 -> 129 bytes
test/reference/mask.ref.png | Bin 0 -> 8565 bytes
test/reference/new-sub-path.ref.png | Bin 0 -> 408 bytes
test/reference/nil-surface.ref.png | Bin 0 -> 107 bytes
test/reference/operator-alpha.ref.png | Bin 0 -> 280 bytes
test/reference/operator-clear.argb32.ref.png | Bin 0 -> 1068 bytes
test/reference/operator-clear.ref.png | Bin 0 -> 1071 bytes
test/reference/operator-source.ref.png | Bin 0 -> 5614 bytes
test/reference/operator.ref.png | Bin 0 -> 238 bytes
test/reference/over-above-source.ref.png | Bin 0 -> 557 bytes
test/reference/over-around-source.ref.png | Bin 0 -> 633 bytes
test/reference/over-below-source.ref.png | Bin 0 -> 447 bytes
test/reference/over-between-source.ref.png | Bin 0 -> 607 bytes
test/reference/overlapping-boxes.ref.png | Bin 0 -> 179 bytes
.../reference/overlapping-dash-caps.argb32.ref.png | Bin 0 -> 3952 bytes
test/reference/overlapping-dash-caps.ref.png | Bin 3979 -> 0 bytes
test/reference/overlapping-dash-caps.rgb24.ref.png | Bin 0 -> 3952 bytes
test/reference/overlapping-glyphs.ref.png | Bin 0 -> 2717 bytes
.../paint-with-alpha-clip-mask.argb32.ref.png | Bin 340 -> 351 bytes
.../paint-with-alpha-clip-mask.rgb24.ref.png | Bin 340 -> 351 bytes
test/reference/pass-through.ref.png | Bin 0 -> 221 bytes
test/reference/path-append.argb32.ref.png | Bin 6144 -> 6297 bytes
test/reference/path-append.rgb24.ref.png | Bin 6144 -> 6297 bytes
test/reference/pdf-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/pixman-rotate.ref.png | Bin 0 -> 260 bytes
test/reference/ps-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/push-group-color.argb32.ref.png | Bin 2892 -> 0 bytes
test/reference/push-group-color.ref.png | Bin 0 -> 2961 bytes
test/reference/push-group-color.rgb24.ref.png | Bin 2892 -> 0 bytes
test/reference/push-group.argb32.ref.png | Bin 0 -> 3097 bytes
test/reference/push-group.ref.png | Bin 0 -> 3062 bytes
test/reference/quartz-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/radial-gradient-source.ref.png | Bin 0 -> 408848 bytes
test/reference/random-clip.argb32.ref.png | Bin 0 -> 525539 bytes
test/reference/random-clip.ref.png | Bin 526034 -> 0 bytes
test/reference/random-clip.rgb24.ref.png | Bin 0 -> 525539 bytes
.../random-intersections-curves-eo.argb32.ref.png | Bin 245848 -> 244655 bytes
.../random-intersections-curves-eo.rgb24.ref.png | Bin 245848 -> 244655 bytes
.../random-intersections-curves-nz.argb32.ref.png | Bin 265249 -> 264447 bytes
.../random-intersections-curves-nz.rgb24.ref.png | Bin 265249 -> 264447 bytes
.../random-intersections-eo.argb32.ref.png | Bin 136632 -> 135591 bytes
.../random-intersections-eo.rgb24.ref.png | Bin 136632 -> 135591 bytes
.../random-intersections-nonzero.argb32.ref.png | Bin 142139 -> 141598 bytes
.../random-intersections-nonzero.rgb24.ref.png | Bin 142139 -> 141598 bytes
test/reference/record-fill-alpha.argb32.ref.png | Bin 0 -> 2822 bytes
test/reference/record-fill-alpha.ref.png | Bin 2812 -> 0 bytes
test/reference/record-fill-alpha.rgb24.ref.png | Bin 0 -> 2822 bytes
.../record-paint-alpha-clip-mask.argb32.ref.png | Bin 0 -> 321 bytes
.../reference/record-paint-alpha-clip-mask.ref.png | Bin 318 -> 0 bytes
.../record-paint-alpha-clip-mask.rgb24.ref.png | Bin 0 -> 321 bytes
.../record1414x-fill-alpha.argb32.ref.png | Bin 0 -> 4244 bytes
test/reference/record1414x-fill-alpha.ref.png | Bin 4212 -> 0 bytes
.../reference/record1414x-fill-alpha.rgb24.ref.png | Bin 0 -> 4244 bytes
...ecord1414x-paint-alpha-clip-mask.argb32.ref.png | Bin 560 -> 544 bytes
...record1414x-paint-alpha-clip-mask.rgb24.ref.png | Bin 560 -> 544 bytes
test/reference/record2x-fill-alpha.argb32.ref.png | Bin 0 -> 5986 bytes
test/reference/record2x-fill-alpha.ref.png | Bin 5950 -> 0 bytes
test/reference/record2x-fill-alpha.rgb24.ref.png | Bin 0 -> 5986 bytes
.../record2x-paint-alpha-clip-mask.argb32.ref.png | Bin 534 -> 543 bytes
.../record2x-paint-alpha-clip-mask.rgb24.ref.png | Bin 534 -> 543 bytes
test/reference/record90-fill-alpha.argb32.ref.png | Bin 0 -> 2654 bytes
test/reference/record90-fill-alpha.ref.png | Bin 2650 -> 0 bytes
test/reference/record90-fill-alpha.rgb24.ref.png | Bin 0 -> 2654 bytes
.../record90-paint-alpha-clip-mask.argb32.ref.png | Bin 0 -> 317 bytes
.../record90-paint-alpha-clip-mask.ref.png | Bin 316 -> 0 bytes
.../record90-paint-alpha-clip-mask.rgb24.ref.png | Bin 0 -> 317 bytes
.../record90-paint-alpha-clip.argb32.ref.png | Bin 0 -> 335 bytes
test/reference/record90-paint-alpha-clip.ref.png | Bin 320 -> 0 bytes
.../record90-paint-alpha-clip.rgb24.ref.png | Bin 0 -> 335 bytes
.../record90-paint-alpha-solid-clip.argb32.ref.png | Bin 254 -> 293 bytes
.../record90-paint-alpha-solid-clip.rgb24.ref.png | Bin 254 -> 293 bytes
.../recording-surface-extend-none.ref.png | Bin 0 -> 3153 bytes
.../reference/recording-surface-extend-pad.ref.png | Bin 0 -> 11200 bytes
.../recording-surface-extend-reflect.ref.png | Bin 0 -> 23967 bytes
.../recording-surface-extend-repeat.ref.png | Bin 0 -> 24091 bytes
test/reference/recording-surface-over.ref.png | Bin 0 -> 3153 bytes
test/reference/recording-surface-source.ref.png | Bin 0 -> 3153 bytes
test/reference/rel-path.ref.png | Bin 0 -> 197 bytes
test/reference/rotated-clip.argb32.ref.png | Bin 3773 -> 3829 bytes
test/reference/rotated-clip.rgb24.ref.png | Bin 3773 -> 3829 bytes
test/reference/scale-offset-similar.argb32.ref.png | Bin 9748 -> 9847 bytes
test/reference/scale-offset-similar.rgb24.ref.png | Bin 9748 -> 9847 bytes
test/reference/scale-offset.image.argb32.ref.png | Bin 0 -> 9847 bytes
test/reference/scale-offset.image.rgb24.ref.png | Bin 0 -> 9847 bytes
test/reference/scale-source-surface-paint.ref.png | Bin 0 -> 147 bytes
test/reference/set-source.ref.png | Bin 0 -> 120 bytes
test/reference/shape-general-convex.argb32.ref.png | Bin 2742 -> 2539 bytes
test/reference/shape-general-convex.rgb24.ref.png | Bin 2742 -> 2539 bytes
test/reference/shape-sierpinski.argb32.ref.png | Bin 63714 -> 54850 bytes
test/reference/shape-sierpinski.rgb24.ref.png | Bin 63714 -> 54850 bytes
test/reference/smask-fill.argb32.ref.png | Bin 1197 -> 1201 bytes
test/reference/smask-fill.rgb24.ref.png | Bin 1197 -> 1201 bytes
test/reference/smask-stroke.argb32.ref.png | Bin 1709 -> 1707 bytes
test/reference/smask-stroke.rgb24.ref.png | Bin 1709 -> 1707 bytes
test/reference/smask.argb32.ref.png | Bin 3414 -> 3436 bytes
test/reference/smask.rgb24.ref.png | Bin 3414 -> 3436 bytes
test/reference/source-surface-scale-paint.ref.png | Bin 0 -> 139 bytes
test/reference/stroke-clipped.argb32.ref.png | Bin 0 -> 5857 bytes
test/reference/stroke-clipped.ref.png | Bin 5790 -> 0 bytes
test/reference/stroke-clipped.rgb24.ref.png | Bin 0 -> 5857 bytes
test/reference/stroke-pattern.argb32.ref.png | Bin 1491 -> 1510 bytes
test/reference/stroke-pattern.rgb24.ref.png | Bin 1491 -> 1510 bytes
test/reference/stroke.image.argb32.ref.png | Bin 0 -> 1479 bytes
test/reference/stroke.image.rgb24.ref.png | Bin 0 -> 1479 bytes
test/reference/subsurface-outside-target.ref.png | Bin 0 -> 2063 bytes
test/reference/surface-pattern-operator.ref.png | Bin 0 -> 5217 bytes
test/reference/svg-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/text-pattern.ref.png | Bin 0 -> 3455 bytes
test/reference/text-rotate.argb32.ref.png | Bin 0 -> 16518 bytes
test/reference/text-rotate.ref.png | Bin 16667 -> 0 bytes
test/reference/text-rotate.rgb24.ref.png | Bin 0 -> 16518 bytes
test/reference/tiger.argb32.ref.png | Bin 93916 -> 94714 bytes
test/reference/tiger.rgb24.ref.png | Bin 93916 -> 94714 bytes
test/reference/tighten-bounds.ref.png | Bin 0 -> 9443 bytes
test/reference/trap-clip.ref.png | Bin 0 -> 5826 bytes
test/reference/twin-antialias-gray.argb32.ref.png | Bin 0 -> 3536 bytes
test/reference/twin-antialias-gray.ref.png | Bin 3948 -> 0 bytes
test/reference/twin-antialias-gray.rgb24.ref.png | Bin 0 -> 3536 bytes
test/reference/twin-antialias-mixed.argb32.ref.png | Bin 2230 -> 2359 bytes
test/reference/twin-antialias-mixed.rgb24.ref.png | Bin 2230 -> 2359 bytes
test/reference/twin-antialias-none.argb32.ref.png | Bin 690 -> 692 bytes
test/reference/twin-antialias-none.rgb24.ref.png | Bin 690 -> 692 bytes
.../twin-antialias-subpixel.argb32.ref.png | Bin 0 -> 3536 bytes
test/reference/twin-antialias-subpixel.ref.png | Bin 3948 -> 0 bytes
.../twin-antialias-subpixel.rgb24.ref.png | Bin 0 -> 3536 bytes
test/reference/twin.argb32.ref.png | Bin 0 -> 3536 bytes
test/reference/twin.ref.png | Bin 3948 -> 0 bytes
test/reference/twin.rgb24.ref.png | Bin 0 -> 3536 bytes
test/reference/unbounded-operator.argb32.ref.png | Bin 0 -> 2763 bytes
test/reference/unbounded-operator.ref.png | Bin 0 -> 2781 bytes
test/reference/unclosed-strokes.argb32.ref.png | Bin 1901 -> 0 bytes
test/reference/unclosed-strokes.ref.png | Bin 0 -> 1588 bytes
test/reference/unclosed-strokes.rgb24.ref.png | Bin 1901 -> 0 bytes
test/reference/user-font-proxy.argb32.ref.png | Bin 16941 -> 16971 bytes
test/reference/user-font-proxy.rgb24.ref.png | Bin 16941 -> 16971 bytes
test/reference/user-font.argb32.ref.png | Bin 0 -> 5882 bytes
test/reference/user-font.ref.png | Bin 6209 -> 0 bytes
test/reference/user-font.rgb24.ref.png | Bin 0 -> 5882 bytes
test/reference/world-map-fill.argb32.ref.png | Bin 57308 -> 57407 bytes
test/reference/world-map-fill.rgb24.ref.png | Bin 57308 -> 57407 bytes
test/reference/xcb-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/xlib-surface-source.ref.png | Bin 0 -> 377 bytes
test/reference/zero-mask.ref.png | Bin 0 -> 402 bytes
283 files changed, 174 insertions(+), 157 deletions(-)
commit 8e1e2a54147df32f0e9261d2b7b031eaf8396f06
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 30 11:47:44 2014 +0100
test: Remove redundant reference images
If we have both a argb32 and rgb24 reference image that are identical,
we can replace them with a plain reference image. I also prefer to have
argb32/rgb24 versions of the reference images if rgb24 differs from the
plain reference.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/a1-clip-fill-rule.argb32.ref.png | Bin 236 -> 0 bytes
test/reference/a1-clip-fill-rule.rgb24.ref.png | Bin 218 -> 0 bytes
test/reference/alpha-similar.argb32.ref.png | Bin 99 -> 0 bytes
test/reference/alpha-similar.rgb24.ref.png | Bin 88 -> 0 bytes
test/reference/big-empty-box.argb32.ref.png | Bin 111 -> 0 bytes
test/reference/big-empty-box.rgb24.ref.png | Bin 108 -> 0 bytes
test/reference/big-empty-triangle.argb32.ref.png | Bin 111 -> 0 bytes
test/reference/big-empty-triangle.rgb24.ref.png | Bin 108 -> 0 bytes
test/reference/big-little-box.argb32.ref.png | Bin 169 -> 0 bytes
test/reference/big-little-box.rgb24.ref.png | Bin 160 -> 0 bytes
test/reference/big-little-triangle.argb32.ref.png | Bin 409 -> 0 bytes
test/reference/big-little-triangle.rgb24.ref.png | Bin 328 -> 0 bytes
test/reference/bitmap-font.argb32.ref.png | Bin 950 -> 0 bytes
test/reference/bitmap-font.rgb24.ref.png | Bin 871 -> 0 bytes
test/reference/bug-source-cu.argb32.ref.png | Bin 3815 -> 0 bytes
test/reference/bug-source-cu.rgb24.ref.png | Bin 3211 -> 0 bytes
test/reference/clear.argb32.ref.png | Bin 692 -> 0 bytes
test/reference/clear.rgb24.ref.png | Bin 617 -> 0 bytes
test/reference/clip-device-offset.argb32.ref.png | Bin 175 -> 0 bytes
test/reference/clip-device-offset.rgb24.ref.png | Bin 168 -> 0 bytes
.../clip-fill-eo-unbounded.argb32.ref.png | Bin 4197 -> 0 bytes
.../reference/clip-fill-eo-unbounded.rgb24.ref.png | Bin 3551 -> 0 bytes
.../clip-fill-nz-unbounded.argb32.ref.png | Bin 4197 -> 0 bytes
.../reference/clip-fill-nz-unbounded.rgb24.ref.png | Bin 3551 -> 0 bytes
.../clip-fill-rule-pixel-aligned.argb32.ref.png | Bin 195 -> 0 bytes
.../clip-fill-rule-pixel-aligned.rgb24.ref.png | Bin 165 -> 0 bytes
test/reference/clip-fill-rule.argb32.ref.png | Bin 437 -> 0 bytes
test/reference/clip-fill-rule.rgb24.ref.png | Bin 393 -> 0 bytes
test/reference/clip-nesting.argb32.ref.png | Bin 1044 -> 0 bytes
test/reference/clip-nesting.rgb24.ref.png | Bin 936 -> 0 bytes
test/reference/clip-operator.argb32.ref.png | Bin 8257 -> 0 bytes
test/reference/clip-operator.rgb24.ref.png | Bin 3288 -> 0 bytes
.../reference/clip-stroke-unbounded.argb32.ref.png | Bin 4127 -> 0 bytes
test/reference/clip-stroke-unbounded.rgb24.ref.png | Bin 3566 -> 0 bytes
test/reference/clip-twice.argb32.ref.png | Bin 1358 -> 0 bytes
test/reference/clip-twice.rgb24.ref.png | Bin 1195 -> 0 bytes
test/reference/clip-unbounded.argb32.ref.png | Bin 100 -> 0 bytes
test/reference/clip-unbounded.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/dash-zero-length.argb32.ref.png | Bin 230 -> 0 bytes
test/reference/dash-zero-length.rgb24.ref.png | Bin 208 -> 0 bytes
test/reference/degenerate-path.argb32.ref.png | Bin 251 -> 0 bytes
test/reference/degenerate-path.rgb24.ref.png | Bin 219 -> 0 bytes
.../device-offset-positive.argb32.ref.png | Bin 139 -> 0 bytes
.../reference/device-offset-positive.rgb24.ref.png | Bin 111 -> 0 bytes
test/reference/device-offset.argb32.ref.png | Bin 137 -> 0 bytes
test/reference/device-offset.rgb24.ref.png | Bin 111 -> 0 bytes
test/reference/egl-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/egl-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
.../extended-blend-alpha-mask.argb32.ref.png | Bin 9221 -> 0 bytes
.../extended-blend-alpha-mask.rgb24.ref.png | Bin 4597 -> 0 bytes
test/reference/extended-blend-alpha.argb32.ref.png | Bin 9406 -> 0 bytes
test/reference/extended-blend-alpha.rgb24.ref.png | Bin 5740 -> 0 bytes
test/reference/extended-blend-mask.argb32.ref.png | Bin 3971 -> 0 bytes
test/reference/extended-blend-mask.rgb24.ref.png | Bin 3643 -> 0 bytes
.../extended-blend-solid-alpha.argb32.ref.png | Bin 9406 -> 0 bytes
.../extended-blend-solid-alpha.rgb24.ref.png | Bin 5740 -> 0 bytes
test/reference/extended-blend-solid.argb32.ref.png | Bin 4063 -> 0 bytes
test/reference/extended-blend-solid.rgb24.ref.png | Bin 3775 -> 0 bytes
test/reference/extended-blend.argb32.ref.png | Bin 4063 -> 0 bytes
test/reference/extended-blend.rgb24.ref.png | Bin 3775 -> 0 bytes
test/reference/fallback.argb32.ref.png | Bin 4059 -> 0 bytes
test/reference/fallback.rgb24.ref.png | Bin 3139 -> 0 bytes
test/reference/fill-and-stroke.argb32.ref.png | Bin 312 -> 0 bytes
test/reference/fill-and-stroke.rgb24.ref.png | Bin 283 -> 0 bytes
.../fill-degenerate-sort-order.argb32.ref.png | Bin 2400 -> 0 bytes
.../fill-degenerate-sort-order.rgb24.ref.png | Bin 2049 -> 0 bytes
test/reference/fill-empty.argb32.ref.png | Bin 99 -> 0 bytes
test/reference/fill-empty.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/fill-missed-stop.argb32.ref.png | Bin 455 -> 0 bytes
test/reference/fill-missed-stop.rgb24.ref.png | Bin 382 -> 0 bytes
test/reference/fill-rule.argb32.ref.png | Bin 2065 -> 0 bytes
test/reference/fill-rule.rgb24.ref.png | Bin 1803 -> 0 bytes
.../finer-grained-fallbacks.argb32.ref.png | Bin 1068 -> 0 bytes
.../finer-grained-fallbacks.rgb24.ref.png | Bin 837 -> 0 bytes
test/reference/gl-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/gl-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/gradient-alpha.argb32.ref.png | Bin 125 -> 0 bytes
test/reference/gradient-alpha.rgb24.ref.png | Bin 119 -> 0 bytes
.../gradient-constant-alpha.argb32.ref.png | Bin 111 -> 0 bytes
.../gradient-constant-alpha.rgb24.ref.png | Bin 106 -> 0 bytes
.../gradient-zero-stops-mask.argb32.ref.png | Bin 86 -> 0 bytes
.../gradient-zero-stops-mask.rgb24.ref.png | Bin 86 -> 0 bytes
test/reference/gradient-zero-stops.argb32.ref.png | Bin 105 -> 0 bytes
test/reference/gradient-zero-stops.rgb24.ref.png | Bin 86 -> 0 bytes
test/reference/image-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/image-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
.../linear-gradient-one-stop.argb32.ref.png | Bin 225 -> 0 bytes
.../linear-gradient-one-stop.rgb24.ref.png | Bin 174 -> 0 bytes
test/reference/mask-alpha.argb32.ref.png | Bin 632 -> 0 bytes
test/reference/mask-alpha.rgb24.ref.png | Bin 589 -> 0 bytes
test/reference/mask-ctm.argb32.ref.png | Bin 129 -> 0 bytes
test/reference/mask-ctm.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/mask-surface-ctm.argb32.ref.png | Bin 129 -> 0 bytes
test/reference/mask-surface-ctm.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/mask.argb32.ref.png | Bin 8565 -> 0 bytes
test/reference/mask.rgb24.ref.png | Bin 7135 -> 0 bytes
test/reference/new-sub-path.argb32.ref.png | Bin 408 -> 0 bytes
test/reference/new-sub-path.rgb24.ref.png | Bin 371 -> 0 bytes
test/reference/nil-surface.argb32.ref.png | Bin 107 -> 0 bytes
test/reference/nil-surface.rgb24.ref.png | Bin 87 -> 0 bytes
test/reference/operator-alpha.argb32.ref.png | Bin 280 -> 0 bytes
test/reference/operator-alpha.rgb24.ref.png | Bin 205 -> 0 bytes
test/reference/operator-clear.argb32.ref.png | Bin 1071 -> 0 bytes
test/reference/operator-clear.rgb24.ref.png | Bin 946 -> 0 bytes
test/reference/operator-source.argb32.ref.png | Bin 5614 -> 0 bytes
test/reference/operator-source.rgb24.ref.png | Bin 4012 -> 0 bytes
test/reference/operator.argb32.ref.png | Bin 238 -> 0 bytes
test/reference/operator.rgb24.ref.png | Bin 189 -> 0 bytes
test/reference/over-above-source.argb32.ref.png | Bin 564 -> 0 bytes
test/reference/over-above-source.rgb24.ref.png | Bin 465 -> 0 bytes
test/reference/over-around-source.argb32.ref.png | Bin 633 -> 0 bytes
test/reference/over-around-source.rgb24.ref.png | Bin 499 -> 0 bytes
test/reference/over-below-source.argb32.ref.png | Bin 447 -> 0 bytes
test/reference/over-below-source.rgb24.ref.png | Bin 385 -> 0 bytes
test/reference/over-between-source.argb32.ref.png | Bin 596 -> 0 bytes
test/reference/over-between-source.rgb24.ref.png | Bin 463 -> 0 bytes
test/reference/overlapping-boxes.argb32.ref.png | Bin 179 -> 0 bytes
test/reference/overlapping-boxes.rgb24.ref.png | Bin 170 -> 0 bytes
test/reference/overlapping-glyphs.argb32.ref.png | Bin 2717 -> 0 bytes
test/reference/overlapping-glyphs.rgb24.ref.png | Bin 1663 -> 0 bytes
test/reference/pass-through.argb32.ref.png | Bin 221 -> 0 bytes
test/reference/pass-through.rgb24.ref.png | Bin 158 -> 0 bytes
test/reference/pdf-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/pdf-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/pixman-rotate.argb32.ref.png | Bin 260 -> 0 bytes
test/reference/pixman-rotate.rgb24.ref.png | Bin 225 -> 0 bytes
test/reference/ps-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/ps-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/push-group.argb32.ref.png | Bin 3062 -> 0 bytes
test/reference/push-group.rgb24.ref.png | Bin 2899 -> 0 bytes
.../reference/quartz-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/quartz-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
.../radial-gradient-source.argb32.ref.png | Bin 408848 -> 0 bytes
.../reference/radial-gradient-source.rgb24.ref.png | Bin 263908 -> 0 bytes
.../recording-surface-extend-none.argb32.ref.png | Bin 3153 -> 0 bytes
.../recording-surface-extend-none.rgb24.ref.png | Bin 3145 -> 0 bytes
.../recording-surface-extend-pad.argb32.ref.png | Bin 11200 -> 0 bytes
.../recording-surface-extend-pad.rgb24.ref.png | Bin 12586 -> 0 bytes
...recording-surface-extend-reflect.argb32.ref.png | Bin 23967 -> 0 bytes
.../recording-surface-extend-reflect.rgb24.ref.png | Bin 23930 -> 0 bytes
.../recording-surface-extend-repeat.argb32.ref.png | Bin 24091 -> 0 bytes
.../recording-surface-extend-repeat.rgb24.ref.png | Bin 24075 -> 0 bytes
.../recording-surface-over.argb32.ref.png | Bin 3153 -> 0 bytes
.../reference/recording-surface-over.rgb24.ref.png | Bin 3145 -> 0 bytes
.../recording-surface-source.argb32.ref.png | Bin 3153 -> 0 bytes
.../recording-surface-source.rgb24.ref.png | Bin 3146 -> 0 bytes
test/reference/rel-path.argb32.ref.png | Bin 197 -> 0 bytes
test/reference/rel-path.rgb24.ref.png | Bin 216 -> 0 bytes
.../scale-source-surface-paint.argb32.ref.png | Bin 147 -> 0 bytes
.../scale-source-surface-paint.rgb24.ref.png | Bin 117 -> 0 bytes
test/reference/set-source.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/set-source.rgb24.ref.png | Bin 101 -> 0 bytes
.../source-surface-scale-paint.argb32.ref.png | Bin 139 -> 0 bytes
.../source-surface-scale-paint.rgb24.ref.png | Bin 114 -> 0 bytes
.../subsurface-outside-target.argb32.ref.png | Bin 2063 -> 0 bytes
.../subsurface-outside-target.rgb24.ref.png | Bin 1648 -> 0 bytes
.../surface-pattern-operator.argb32.ref.png | Bin 5217 -> 0 bytes
.../surface-pattern-operator.rgb24.ref.png | Bin 1942 -> 0 bytes
test/reference/svg-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/svg-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/text-pattern.argb32.ref.png | Bin 3455 -> 0 bytes
test/reference/text-pattern.rgb24.ref.png | Bin 2684 -> 0 bytes
test/reference/tighten-bounds.argb32.ref.png | Bin 9115 -> 0 bytes
test/reference/tighten-bounds.rgb24.ref.png | Bin 8365 -> 0 bytes
test/reference/trap-clip.argb32.ref.png | Bin 5826 -> 0 bytes
test/reference/trap-clip.rgb24.ref.png | Bin 5435 -> 0 bytes
test/reference/unbounded-operator.argb32.ref.png | Bin 2781 -> 0 bytes
test/reference/unbounded-operator.rgb24.ref.png | Bin 1333 -> 0 bytes
test/reference/xcb-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/xcb-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/xlib-surface-source.argb32.ref.png | Bin 377 -> 0 bytes
test/reference/xlib-surface-source.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/zero-mask.argb32.ref.png | Bin 402 -> 0 bytes
test/reference/zero-mask.rgb24.ref.png | Bin 382 -> 0 bytes
174 files changed, 0 insertions(+), 0 deletions(-)
commit 93c21e3fd309781d0f48052097f5670dbe9af820
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Mon Sep 22 10:19:17 2014 +0530
test: Add test for egl-surface-source
This test file attempts to use a EGL backend surface as a source
surface for all other backends.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
test/Makefile.sources | 3 +-
test/egl-surface-source.c | 135 ++++++++++++++++++++
test/reference/egl-surface-source.argb32.ref.png | Bin 0 -> 377 bytes
.../egl-surface-source.base.argb32.ref.png | Bin 0 -> 377 bytes
.../egl-surface-source.base.rgb24.ref.png | Bin 0 -> 301 bytes
test/reference/egl-surface-source.image16.ref.png | Bin 0 -> 305 bytes
test/reference/egl-surface-source.rgb24.ref.png | Bin 0 -> 301 bytes
7 files changed, 137 insertions(+), 1 deletion(-)
commit 573ddfc3d5c08c37b95a21e0a1b34acecc646053
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Thu Sep 25 08:38:50 2014 +0530
src: check the surface backend for NULL
This is a follow-up patch on top of 150c1e7044c57443d458e12bfc427d3a019cb60b
As discussed in the mailing list, http://lists.cairographics.org/archives/cairo/2014-September/025647.html,
check if the surfaces are of particular backend type or not, before proceeding further.
These changes are based on _cairo_surface_is_xlib() and _cairo_surface_is_image()
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
src/cairo-qt-surface.cpp | 28 +++++++++++++++++++++++++---
src/cairo-quartz-image-surface.c | 4 +++-
src/cairo-quartz-surface.c | 14 ++++++++++++++
src/win32/cairo-win32-surface.c | 19 ++++++++++++++++++-
4 files changed, 60 insertions(+), 5 deletions(-)
commit 06b9f8fa2d179850cda8a0a103896bc011ce46d6
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Sep 22 12:53:08 2014 +0100
stroke,traps: Emit join without loss of precision
As the target renderers operate at a different sample resolution then we
use internally for coordinate representation, there is always a potential
for discrepancies in the line gradients when passing around trapezoids.
To overcome this, the protocol specification of trapezoids uses the full
lines and vertical range as opposed to vertices and so long as we always
use the same lines for conjoint trapezoids, they remain abutting in the
rasteriser.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=84115
Testcase: bug-84115
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 3 +
src/cairo-bentley-ottmann.c | 232 +------------------------------
src/cairo-line-inline.h | 48 +++++++
src/cairo-line-private.h | 50 +++++++
src/cairo-line.c | 306 +++++++++++++++++++++++++++++++++++++++++
src/cairo-path-stroke-traps.c | 55 ++++++--
src/cairo-traps-private.h | 8 +-
src/cairo-traps.c | 85 ++++++++++--
8 files changed, 530 insertions(+), 257 deletions(-)
commit 5c03b20732b84370950f0c7e5648da86ef45a571
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Sep 29 08:37:56 2014 +0100
test/coverage: Exercise invariance under mirror symmetry
Massimo noticed that the record/record-flip were not being rasterised as
identical mirror images due to a half-subpixel offset in the tor scan
converter. This test attempts to reproduce this error by rendering a
rhombus around the origin of each cell (that is it generates 4 mirror
images of a triangle in the 4 different orientations0. The expectation
is that each pixel in the group is lit identically as the coverage is
identical.
References: https://bugs.freedesktop.org/show_bug.cgi?id=84396
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/coverage.c | 55 +++++++++++++++++++++++++++++++
test/reference/coverage-rhombus.ref.png | Bin 0 -> 7053 bytes
2 files changed, 55 insertions(+)
commit fbb0a260b707cb5f02a14cc368c6f2f0d63564c3
Author: Marc-André Lureau <marcandre.lureau@gmail.com>
Date: Tue Apr 2 21:00:20 2013 +0200
build-sys: do not try to build util/sphinx on Windows
glib and dlfcn exist on windows, but sphinx code uses a lot of
Unix-only API
Fixes the following build error on mingw-fedora
CC cairo-boilerplate-system.lo
../../../util/cairo-sphinx/sphinx.c:8:22: fatal error: sys/mman.h: No such file or directory
compilation terminated.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=63043
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 42320793aa1b3e5a0b74e94a0aadf5d2b9ae5ce2
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Wed Sep 24 11:37:58 2014 -0700
sphinx: Add ickle's explanation of what sphinx does
util/cairo-sphinx/sphinx.c | 8 ++++++++
1 file changed, 8 insertions(+)
commit 80359e73d821516f411b25b977b442869fa5d0ad
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 23 12:58:27 2014 +0100
test: Exercise stroking bugs with xlib/trapezoids
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=84115
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/bug-84115.c | 61 +++++++++++++++++++++++++++++++++
test/reference/bug-84115.ref.png | Bin 0 -> 64233 bytes
test/reference/bug-84115.xlib.ref.png | Bin 0 -> 65033 bytes
4 files changed, 62 insertions(+)
commit 06a737b74d3bc925a2c32254f497e07b6d1af5ca
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Sep 24 09:57:31 2014 +0100
arc: Insert the initial point on the arc
Currently the very first point on the arc will be the first interpreted
location along the spline used to approximate the arc. This will be
close, but not quite the exact point the user intended the arc to run
from, so begin the arc with a line-to the initial point.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-arc.c | 4 ++++
1 file changed, 4 insertions(+)
commit bdd0721dcddd6c4528c9518a2152cd154f746202
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Tue Sep 23 16:41:36 2014 -0700
NEWS: Revise downscaling feature description
Updated feature description using text from Bill. Also updated bugfix
list to include recent fixes.
NEWS | 48 +++++++++++++++++++++++++++---------------------
1 file changed, 27 insertions(+), 21 deletions(-)
commit 7cfebce15228c88ee122edb8ba575f9a609e36f4
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Tue Sep 23 12:40:25 2014 -0700
build: Fix float endian configure test when using clang -O4
When using clang -O4, the compiled test object is output in bitcode
format rather than as an ELF object, so when we grep the test value from
the object it fails. To work around this, go ahead and link the test
object into an executable, and then grep against this native binary
instead of the compiler's intermediary object.
We need to add __attribute__((used)) to ensure the d variable doesn't
get optimized out during linking, since it's not referenced in the
test's main().
Patch authored by cmuelle8 <abendstund@gmail.com>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=63310
build/aclocal.float.m4 | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
commit 9a19ef185884da1e7d5344b301f48aa2ba0f88b6
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Mon Mar 24 19:08:10 2014 +1030
Fix compilation with bionic libc
Refactor out a cairo_get_locale_decimal_point() routine to handle a case
where localeconv() is not available.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=70492
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
[edit: Condensed cairo_get_locale_decimal_point and conditionalized
locale.h inclusion. -- bryce]
src/cairo-cff-subset.c | 4 +---
src/cairo-misc.c | 18 ++++++++++++++++++
src/cairo-output-stream.c | 5 +----
src/cairo-type1-subset.c | 5 +----
src/cairoint.h | 3 +++
5 files changed, 24 insertions(+), 11 deletions(-)
commit a02e29a12d82f177bdf99ed8cfd0c3b3b78c44da
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Mon Sep 22 15:48:49 2014 -0700
Don't return NULL to clients when getting device
Return an error device instead
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=58061
src/cairo-cogl-surface.c | 2 +-
src/drm/cairo-drm.c | 9 ++++++---
2 files changed, 7 insertions(+), 4 deletions(-)
commit 150c1e7044c57443d458e12bfc427d3a019cb60b
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Mon Sep 22 15:41:24 2014 -0700
Don't return NULL to clients when getting image
Return an error surface instead.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=58061
src/cairo-qt-surface.cpp | 2 +-
src/cairo-quartz-image-surface.c | 2 +-
src/win32/cairo-win32-surface.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
commit 40e757679634ba6261b9df231ba5c706625e215d
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Mon Sep 22 15:06:54 2014 -0700
NEWS: Note that downscaling changes only affect image + fallback
NEWS | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit 402b456a3229f6c7f1550e66bbd8125c253a4ff1
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Thu Jul 31 17:58:15 2014 -0700
gl: Increase default VBO size on GL to 1M
The default VBO size was reduced from 256k to 16k because embedded
devices had trouble with the larger memory demands of a big VBO. My
testing[1] indicates this incurred a 5% performance loss on at least one
of Cairo's performance tests. Further testing showed that with
late-model graphics cards, further performance benefits can be seen with
even larger VBO sizes, up to 8.3% at 1M for Intel.
Now that we can set the vbo size differently for different backends, set
it to the lower value (16k) for EGL, and higher (1M) for GL.
1: http://www.bryceharrington.org/wordpress/2013/08/vbo-size/
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
src/cairo-egl-context.c | 6 ++++++
src/cairo-gl-private.h | 2 +-
2 files changed, 7 insertions(+), 1 deletion(-)
commit aa820c13d78a4fc1c87da0da9012ee532aa2d50a
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Thu Jul 31 17:43:03 2014 -0700
gl: Track the VBO size as a property of the ctx
Change suggested by Chris Wilson. This will enable setting different
vbo sizes for GL vs. EGL.
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
src/cairo-gl-composite.c | 3 ++-
src/cairo-gl-device.c | 4 +++-
src/cairo-gl-info.c | 22 ++++++++++------------
src/cairo-gl-private.h | 3 ++-
4 files changed, 17 insertions(+), 15 deletions(-)
commit 036f47c34579259fa86d0193797b6f83fe79bbeb
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Mon Aug 19 19:38:26 2013 -0700
cairo-gl: Make VBO size run-time settable
The default VBO size was reduced from 256k to 16k last year in commit
90860241 due to problems with larger VBOs on embedded hardware.
However, that change resulted in a 5% performance impact to the
firefox-fishbowl benchmark when using the spans or traps compositors.
This patch doesn't change the VBO size, but does permit it to be
altered via an environment variable, to facilitate testing.
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com>
src/cairo-gl-composite.c | 2 +-
src/cairo-gl-device.c | 2 +-
src/cairo-gl-info.c | 22 ++++++++++++++++++++++
src/cairo-gl-private.h | 8 ++++++--
4 files changed, 30 insertions(+), 4 deletions(-)
commit 8479b6086710e11c81c0059ffc5fa6a71d14256c
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Tue Sep 16 10:18:02 2014 +0530
test: Add test oversized egl surfaces
This test exercises error scenario when creating over sized egl surface
that is larger than maximum framebuffer or texture dimensions of the
context
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
test/Makefile.am | 4 ++
test/Makefile.sources | 3 ++
test/egl-oversized-surface.c | 117 ++++++++++++++++++++++++++++++++++++++++++
3 files changed, 124 insertions(+)
commit 3d68352e3c00b836e50c2eacb0b80ae5a0e15a65
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Thu Sep 18 13:18:48 2014 -0700
NEWS: Drop unfinished thought
NEWS | 1 -
1 file changed, 1 deletion(-)
commit 54670ec13d64efa94f552b5473c1f15a9db1cecd
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Wed Sep 17 20:27:13 2014 -0700
AUTHORS: Add Ravi, myself, and a couple other frequent contributors
AUTHORS | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
commit 33a54e7c204c4bb7fb0f1f2844608a78ea317db4
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Wed Sep 17 20:25:37 2014 -0700
README: Update required dependencies
Also adds mention of the skia backend.
README | 30 ++++++++++++++++++++----------
1 file changed, 20 insertions(+), 10 deletions(-)
commit d1fa4d44fe6b70eba6d5f620c5c4a6c122cc7fc8
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Wed Sep 17 20:04:01 2014 -0700
NEWS: Bring up to date with recent bug fixes.
NEWS | 69 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 66 insertions(+), 3 deletions(-)
commit e0c0a673ee757615bd3d22f46767535e9f53d6f5
Author: Bryce Harrington <bryce@osg.samsung.com>
Date: Wed Sep 17 17:14:01 2014 -0700
Disable font options for xcb.
This patch makes a bunch of tests pass again. The first hunk one fixes a
shameful oversight (whoops), the second one effectively reverts
e691d242. That change broke 102 xcb and 70 xlib tests, including a
bunch of *twin-antialias-* test cases. Patch thanks to Uli Schlachter.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-xcb-screen.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
commit 0aa43ed886c0f8468a21a470f2f024bd4d8a4513
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Sep 14 22:02:12 2014 +0930
win32 printing: fix image scale when GDI scale is not identity
src/win32/cairo-win32-printing-surface.c | 1 +
1 file changed, 1 insertion(+)
commit e691d242d592a8556e25659fb091a2031abee4c9
Author: Lukáš Lalinský <lukas@oxygene.sk>
Date: Wed Sep 3 22:53:55 2014 +0200
xcb: Initialize font options from Xft resources
There is a similar code in the Xlib backend. The logic here is the same, but
XCB doesn't support X resources directly, so there is some custom code
to get and parse the resources from the root window.
Signed-off-by: Lukáš Lalinský <lukas@oxygene.sk>
Reviewed-by: Uli Schlachter <psychon@znc.in>
src/Makefile.sources | 1 +
src/cairo-xcb-private.h | 19 +++
src/cairo-xcb-resources.c | 304 +++++++++++++++++++++++++++++++++++++++++++++
src/cairo-xcb-screen.c | 108 ++++++++++++++++
src/cairo-xcb-surface.c | 6 +-
5 files changed, 435 insertions(+), 3 deletions(-)
commit e77d0a5611fedce2bfa0940ff62f003c1f9cfa08
Author: David Weiß <david.weiss@ptvgroup.com>
Date: Fri Sep 5 17:03:26 2014 +0200
made paths to pixman, libpng and zlib configurable by commandline for win32 builds
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
build/Makefile.win32.common | 23 +++++++++++++++++------
1 file changed, 17 insertions(+), 6 deletions(-)
commit 3b9d7e583f376413df655f778a3ef04537e8a5b6
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Fri Sep 5 12:15:02 2014 +0530
qt: Suppress warnings in qt backend build
This patch fixes majorly 2 kinds of warning issues:
(1)
cc1plus: warning: command line option '-Wold-style-definition' is valid for Ada/C/ObjC but not for C++ [enabled by default]
cc1plus: warning: command line option '-Wdeclaration-after-statement' is valid for C/ObjC but not for C++ [enabled by default]
cc1plus: warning: command line option '-Wnested-externs' is valid for C/ObjC but not for C++ [enabled by default]
cc1plus: warning: command line option '-Wstrict-prototypes' is valid for Ada/C/ObjC but not for C++ [enabled by default]
cc1plus: warning: command line option '-Wmissing-prototypes' is valid for Ada/C/ObjC but not for C++ [enabled by default]
cc1plus: warning: command line option '-Wbad-function-cast' is valid for C/ObjC but not for C++ [enabled by default]
Solution: Enable these warnings only for C compiler and not for C++
(2)
cairo-qt-surface.cpp: In function 'cairo_int_status_t _cairo_qt_surface_fill(void*, cairo_operator_t, const cairo_pattern_t*, const cairo_path_fixed_t*, cairo_fill_rule_t, double, cairo_antialias_t, const cairo_clip_t*)':
cairo-qt-surface.cpp:852:5: warning: inlining failed in call to 'PatternToBrushConverter::PatternToBrushConverter(const cairo_pattern_t*)': --param max-inline-insns-single limit reached [-Winline]
cairo-qt-surface.cpp:1339:38: warning: called from here [-Winline]
cairo-qt-surface.cpp:390:1: warning: inlining failed in call to 'QPainterPath _ZL10path_to_qtPK17_cairo_path_fixedPK13_cairo_matrix.part.13()': call is unlikely and code size would grow [-Winline]
cairo-qt-surface.cpp:1306:1: warning: called from here [-Winline]
cairo-qt-surface.cpp:1051:5: warning: inlining failed in call to 'PatternToBrushConverter::~PatternToBrushConverter()': call is unlikely and code size would grow [-Winline]
Solution: Add __attribute__ ((noinline)) to the function as mentioned in
http://stackoverflow.com/questions/11724235/warning-for-template-with-g-o2-or-os-o-o1 (Edit 3)
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
build/configure.ac.warnings | 13 +++++++------
src/cairo-qt-surface.cpp | 9 ++++++---
2 files changed, 13 insertions(+), 9 deletions(-)
commit 29a8b4e970379ca04a7db8e63c71bb34c0e349ce
Author: Maks Naumov <maksqwe1@ukr.net>
Date: Wed Aug 20 09:52:45 2014 -0700
Fix _cairo_mesh_pattern_equal() when cairo_mesh_patch_t structs are different
Signed-off-by: Maks Naumov <maksqwe1@ukr.net>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
src/cairo-pattern.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit e6bf829d8953fac82ccc80618c6cae41346e483f
Author: Maks Naumov <maksqwe1@ukr.net>
Date: Wed Aug 20 09:38:37 2014 -0700
Fix font x_scale value in _compute_transform()
Signed-off-by: Maks Naumov <maksqwe1@ukr.net>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-ft-font.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit c6ae5b197623867e2baca0bf4fe2907ea55536f5
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Mon Aug 25 09:28:40 2014 +0530
test: Fix null pointer issue reported by cppcheck static analysis tool
cppcheck analysis tool reports the following issues when run on the
latest Cairo source.
$ grep "(error)" cppcheck_error_log.txt
[test/pdf-mime-data.c:58]: (error) Possible null pointer dereference: file - otherwise it is redundant to check if file is null at line 53
[test/pdf-mime-data.c:75]: (error) Resource leak: fp
$
The proposed changes fixes the above issues.
And also it does some refactoring to print the appropriate error messages
for each error condition in read_file() function and also to free the allocated
data buffer.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
test/pdf-mime-data.c | 25 ++++++++++++++-----------
1 file changed, 14 insertions(+), 11 deletions(-)
commit 52c4f0f2dafcc6e087a9c3c6d00c582fc272c2c2
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Thu Aug 21 18:18:34 2014 +0530
src: Fix memory issue reported by cppcheck static analysis tool
cppcheck analysis tool reports the following issues when run on the
latest Cairo source.
$ grep "(error)" cppcheck_error_log.txt
[src/skia/cairo-skia-surface.cpp:245]: (error) Memory leak: surface
$
The proposed changes fixes the above issues.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
src/skia/cairo-skia-surface.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit a5f51588afd9d5629b03297eb29ff46350b6ba50
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 25 08:55:24 2014 +0100
traps,xcb: Set the box count after filtering
After converting, the number of boxes should only count the number of
non-zero boxes and forget about the zero-sized boxes we skipped over.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=81699
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-traps-compositor.c | 4 ++--
src/cairo-xcb-surface-render.c | 5 +++--
2 files changed, 5 insertions(+), 4 deletions(-)
commit 13a09526d2120c244471e03b6ae979016ef88e83
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 23 14:16:55 2014 +0100
traps,xcb: Prefilter zero-area boxes when converting traps
The rectangular tesselation routines rely on the presuming that all the
boxes it has to handle are already filtered to remove empty boxes.
<< /width 800 /height 600 >> surface context
0.0848671 0 0 0.0848671 39.907812 5.608896 matrix transform
8 0 m 12.417969 0 16 3.582031 16 8 c 16 12.417969 12.417969 16 8 16 c
3.582031 16 0 12.417969 0 8 c 0 3.582031 3.582031 0 8 0 c h
clip
16 0 m 8 8 l 16 16 l h
clip
0 0 16 16 rectangle
fill
Triggers the error given a traps tesselator like cairo-xlib.
Reported-by: Henrique Lengler <henriqueleng@openmailbox.org>
Analyzed-by: Massimo <sixtysix@inwind.it>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=81699
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-traps-compositor.c | 28 +++++++++++++++++-----------
src/cairo-xcb-surface-render.c | 29 ++++++++++++++++++-----------
2 files changed, 35 insertions(+), 22 deletions(-)
commit 545444ec1f79eab268647e9859efc9c8d1a10391
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Aug 23 14:38:36 2014 +0200
xcb: Correctly check for image surface for inplace upload
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82987
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 183ac1889f369743a86a8a2ff6b61486acda614e
Author: Maks Naumov <maksqwe1@ukr.net>
Date: Tue Aug 19 14:59:14 2014 -0700
Fix width and height args for _cairo_xcb_connection_copy_area()
Found via static analysis.
Signed-off-by: Maks Naumov <maksqwe1@ukr.net>
Reviewed-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit eab218d1e3b0f2a3c0ab33d3173c42cc57e9bf8c
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Wed Aug 20 11:45:19 2014 +0530
configure.ac: configuration check to enable either gl or glesv2, not both at the same time
A proposed solution for the discussion in
https://bugs.freedesktop.org/show_bug.cgi?id=57379#c12,
to avoid muliple definition of cairo_gl_* symbols when
both gl and glesv2 backends are enabled at the same time
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
configure.ac | 4 ++++
1 file changed, 4 insertions(+)
commit 932548ef25864958ef966ffe83e7c945c3ff3cd4
Author: Rodrigo Rivas Costa <rodrigorivascosta@gmail.com>
Date: Tue Aug 19 00:09:50 2014 +0930
win32 print: fix cache_frozen assertions
Bug 81709
src/win32/cairo-win32-printing-surface.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
commit 7736d08e22ffd7ab9968617164c7e027125b7755
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Wed Aug 6 09:49:59 2014 +0530
README : Update README file related to usage of FORMAT make variable
Reformatted the README file to simplify the sentences.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
test/README | 17 ++++++++++++-----
1 file changed, 12 insertions(+), 5 deletions(-)
commit c61aeddc44c8619a271151b2a2f6bf9f8ff2a18b
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Tue Aug 5 14:31:37 2014 +0530
test: improve selective execution of Cairo tests based on FORMAT option
This patch improves the patch "test: Selective execution of Cairo tests based on FORMAT option"
by extending the usage of FORMAT option even in the case of user not
providing TARGETS= option
For ex:
(1). CAIRO_TESTS="zero-alpha" make test FORMAT=rgba
This command runs the zero-alpha test for all the backends with
argb32 content format and so on.
(2). CAIRO_TESTS="zero-alpha" make test FORMAT=rgba,rgb
This command runs the zero-alpha test for all the backends with
argb32 and rgb24 content formats.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
boilerplate/cairo-boilerplate.c | 68 +++++++++++++++++++++++++++++++--------
1 file changed, 55 insertions(+), 13 deletions(-)
commit f8e0ecb5af8859e2bff26cb719b10b3a9784f6f1
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Thu Jul 24 14:19:21 2014 +0530
test: Selective execution of Cairo tests based on FORMAT option
Added a new command line option FORMAT which can take rgb and/or rgba
values which enables the execution of tests only for the given FORMAT
For ex:
(1). CAIRO_TESTS="zero-alpha" make test TARGETS=ps2,image FORMAT=rgba,rgb
This command runs the zero-alpha test for both ps2 and image backends
with argb32 and rgb24 content formats.
(2). CAIRO_TESTS="zero-alpha" make test TARGETS=ps2,image FORMAT=rgba
This command runs the zero-alpha test for both ps2 and image backends
with argb32 content format and so on.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
boilerplate/cairo-boilerplate.c | 61 ++++++++++++++++++++++++++++++++++-----
perf/Makefile.am | 3 +-
test/Makefile.am | 3 +-
3 files changed, 58 insertions(+), 9 deletions(-)
commit 1d9f4ae5208d86843a6001d10c9cb5b16df2b785
Author: Bill Spitzak <spitzak@gmail.com>
Date: Tue Aug 12 15:48:04 2014 -0700
V5: Use NEAREST filter when possible
(changed to use determinant funciton and remove debug printf)
Modifies _cairo_matrix_has_unity_scale to return true for 90 degree rotations
by allowing error caused by inaccuracy in trig functions.
This fails after 14 additions of M_PI_2 to itself as a float argument to
cairo_rotate, but the failure is in the detection of the integer translate,
not in the trig components. I believe this is due to the matrix inversion,
which may need similar rounding.
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
src/cairo-matrix.c | 37 +++++++++++++++++++++++--------------
src/cairo-pattern.c | 2 +-
src/cairo-xcb-surface-render.c | 7 ++-----
3 files changed, 26 insertions(+), 20 deletions(-)
commit 7d44f8d47e7c4389cf6a3baefc7fee7b5dffbb21
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Tue Aug 12 14:16:46 2014 +0530
test : build fix when --enable-pdf=no
Though --enable-pdf=yes by default, when --enable-pdf=no, the cairo build
fails due to unavailability of cairo-pdf.h and related cairo pdf's apis.
The current changes fixes this issue by conditionally checking if PDF
surface is enabled or not.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <bryce@osg.samsung.com>
Tested-by: Bryce Harrington <bryce@osg.samsung.com>
test/fallback-resolution.c | 5 +++++
1 file changed, 5 insertions(+)
commit c7ff9bb32e20679d6da4e8a2856be716e5bd9e12
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Jul 21 17:10:16 2014 +0200
Remove LTO support
This just never worked too well and caused too many issues. I don't think anyone
will miss this.
As mentioned in the below bug report, proper LTO support also requires using
special versions of ranlib, nm and ar which support the LTO object files.
Otherwise, calling the normal ranlib on an .a library breaks the list of
exported symbols and thus completely breaks the static library.
This (partly) reverts the following commits:
c3645d97ebd24c6f7ad850785d585aebc706a11c configure.ac: Add a --disable-lto configure option
d486ea30f1a58640a1178de74f705a73845b1cda configure: Conditionally include -flto
0870c6fb5b39dcc04fa376123848adde2d06d2ce gcc-4.5 warnings and optimisation flags.
(The last commit is the one which brought us -flto in the first place even
though it doesn't talk about this. It's also the one which is only reverted
partly.)
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=77060
CC: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
build/configure.ac.warnings | 16 ----------------
1 file changed, 16 deletions(-)
commit 27c9923e9887bab5854ecccc81dda69687a0b9ae
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 1 11:29:29 2014 +0100
xlib: Undo debug hack to force fallbacks
Remove the debug hack from
commit f337342c88092a251dc00476c4a9880d1cb90822
Author: Bill Spitzak <spitzak@gmail.com>
Date: Fri Jul 18 18:46:26 2014 -0700
V6 image: Use convolution filters for sample reconstruction when downscaling
as it forces the fallback image surface for xlib causing severe
performance degradation.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82002
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Bill Spitzak <spitzak@gmail.com>
Cc: Bryce Harrington <b.harrington@samsung.com>
src/cairo-xlib-display.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit f337342c88092a251dc00476c4a9880d1cb90822
Author: Bill Spitzak <spitzak@gmail.com>
Date: Fri Jul 18 18:46:26 2014 -0700
V6 image: Use convolution filters for sample reconstruction when downscaling
This version removes testing code and has some changes to match my current
pixman version. My proposed pixman patch (not finished yet) will produce
exactly the same results as this cairo patch.
This code contains an all-new filter generator to replace the one that is
in pixman. Results in 222 pass/298 failed image tests, which is much better
than the previous versions of this patch.
Filter generator (which should probably be in pixman):
- Single filter, no "reconstruction" and "sample" filter
- Filters for derivative < 1 work
- Fixed IMPULSE and BOX
- Added TENT, CATMULL_ROM, NOTCH. Remove LANZCOS2.
- Renamed CUBIC to MITCHELL
Cairo's filter settings:
- CAIRO_FILTER_GOOD: uses BOX filter for scales less than .75 in either
direction. Uses PIXMAN_FILTER_GOOD (ie BILINEAR) otherwise.
- CAIRO_FILTER_BEST: uses CATMULL filter always. Upscaling more than 2x will
produce anti-aliased square pixels, similar to OS/X.
- CAIRO_FILTER_GAUSSIAN: this obsolete value is used to test other filters.
The program must declare and poke the filter into the static varialbe
ikernel. This should be removed for production code.
NYI: This version uses the fallback for xlib always. The xlib and xcb backends
must be rewritten to use the fallback version if filtering is needed. Or the
filtering code must be moved to XRender.
src/cairo-image-source.c | 420 +++++++++++++++++++++++++++++++++++++++++++++-
src/cairo-xlib-display.c | 2 +-
2 files changed, 420 insertions(+), 2 deletions(-)
commit e71b917bbfc881ddd6ae6ed4367efd328a95af93
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Thu Jul 24 18:41:03 2014 -0700
xlib: Fix mispelling in a comment
src/cairo-xlib-display.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 82b4781f18d4dc3d368b04a436f854a8f0cff1e1
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Mon Jul 21 15:05:14 2014 -0700
cairo-wideint: Fix typo in two cairo_uint128 functions
_cairo_int128_negate and _cairo_int128_not are #defines of
_cairo_uint128_negate and _cairo_uint128_not respectively. The function
implementations should use the actual function name not the aliases. On
systems without a uint128 type, these could lead to build issues.
Credit for finding this go to Dr. Peter Barnes, LLNL.
src/cairo-wideint.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
commit 9e6ceb23b45b7da19911b38eddb7f42f921929b1
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Wed Jul 23 12:12:04 2014 -0400
More binary mode for Windows
Based on:
https://github.com/Alexpux/MINGW-packages/blob/master/mingw-w64-cairo/0012-more-binary-mode.mingw.patch
boilerplate/cairo-boilerplate.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 23dce494d1850ee28a9c8d67972052c5a784cacf
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Wed Jul 23 12:09:17 2014 -0400
Binary mode in any2ppm
From:
https://github.com/Alexpux/MINGW-packages/blob/master/mingw-w64-cairo/0010-binary-mode-in-any2ppm.mingw.patch
test/any2ppm.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
commit f4dbba26d4fc571e0621f3c7a98196c501f8bcc5
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Jul 14 15:54:38 2014 -0400
[cairo-trace] Work around fontconfig :charset= parse format change
As dicussed on the mailing list.
util/cairo-script/cairo-script-operators.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
commit 2a37cbbabc00c7474be5baa25f848778b1773b2c
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Jul 8 15:53:41 2014 -0700
configure.ac: Fix broken build for Qt backend
When --enable-qt is specified, the build will break due to missing
libstdc++:
CCLD cairo-test-suite
/usr/bin/ld: ../boilerplate/.libs/libcairoboilerplate.a(libcairoboilerplate_cxx_la-cairo-boilerplate-qt.o): undefined reference to symbol '__gxx_personality_v0@@CXXABI_1.3'
//usr/lib/x86_64-linux-gnu/libstdc++.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
When using g++ to compile and link code, g++ automatically links
libstdc++. However, in cairo we're using g++ only to compile, so need
to explicitly link against libstdc++ for backends that need iostream,
stl, or other stdc++ features.
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=59038
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
configure.ac | 1 +
1 file changed, 1 insertion(+)
commit c3645d97ebd24c6f7ad850785d585aebc706a11c
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Jul 8 13:14:20 2014 -0700
configure.ac: Add a --disable-lto configure option
Link-Time Optimization seems to be stable enough with gcc 4.8 and 4.9,
but has proven to be an issue in the past for many cairo users (webkit,
efl, ubuntu, opensuse, gentoo, arch...) who carry patches to disable it.
Gentoo's patch[1] adds a --disable-lto option to leave it enabled by
default but give users the ability to work around lto related build
problems (c.f. fdo #77060). Patch appears to have been authored by
Alexandre Rostovtsev[2].
1: sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/cairo/files/cairo-1.12.16-lto-optional.patch
2: https://bugs.gentoo.org/show_bug.cgi?id=509552
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=60852
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
Notes:
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=77060
build/configure.ac.warnings | 15 ++++++++++-----
1 file changed, 10 insertions(+), 5 deletions(-)
commit 0f46fc8dc173698b6d61ba757e1e42f2319d6ace
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Jul 8 12:39:02 2014 -0700
configure.ac: Quell warnings about AM_PROG_AR when using automake 1.12
Without this, autogen.sh issues warnings like:
/usr/share/automake-1.14/am/ltlibrary.am: warning: 'libcairoboilerplate_cxx.la': linking libtool libraries using a non-POSIX
/usr/share/automake-1.14/am/ltlibrary.am: archiver requires 'AM_PROG_AR' in 'configure.ac'
boilerplate/Makefile.am:18: while processing Libtool library 'libcairoboilerplate_cxx.la'
AM_PROG_AR was introduced in automake 1.11.2. As per the docs for
AM_PROG_AR, it is supposed to be included when the archiver ('ar') is
used, but prior to automake 1.12 the warning was only shown iff
-Wextra-portability was specified. automake 1.12 introduced a change
that includes -Wextra-portability when -Wall is specified.
For further discussion of the issue, see:
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11401
http://lists.gnu.org/archive/html/automake/2012-05/msg00014.html
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
configure.ac | 1 +
1 file changed, 1 insertion(+)
commit 312553af298692111928a9443b75a00bf46d2adb
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Fri Jul 11 11:05:43 2014 -0400
[trace] Don't print FC_CHARSET, FC_LANG, and FC_CAPABILITY
There are many more that can go, but these take the most bytes.
FC_CHARSET needs to go specially because I recently changed
its format in fontconfig. Ouch!
util/cairo-trace/trace.c | 21 +++++++++++++++++----
1 file changed, 17 insertions(+), 4 deletions(-)
commit 4cb220773d4babe216afae1198bb192956ffeae9
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Fri Jul 11 10:58:14 2014 -0400
chmod a+x cairo-trace
configure.ac | 2 ++
1 file changed, 2 insertions(+)
commit e279709bf32f13314b8008e6f640d2fab8cc8a78
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Thu Jul 10 16:14:46 2014 +0530
skia : Add Debug support for skia backend
Enable the DEBUG support for skia backend to provide more
descriptive information on the unexpected operational behaviours.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-skia-surface.cpp | 28 +++++++++++++++++-----------
1 file changed, 17 insertions(+), 11 deletions(-)
commit 8a605472d201e30ddcf3895d554cc4143cd54fb2
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Wed Jul 9 15:50:57 2014 +0530
.gitignore: Ignore the generated profile data files from callgrind tool in test/
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
test/.gitignore | 1 +
1 file changed, 1 insertion(+)
commit 30cb23d3b64ab085578c23a194391d982ad10d32
Author: Jeff Muizelaar <jmuizelaar@mozilla.com>
Date: Wed Jul 9 16:33:53 2014 -0400
clang-cl: Use size of the pointer explicitly
This works around http://llvm.org/PR20216.
src/cairo-compiler-private.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 28c3b92fb4f6ed8511a46ad9c0e1bd8cfdd477ed
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Jul 8 17:44:56 2014 -0700
.gitignore: Ignore two generated files in build/
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
.gitignore | 1 -
build/.gitignore | 2 ++
2 files changed, 2 insertions(+), 1 deletion(-)
commit 7bd68b57999bf1564ecbadf6c9aae6bf9f7aa4a7
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Mon Jun 30 17:05:26 2014 +0530
skia: update the source to build with the latest skia
This fixes several build related issues for the skia backend
which is introduced due to skia source up-gradation.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
configure.ac | 12 ++++----
src/skia/cairo-skia-context.cpp | 65 +++++++++++++++++++++++++++++----------
src/skia/cairo-skia-private.h | 4 +--
src/skia/cairo-skia-surface.cpp | 13 +++-----
4 files changed, 60 insertions(+), 34 deletions(-)
commit be62b1221169469c8923a5a1ec669761f5344c57
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Wed Jul 2 14:13:58 2014 +0530
xcb: make use of _cairo_surface_is_xcb to check for surface type
Introduced a new inline function _cairo_surface_is_xcb() as similar to
_cairo_surface_is_image() and used the same to check for xcb surface
type
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
src/cairo-xcb-private.h | 15 +++++++++++++++
src/cairo-xcb-surface-core.c | 2 +-
src/cairo-xcb-surface-render.c | 2 +-
src/cairo-xcb-surface.c | 4 ++--
4 files changed, 19 insertions(+), 4 deletions(-)
commit 550385fb004e6064305518cf265adc03bd2d0c0b
Author: Jeff Muizelaar <jmuizelaar@mozilla.com>
Date: Mon Jun 30 14:17:18 2014 -0400
Don't use __FUNCTION__ as a string literal
clang-cl doesn't support this and we don't gain much
from using it.
src/cairo-compiler-private.h | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
commit f574fec8d2d1f83525fd7e4dbb266b6e5091627d
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Mon May 19 14:59:29 2014 +0530
src : Fix warn_unused_result warnings from gcc
Fix 'unused-result' warning messages by
- replacing cairo_private to cairo_private_no_warn in the
declaration of the cairo private apis '_cairo_surface_unmap_image',
'_cairo_polygon_add_line', '_cairo_polygon_add_external_edge' and
'_cairo_polygon_add_contour'
- removing cairo_warn for 'render_rows' member function pointer in
'struct _cairo_span_renderer'
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
src/cairo-spans-private.h | 2 +-
src/cairoint.h | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
commit 5741a7f2cab3548467a020c89bb7363d398f9c0d
Author: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Date: Fri May 9 21:22:04 2014 +0200
test: fix build of any2ppm if fork not available
The test program any2ppm can run as daemon. This feature can be disabled
at compile time, if the required headers are not present. However the
support for fork() is not checked.
This patch fixes this issue.
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
test/any2ppm.c | 2 ++
1 file changed, 2 insertions(+)
commit 3d94269bd427304af70ae681d5533b572d19ec3c
Author: Uli Schlachter <psychon@znc.in>
Date: Tue May 13 10:15:12 2014 +0200
Revert "image: Use convolution filters for sample reconstruction when downscaling"
This reverts commit fb57ea13e04d82866cbc8e86c83261148bb3e231.
When running cairo-test-suite with the parameter "-a", it also runs each test
with a non-zero device-offset and device-scaling. The above commit influenced
the device-scaling results badly. E.g. some test results ended up with a black
border at the top-most and left-most row that looked like there was an offset of
"0.5" in drawing the image and thus pixels outside of the image were sampled.
This can be seen by the influence that this revert has on the results from
running CAIRO_TEST_TARGET=image ./cairo-test-suite -a:
Before: 31 Passed, 489 Failed [1 crashed, 8 expected], 31 Skipped
After: 225 Passed, 295 Failed [1 crashed, 8 expected], 31 Skipped
Most of the failures that disappeared are from the device-scaling tests.
With such disastrous results on the test suite, this cannot really be usable for
real-world applications.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-image-source.c | 65 +++++++---------------------------------------
1 file changed, 10 insertions(+), 55 deletions(-)
commit 2d89cbb30e276cec57a893d4f0d45428858e5e8d
Author: jimmyfrasche <soapboxcicero@gmail.com>
Date: Sun May 25 20:22:16 2014 -0700
Add more info to cairo_surface_set_mime_data docs.
Explains how to use cairo_surface_set_mime_data so that the image always
gets used even if the MIME data cannot be.
Signed-off-by: jimmyfrasche <soapboxcicero@gmail.com>
src/cairo-surface.c | 10 ++++++++++
1 file changed, 10 insertions(+)
commit ead5c7909f3db1d0d81121fc2775c458871891b2
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Mon May 12 14:59:03 2014 +0530
vg: Use EGL_NONE and GLX_NONE in place of None
Use EGL_NONE in EGL section and GLX_NONE in GLX section
instead of None in cairo-boilerplate-vg.c
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55805
boilerplate/cairo-boilerplate-vg.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
commit d1453c512c8213115bd489b3ea8849b1c840b551
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Tue May 6 15:44:21 2014 +0530
test : Maintain consistency in the usage of xcalloc
xcalloc is a wrapper for calloc. If it can't allocate memory then it
terminates the program. The current changes replace the usages of calloc
by xcalloc in tests.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
test/negative-stride-image.c | 2 +-
test/stride-12-image.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit 69e10bc8b53792f58e06387542c4eeeca52795c9
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Thu May 15 15:59:58 2014 +0530
glx: Use GLX_NONE in place of None
Use "GLX_NONE" in rgb and rgba attributes instead of
"None" in cairo-boilerplate-glx.c
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
boilerplate/cairo-boilerplate-glx.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
commit 247cfaaa2562d28ee39a5a35eea9772ee365937b
Author: Sylvestre Ledru <sylvestre@debian.org>
Date: Wed May 7 17:15:22 2014 +0200
Fix some memory leaks found by scan-build, the LLVM/Clang static analyzer
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
src/cairo-cff-subset.c | 4 +++-
src/cairo-pdf-surface.c | 8 +++++++-
test/pdf-mime-data.c | 2 ++
3 files changed, 12 insertions(+), 2 deletions(-)
commit 5e7b724dd3ed13c7c5a6ffe3874ad21b7fbe2176
Author: Sylvestre Ledru <sylvestre@debian.org>
Date: Wed May 7 17:16:09 2014 +0200
Remove some potential double free
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
src/cairo-truetype-subset.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 85b05e84acd89b08e5e72849133ae84cf2cdcb54
Author: jimmyfrasche <soapboxcicero@gmail.com>
Date: Sun May 11 20:06:17 2014 -0700
Pattern document clarification
Replaces documentation of the form "range 0 to 1 less than the number"
with "ranges from 0 to n-1 where n is the number", which is idiomatic
mathematical writing and less ambiguous.
Signed-off-by: jimmyfrasche <soapboxcicero@gmail.com>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-pattern.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
commit 55608e4fd6947f26789557ffc757affc509b141b
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Mon May 5 12:34:21 2014 +0530
boilerplate: Maintain consistency in the usage of switch cases
Some of the switch cases used in boilerplate are not consistent
across other source files in the same module. This patch fixes the
consistency issues of switch case usage in the boilerplate module.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Uli Schlachter <psychon@znc.in>
boilerplate/cairo-boilerplate-drm.c | 12 ++++++--
boilerplate/cairo-boilerplate-xlib.c | 12 ++++++--
boilerplate/cairo-boilerplate.c | 53 ++++++++++++++++++++++++----------
3 files changed, 55 insertions(+), 22 deletions(-)
commit 18b3cce2f5812c357e4b6310e72d72dd9ec92ed4
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue May 6 10:18:19 2014 -0700
Fix segfault in firefox when scrolling on certain pages
Bug discovered by thorsten <fly_a320@gmx.de>
Patch from Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xcb-surface-render.c | 3 +++
1 file changed, 3 insertions(+)
commit da9ef97372fb9c22f66507e0ab37968b1131f077
Author: Sylvestre Ledru <sylvestre@mozilla.com>
Date: Fri May 2 18:53:41 2014 +0200
Remove some useless declarations found by scan-build, the LLVM/clang static analyzer
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-contour.c | 1 -
src/cairo-ft-font.c | 2 --
src/cairo-path-stroke-polygon.c | 10 ----------
src/cairo-xcb-connection-core.c | 2 --
test/pdiff/lpyramid.c | 4 ++--
test/tighten-bounds.c | 2 +-
util/cairo-script/cairo-script-file.c | 1 -
7 files changed, 3 insertions(+), 19 deletions(-)
commit 52b137bc3e3284ecef3102b0d976fd2320e0f473
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Wed Apr 23 08:32:19 2014 +0530
test and util: maintain consistency in the usage of ARRAY_LENGTH macro
ARRAY_LENGTH macro is used in perf's cairo-perf.h, src's cairoint.h,
test's cairo-test.h and in some internal header files of util's
directory.So to maintain consistency ARRAY_SIZE is replaced with
ARRAY_LENGTH macro.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
test/cairo-test.c | 12 ++++++------
util/cairo-trace/trace.c | 7 ++++---
util/malloc-stats.c | 9 +++++----
3 files changed, 15 insertions(+), 13 deletions(-)
commit 0e0004a9716ca50bf14fa0e5e1919d90b8d11960
Author: Ravi Nanjundappa <nravi.n@samsung.com>
Date: Tue Apr 22 17:53:12 2014 +0530
perf: Refactor some macros to cairo-perf.h
This commit covers one of the left out modifications from
"commit cd11a4ff0421fd293279b202be800550890574bb" by Bryce.
It removes the duplicate macro definition in cairo-perf-diff-files.c
which by default includes the cairo-perf.h having MAX macro defnition.
Signed-off-by: Ravi Nanjundappa <nravi.n@samsung.com>
perf/cairo-perf-diff-files.c | 1 -
1 file changed, 1 deletion(-)
commit 2d95f803b15d3d8f70df0e7278ad7bdeaf99fb59
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Thu Apr 17 23:59:36 2014 -0700
NEWS: Add bug links and reword feature and bug descriptions
NEWS | 67 +++++++++++++++++++++++++++++++++++++++++++++---------------------
1 file changed, 46 insertions(+), 21 deletions(-)
commit cd11a4ff0421fd293279b202be800550890574bb
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Apr 16 17:37:18 2014 -0700
perf: Refactor some common macros to cairo-perf.h
These macros are standard in src's cairoint.h and test's cairo-test.h
internal header files, so for consistency do the same thing with perf's
cairo-perf.h.
Reviewed-by: Uli Schlachter <psychon@znc.in>
perf/cairo-perf-chart.c | 2 --
perf/cairo-perf-compare-backends.c | 1 -
perf/cairo-perf-trace.c | 5 ++---
perf/cairo-perf.h | 12 ++++++++++++
perf/micro/cairo-perf-cover.c | 5 ++---
perf/micro/dragon.c | 8 --------
perf/micro/zrusin.c | 4 +---
7 files changed, 17 insertions(+), 20 deletions(-)
commit 3e22a8580a8045e450a2f2e47c8ac36abf8882ae
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Apr 11 10:39:39 2014 +0200
pthread-same-source: Refresh reference images
These reference images are generated by the new GENERATE_REFERENCE mode that the
previous commit introduced.
I have no idea what the "base" images. From my reading of the code in
boilerplate/, these images will be used by the test-XXX targets. However, these
seem to generate the same result than e.g. the image backend. Thus, I deleted
these files.
There is still pthread-same-source.quartz.xfail.png. This file was created in
commit b6e16b8d and touched in commit 5a1e590b1. No idea if this is still valid
and since I don't have a Mac, I won't touch it.
The test is still broken on the following backends (out of the backends I have
compiled in). This mostly seems to be differences in image scaling, but I
couldn't figure out an easy way to tell the test suite that the new results are
correct.
test-paginated, ps2, ps3, xcb, xcb-window, xcb-window&, xcb-fallback, xlib,
xlib-window, xlib-fallback, recording
Signed-off-by: Uli Schlachter <psychon@znc.in>
.../pthread-same-source.base.argb32.ref.png | Bin 1000 -> 0 bytes
.../pthread-same-source.base.rgb24.ref.png | Bin 1000 -> 0 bytes
test/reference/pthread-same-source.image16.ref.png | Bin 1007 -> 1048 bytes
test/reference/pthread-same-source.ref.png | Bin 1000 -> 1076 bytes
4 files changed, 0 insertions(+), 0 deletions(-)
commit ddd344fb0f5a0e9a0e9a34306598a777ffb7667a
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Apr 12 12:07:23 2014 +0200
pthread-same-source: Add ref image generation
When the new GENERATE_REFERENCE symbol is defined to 1, no threads are involved
at all. In this case, all operations are done sequentially by the main thread.
Thus, in this mode no thread issues can occur and the result must be usable as
reference images.
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
test/pthread-same-source.c | 25 ++++++++++++++++++++++---
1 file changed, 22 insertions(+), 3 deletions(-)
commit 457597e2dc6fac6c879ba51da892cf31a3c432eb
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Fri Mar 14 20:24:51 2014 +0000
NEWS: Summarize recent changes
This updates NEWS with items shown by `git log --stat 1.12.8..`
Hopefully I haven't misrepresented any of the work done. For sake of
brevity where there were several changes in one area, I've given a
single general entry to summarize those changes. The division between
features and bug fixes is quite rough.
NEWS | 88 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 88 insertions(+)
commit bb17403622e9ea474017e0039af8ee48b2b285db
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Mar 14 15:31:34 2014 +0100
mesh-rasterize: Fix number of iterations
Commit 44a09f462c fixed a compiler warning, but changed the result of this code.
This is because the old 'for' loop did one more iteration than the new 'while'
loop. Fix this by incrementing the loop counter once before the loop.
Fixes: mesh-pattern mesh-pattern-accuracy mesh-pattern-conical
mesh-pattern-control-points mesh-pattern-fold mesh-pattern-overlap
mesh-pattern-transformed record-mesh
Signed-off-by: Uli Schlachter <psychon@znc.in>
Tested-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-mesh-pattern-rasterizer.c | 1 +
1 file changed, 1 insertion(+)
commit 372c8c314a93e0efba53319a120a9ccc2c99658b
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Mar 14 13:47:38 2014 +0100
mask compositor: Set a check_composite method
Commit 503b6b9e2ea6 added a check_composite method to the mask compositor, but
only added it to one of the existing implementations. This commit fixes that.
In cairo-image-compositor.c, there is already a check_composite method which
just returns success for the traps compositor. This commit makes the mask
compositor use that one.
I don't want to say much about cairo-image-mask-compositor.c except that I
wondered why this file and the file above both define a non-static function
called _cairo_image_mask_compositor_get(). In my opinion, that file should just
be deleted, since it confuses e.g. ctags, but I'll let someone else clean this
up.
Fixes 493 crashes in the test suite for the test-mask target.
Signed-off-by: Uli Schlachter <psychon@znc.in>
Tested-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-image-compositor.c | 2 +-
src/cairo-image-mask-compositor.c | 3 +++
2 files changed, 4 insertions(+), 1 deletion(-)
commit bc05dbccd7dd2f137038479b30ed71c98ff81da6
Author: Uli Schlachter <psychon@znc.in>
Date: Thu Feb 27 10:56:20 2014 +0100
Fix warnings from check-doc-syntax.sh
$ ./check-doc-syntax.sh
Checking documentation for incorrect syntax
./cairo-types-private.h (148): WARNING: cairo_hash_entry_t: missing 'Since' field (is it a private type?)
./cairo-types-private.h (161): WARNING: cairo_hash_entry_t: not found
./cairo-types-private.h (175): WARNING: cairo_lcd_filter_t: missing 'Since' field (is it a private type?)
./cairo-cache-private.h (85): WARNING: cairo_cache_entry_t: missing 'Since' field (is it a private type?)
./cairo-region.c (857): WARNING: cairo_region_overlap_t: not found
./cairo-raster-source-pattern.c (62): WARNING: SECTION:cairo-raster-source 'Since' field in non-public element
The warnings about missing 'Since' fields are fixed by changing the
documentation comment so that the script can see that these are private types.
The documentation for cairo_region_overlap_t gets moved to cairo.h, just like
e.g. the documentation for cairo_status_t.
The 'Since' field from the SECTION:cairo-raster-source is removed, because this
kind of field is needed on the individual functions and structs, not on the
section.
Thanks to Bryce Harrington for bringing this up!
Signed-off-by: Uli Schlachter <psychon@znc.in>
Tested-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-cache-private.h | 2 +-
src/cairo-raster-source-pattern.c | 2 --
src/cairo-region.c | 12 ------------
src/cairo-types-private.h | 4 ++--
src/cairo.h | 11 +++++++++++
5 files changed, 14 insertions(+), 17 deletions(-)
commit 0c189910539aa05125b60e59b7101e9b9685582f
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Thu Mar 13 15:22:40 2014 -0700
skia: Add section definitions and code docs for skia backend
This fixes several distcheck errors regarding missing code docs.
The skia backend was added in commit d7faec02, which was included in the
1.10 release.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
doc/public/cairo-sections.txt | 5 +++--
src/cairo-skia-surface.cpp | 21 +++++++++++++++++++++
src/skia/cairo-skia-private.h | 19 +++++++++++++++++++
3 files changed, 43 insertions(+), 2 deletions(-)
commit 0eb686d5454073f65ff78520ca862d07672d2a3f
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 25 17:43:22 2014 -0800
Document that libglib2.0-doc is needed to avoid some xref warnings
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
RELEASING | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit 8d0abb4a945a6875de956ef12883e7efe7b7fbc7
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 25 17:09:03 2014 -0800
surface: Make parameter naming consistent between header and impl
This fixes this set of distcheck errors generating docs:
src/cairo-surface.c:1668: warning: Parameter described in source code
comment block but does not exist. FUNCTION:
cairo_surface_set_device_scale Parameter: sx.
src/cairo-surface.c:1668: warning: Parameter described in source code
comment block but does not exist. FUNCTION:
cairo_surface_set_device_scale Parameter: sy.
src/cairo-surface.c:1668: warning: Parameter description for
cairo_surface_set_device_scale::x_scale is missing in source code
comment block.
src/cairo-surface.c:1668: warning: Parameter description for
cairo_surface_set_device_scale::y_scale is missing in source code
comment block.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-surface.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
commit 4450af4f035fce8b468ad3ac9cd34da7bf81b688
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 25 14:43:06 2014 -0800
Mark recently added _cairo_output_stream_print_matrix private symbol
This fixes a distcheck error about a local PLT entry.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-output-stream-private.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit ae954ae3ea262efae221cfda18eee73b5654a729
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 25 13:20:49 2014 -0800
doc: Drop a couple quartz routines which distcheck claims don't exist
These routines actually do exist in the source code, and have proper
documentation, so I'm not sure why distcheck dislikes them, but it's
happier without these listed.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
doc/public/cairo-sections.txt | 3 ---
1 file changed, 3 deletions(-)
commit f4a1a75078a844e2581615566122f4232d2a4f62
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 25 13:17:00 2014 -0800
doc: Add missing sections and symbols for public docs
This adds a number of items to the documentation for which code docs
exist, and also adds sections for cairo-skia and cairo-surface-observer.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48784
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
doc/public/cairo-sections.txt | 38 ++++++++++++++++++++++++++++++++++++++
src/cairo-surface-observer.c | 5 +++++
src/cairo.h | 9 +++++++++
3 files changed, 52 insertions(+)
commit ed175b2a2bebb6def85133257bc11a875d13b0dd
Author: Uli Schlachter <psychon@znc.in>
Date: Thu Mar 6 09:45:08 2014 +0100
clip: Fix handling of special all-clipped cairo_clip_t
_cairo_clip_intersect_box() wasn't checking if it was called with the special,
read-only all-clipped clip and thus could have ended up writing to read-only
memory.
References: https://bugs.freedesktop.org/show_bug.cgi?id=75819
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-clip-boxes.c | 3 +++
1 file changed, 3 insertions(+)
commit 3b261bea7d8e8094ff3899aefab6bbc8628a3585
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Mar 6 08:34:10 2014 +0000
clip: Do not modify the special all-clipped cairo_clip_t
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75819
src/cairo-clip-boxes.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
commit 42fdfa812eb05ecb539af739445ec8c36f0e7ac1
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Mar 5 12:50:36 2014 -0800
gitignore: Ignore generated tmpl dir in public docs
doc/public/.gitignore | 1 +
1 file changed, 1 insertion(+)
commit f88bd92e8b3d87ec728e3fee51eb82f07db8c95c
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Wed Mar 5 01:13:59 2014 -0800
Revert "[ft] Fix memory bug in copying bitmaps"
This reverts commit a0f556f37fb7016aa304b7cf0e811c0d38f0b969.
The change was clearly wrong now that I read. I was probably
tricked by what was fixed in the follow-up commit
e738079302a968b7b1fb9101cd4d92a8887bedce.
src/cairo-ft-font.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit 5c9fdcb4aa9c3c32fe4760586c11924dc5fb47ef
Author: Koji Egashira <Koji.Egashira@access-company.com>
Date: Mon Apr 29 18:31:08 2013 +0900
image: Add NULL checks for return value of _pixman_image_for_color()
This fixes crash in pixman_image_composite32().
Originally fixed by Yoshitaro Makise.
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-image-compositor.c | 6 ++++++
1 file changed, 6 insertions(+)
commit 6a03ae5859a92d3d4dbe97c9d598700fbcf1d666
Author: Benjamin Otte <otte@redhat.com>
Date: Mon Mar 3 01:16:25 2014 +0100
xlib: Fix typo in documentation
src/cairo-xlib-display.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit f1709c298c355499a18796f389fa0fd9bc52b8c3
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Feb 26 18:55:25 2014 -0800
Correct spelling of "tessellator" throughout code
Based on patch suggested by Homer Hsing
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50411
src/cairo-cogl-surface.c | 6 +++---
src/cairo-fixed-private.h | 2 +-
src/cairo-fixed-type-private.h | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
commit 273210683f182d72789f88df80fec8c4d08bb30f
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Feb 26 18:44:46 2014 -0800
Add comment to explain _cairo_edge_compute_intersection_*
Patch by Homer Hsing
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50412
src/cairo-fixed-private.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit e555dfc7173897bc0819c715e8897cd1c886e2a3
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Feb 26 18:42:41 2014 -0800
Add explanation to _cairo_surface_create_in_error
Patch by Homer Hsing
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50413
src/cairo-surface.c | 10 ++++++++++
1 file changed, 10 insertions(+)
commit be206ddf20e7b4e0e87d91c7a18cbdb9cfcec8e6
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Feb 26 18:40:12 2014 -0800
Add explanation to enum _cairo_int_status
Patch based on suggestion by Homer Hsing
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50416
src/cairo-error-private.h | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
commit 19b31bbe7018dbe031c650e7497b19a0607ad453
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Feb 26 18:36:15 2014 -0800
image: Fix bad HTML generation in code docs for cairo-format-stride-for-width
Patch from Simon KÃ¥gedal Reimer
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=63257
src/cairo-image-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 7b50883577df0949f793cc6dbfda281e96119dcd
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Feb 19 11:25:16 2014 -0800
gl: Handle PIXMAN_a8r8g8b8_sRGB format in switch
Fixes the following compiler warning:
cairo-gl-surface.c:182:5: warning: enumeration value
‘PIXMAN_a8r8g8b8_sRGB’ not handled in switch
Same fix as done for image in 1d0055078.
Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-surface.c | 3 +++
1 file changed, 3 insertions(+)
commit 44a09f462c8ff59f864967f45f9b31e473632b7a
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 18 21:13:53 2014 -0800
mesh: Avoid theoretical infinite loops
This quells this warning:
src/cairo-mesh-pattern-rasterizer.c:731:5: warning: cannot
optimize possibly infinite loops
I guess the compiler's complaining because if vsteps were negative or
equal to UINT_MAX the loop could cycle infinitely. Silly compiler.
Fix as suggested by Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-mesh-pattern-rasterizer.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
commit 19f412bb1faa5391a03c121c31f7ad94fd275d82
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 18 21:01:07 2014 -0800
xml: constify source objects for emit routines
This quells the following warnings:
src/cairo-xml-surface.c:576:5: warning: passing argument 2 of
‘_cairo_xml_surface_emit_clip_boxes’ discards ‘const’ qualifier from
pointer target type
src/cairo-xml-surface.c:462:1: note: expected ‘struct cairo_clip_t
*’ but argument is of type ‘const struct cairo_clip_t *’
Most of the cairo_xml*emit* routines const their source objects;
these should follow suit.
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xml-surface.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit dc8ca191f584f837f4c2b70d0ebbe2c9d87575cf
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 18 20:56:09 2014 -0800
xml: Drop unused variable
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xml-surface.c | 1 -
1 file changed, 1 deletion(-)
commit 9b8a752249c69ba94461b3ef6d919c1b86ae6fab
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 18 20:13:57 2014 -0800
test: Quell warning for deprecated g_type_init()
The g_type_init() routine was deprecated in glib 2.34. Tested and
verified this conditionalization on glib 2.32 and 2.36. No need to
change version dependencies.
test/any2ppm.c:864:5: warning: ‘g_type_init’ is deprecated
(declared at /usr/include/glib-2.0/gobject/gtype.h:669)
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
test/any2ppm.c | 2 ++
1 file changed, 2 insertions(+)
commit 75e671c29b2f2916c41af46f8c3707539b235674
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 18 18:10:20 2014 -0800
test: Quell warning for inclusion of old rsvg header files
This silences a warning due to header file deprecated as of libsrvg
2.36.2. Tested and verified this hackaround on librsvg 2.36.4 and
2.36.1. No need to change version dependencies.
In file included from test/any2ppm.c:73:0:
/usr/include/librsvg-2.0/librsvg/rsvg-cairo.h:27:2: warning:
#warning "Including <librsvg/rsvg-cairo.h> directly is deprecated."
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
test/any2ppm.c | 2 ++
1 file changed, 2 insertions(+)
commit a346e40ed33e69c7c03be3aa1b7b0065e4ee1d07
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Tue Feb 18 17:37:22 2014 -0800
perf: Guarantee path width is non-negative
This quells the following warning:
perf/micro/hatching.c:39:5: warning: cannot optimize loop, the
loop counter may overflow
Width and height aren't going to be negative so enforce it so that the
compiler can do whatever optimization it wants to do.
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/micro/hatching.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 4144307dbfbe7b297135d9ea4b080cae7e06b997
Author: Ryan Lortie <desrt@desrt.ca>
Date: Tue Feb 4 10:47:40 2014 +0000
cairo-version: fix docs build
We do some evil things in this doc comment by closing a <para> tag further up.
Make sure we reopen it at the end so that gtk-doc's attempt to close it again
doesn't result in an imbalance.
src/cairo-version.c | 1 +
1 file changed, 1 insertion(+)
commit 39b7d5138eb83cc2d4f3ab6039894cc61c7fe4c7
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jan 29 17:07:04 2014 -0800
cairo-script: Compare status with CSI enums
CSI_STATUS_SUCCESS is defined as equivalent to CAIRO_STATUS_SUCCESS.
We should prefer the former when comparing against csi_status_t
variables, else we'll get a warning:
cairo-script-interpreter.c:637:23: warning: comparison between
‘csi_status_t’ and ‘enum _cairo_status’ [-Wenum-compare]
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-script/cairo-script-interpreter.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 18d66c88a2f1068fb490efa33ead93d0e2d71c41
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jan 29 10:22:51 2014 -0800
cairo-script: Error if asked to decompress with missing compression lib
This quells the following warning:
warning: enumeration value ‘LZO’ not handled in switch [-Wswitch-enum]
The LZO enum value is defined and used elsewhere, even if lzo support
isn't available.
This situation might arise if cairo scripts were generated on one system
with lzo, and then replayed on a system without it. For now simply
error out if this occurs.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-script/cairo-script-file.c | 8 ++++----
util/cairo-script/cairo-script-operators.c | 16 ++++++++--------
2 files changed, 12 insertions(+), 12 deletions(-)
commit 1ce452db4ca348944ca88edfdadb6c53a4d55733
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jan 29 10:10:24 2014 -0800
cairo-trace: Stringify CAIRO_STATUS_JBIG2_GLOBAL_MISSING
This error enum was added last September when JBIG2 support was added.
Support it as well in the tracing code. This fixes this warning:
trace.c:1544:5: warning: enumeration value
‘CAIRO_STATUS_JBIG2_GLOBAL_MISSING’ not handled in switch [-Wswitch]
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-trace/trace.c | 1 +
1 file changed, 1 insertion(+)
commit 9a29805f4e666577e5fe72fec62ecc76719862d9
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jan 29 10:04:41 2014 -0800
test: Drop unused path variable in two recently added tests
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
test/paint-with-alpha-group-clip.c | 2 --
test/rotate-stroke-box.c | 2 --
2 files changed, 4 deletions(-)
commit 0723290a6f7261be51312d0c53a7d4188a31bb1c
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jan 29 10:01:50 2014 -0800
test: Handle error in fgets call in ps-eps test
Most likely this is just a theoretical problem since we just checked
feof, but this quells the following warning:
ps-eps.c:216:8: warning: ignoring return value of ‘fgets’, declared with
attribute warn_unused_result [-Wunused-result]
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
test/ps-eps.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
commit 1b522f81e22fd320e6962ffb54121c10ece39275
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jan 29 09:57:24 2014 -0800
test: Replace deprecated rsvg_init() in any2ppm test
As of libsvg 2.35 calling g_type_init() is sufficient.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 2 +-
test/any2ppm.c | 1 -
2 files changed, 1 insertion(+), 2 deletions(-)
commit 5de25951a43f51cade42549ae60e52ffb391d61e
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Jan 27 17:34:00 2014 -0500
Preserve current-point in copy_path()/append_path() sequence
Fixes path-currentpoint test.
src/cairo-path-fixed.c | 3 +++
1 file changed, 3 insertions(+)
commit 8d2e24479a1efbeeddced3574c1d9e92b8ee578d
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Jan 27 17:31:12 2014 -0500
[tests] Add path-currentpoint
Checks whether copy_path()/append_path() preserves current-point.
Currently failing.
test/Makefile.sources | 1 +
test/path-currentpoint.c | 89 ++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 90 insertions(+)
commit 2a7f133639bed86a29dd9693cb78c0aa42eaff30
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Jan 19 20:06:25 2014 +0100
cairo svg: Use \n instead of /n in bitmap fonts
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-svg-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit b56b971141bf22ee3452b7f6f5e2dfd373b99e13
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Jan 11 20:49:05 2014 +1030
type1: strip space from end of font name
src/cairo-type1-subset.c | 3 +++
1 file changed, 3 insertions(+)
commit ee0e2b9272f6f21092fde7bee9b9237e682d4147
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Jan 11 20:57:44 2014 +1030
ps: add font DSC comments
src/cairo-ps-surface.c | 34 +++++++++++++++++++++++++---------
1 file changed, 25 insertions(+), 9 deletions(-)
commit 2d3ee70ed37ed2120d5c5f75277172620e32084c
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Jan 11 19:09:55 2014 +1030
ps: cairo_set_page_size does not need to be in eps output
src/cairo-ps-surface.c | 68 +++++++++++++++++++++++++-----------------------
1 file changed, 36 insertions(+), 32 deletions(-)
commit 26d0edbc35504624cbe96e95e338351e219bb262
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Jan 11 10:42:33 2014 +1030
ps: use setpagedevice to set page size
https://bugs.freedesktop.org/show_bug.cgi?id=73452
src/cairo-ps-surface.c | 40 +++++++++++++++++++++++++++++++++++++++-
1 file changed, 39 insertions(+), 1 deletion(-)
commit 97f6e2005d9cbc9c9dd7cc21445df7c08e084c83
Author: Marek Kasik <mkasik@redhat.com>
Date: Thu Jan 9 17:28:32 2014 +0100
font: Generate PDFs with correct font names
Escape PostScript names of loaded fonts. These can not
contain white spaces and delimiter characters when saving
them to a PostScript file or a PDF file.
src/cairo-cff-subset.c | 2 ++
src/cairo-scaled-font-subsets-private.h | 15 ++++++++++++
src/cairo-scaled-font-subsets.c | 40 +++++++++++++++++++++++++++++++
src/cairo-truetype-subset.c | 35 +++------------------------
src/cairo-type1-subset.c | 9 +++----
5 files changed, 63 insertions(+), 38 deletions(-)
commit f81b1406755a1e63f0c44996ca9ce3802b1877ba
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Wed Jan 8 07:45:20 2014 +1030
ps: fix imagemask with pattern source failure on some printers
When /PaintProc is invoked the pattern dict is pushed onto the stack.
Ensure this dict is removed.
https://bugs.freedesktop.org/show_bug.cgi?id=69485
src/cairo-ps-surface.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 2afc941d7ffad3bd37a915e82342640772d4df5b
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Jan 3 21:06:24 2014 +1030
ps: remove duplicate /Interpolate from image dictionary
http://lists.freedesktop.org/archives/poppler/2014-January/010748.html
src/cairo-ps-surface.c | 2 --
1 file changed, 2 deletions(-)
commit 2974416dfc56e1b3a59001e482679f8601abd7d5
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Thu Dec 26 17:18:41 2013 +1030
Add test for paint with alpha and clipping bug
Add test case for https://bugs.freedesktop.org/show_bug.cgi?id=68382
Something has regressed in the recording surface. All the recording
surface based backends lose the alpha from the paint_With_alpha.
test/Makefile.sources | 1 +
test/paint-with-alpha-group-clip.c | 62 ++++++++++++++++++++
test/reference/paint-with-alpha-group-clip.ref.png | Bin 0 -> 135 bytes
3 files changed, 63 insertions(+)
commit 5cafaa7b3bc045a7a26a11986c16fd9419a09922
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Thu Dec 26 15:28:29 2013 +1030
pdf: fix rectangle stroke with non rectilinear pen
src/cairo-pdf-operators.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit acd78d721e9d1c9c74c88889fbc4580700962ed1
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Thu Dec 26 15:27:30 2013 +1030
Add test for rectangle path optimization with non rectilinear pen
This fails on pdf/ps.
test/Makefile.sources | 1 +
test/reference/rotate-stroke-box.ref.png | Bin 0 -> 150 bytes
test/rotate-stroke-box.c | 51 ++++++++++++++++++++++++++++++
3 files changed, 52 insertions(+)
commit 040a9f678bfb0f0b89a0273b729c4e9f2bc23e4f
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Dec 16 19:27:02 2013 -0500
Check for XRenderSolidFill()
configure.ac | 2 +-
src/cairo-xlib-xrender-private.h | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
commit dcbe16eb40b488f89f2398181f4c3f8a65f84b52
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Dec 7 15:48:26 2013 +1030
pdf/ps: avoid outputting excess decimal places in matrices
Sometimes as a result of rounding errors in matrix transformations the
matrices in ps/pdf output look like:
0.000000000000000061 1 1 -0.000000000000000061 0 842 cm
This patch rounds to zero matrix elements that are very small compared to
other elements in the same matrix.
src/cairo-output-stream-private.h | 5 +++++
src/cairo-output-stream.c | 39 ++++++++++++++++++++++++++++++++
src/cairo-pdf-operators.c | 17 +++++---------
src/cairo-pdf-surface.c | 44 ++++++++++++++++---------------------
src/cairo-ps-surface.c | 40 ++++++++++++++-------------------
5 files changed, 84 insertions(+), 61 deletions(-)
commit 31eff5c6eb57ad379689748fd8c60a5ffe0ba481
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Nov 16 19:05:35 2013 +0100
Correct usage of CAIRO_STACK_ARRAY_LENGTH
This macro wants the array type as its argument and calls sizeof() on it
internally.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 2 +-
src/cairo-xlib-render-compositor.c | 2 +-
src/cairo-xlib-surface-shm.c | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
commit 8c73949e44d4201fafc899693964c934f7072fa6
Author: Henry Song <henry.song@samsung.com>
Date: Tue Nov 12 09:53:29 2013 -0800
gl: Fix one off issue in context cleanup
ctx->vertex_shaders is only CAIRO_GL_VAR_TYPE_MAX large, so we should
abort the loop before the index is equal to CAIRO_GL_VAR_TYPE_MAX.
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
src/cairo-gl-shaders.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 56a195a76554abe1d5567c733ba679058fe01303
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Oct 30 18:43:42 2013 -0700
Fix SSIZE_T definition problem when making with MSYS on Windows7
Patch provided by Martin Schlemmer <Martin.Schlemmer@nwu.ac.za> on the
mailing list.
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
util/cairo-missing/cairo-missing.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 66f4140e73e423bfed640cfde5cb50c08cf29e2e
Author: Kouhei Sutou <kou@clear-code.com>
Date: Mon Oct 28 22:37:54 2013 +0900
cairo_create(): Add finished surface check
Without this change, the following program crashes:
#include <cairo.h>
#include <cairo-svg.h>
int
main(int argc, char **argv)
{
cairo_t *cr;
cairo_surface_t *finished_surface;
finished_surface = cairo_svg_surface_create ("/tmp/xxx.svg", 1.0, 1.0);
cairo_surface_finish (finished_surface);
cr = cairo_create (finished_surface);
cairo_destroy (cr);
cairo_surface_destroy (finished_surface);
return 0;
}
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo.c | 2 ++
1 file changed, 2 insertions(+)
commit b9263fea14c4c6266140205c0bffb3ae93750999
Author: egag <ed44@xs4all.nl>
Date: Wed Oct 9 14:14:02 2013 +0200
Fixes stroke-clipped, i.c. of a dashed stroke
Similar to 1f4d05b55c96347aa4240190fda27f951b00c539
'Fix calling '_cairo_spline_intersect' for in-bounds checking of splines'
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-path-stroke-traps.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 98fef3cef2d0f7f463a2e4f9f1b35b09f7b6ea77
Author: Søren Sandmann Pedersen <ssp@redhat.com>
Date: Wed Oct 9 15:53:16 2013 -0400
_cairo_color_double_to_short(): Use standard rounding algorithm
The _cairo_color_double_to_short() function converts a double
precision floating point value in the range of [0.0, 1.0] to a
uint16_t integer by dividing the [0.0, 1.0] range into 65536
equal-sized intervals and then associating each interval with an
integer.
Under the assumption that an integer i corresponds to the real value i
/ 65535.0 this algorithm introduces more error than necessary as can
be seen from the following picture showing the analogous
transformation for two-bit integers:
+-----------+-----------+-----------+-----------+
0b00 | 0b01 | 0b10 | 0b11
+-----------+-----------+-----------+-----------+
which shows that some floating point values are not converted to the
integer that would minimize the error in value that that integer
corresponds to.
Instead, this patch uses standard rounding, which makes the diagram
look like this:
+-------+---------------+---------------+-------+
0b00 | 0b01 | 0b10 | 0b11
+-------+---------------+---------------+-------+
It's clear that if the values corresponding to the given integers are
fixed, then it's not possible to decrease the resulting error by
moving any of the interval boundaries.
See this thread for more information:
http://lists.freedesktop.org/archives/cairo/2013-October/024691.html
Reference images updated:
pthread-similar.ref.png
record-paint-alpha.ref.png
record90-paint-alpha.argb32.ref
record90-paint-alpha.rgb24.ref.png
xcb-huge-image-shm.ref.png
xcb-huge-subimage.ref.png
All of these have only one-step differences to the old images.
src/cairo-color.c | 11 +++--------
test/reference/pthread-similar.ref.png | Bin 170 -> 176 bytes
test/reference/record-paint-alpha.ref.png | Bin 256 -> 245 bytes
test/reference/record90-paint-alpha.argb32.ref.png | Bin 105 -> 105 bytes
test/reference/record90-paint-alpha.rgb24.ref.png | Bin 105 -> 105 bytes
test/reference/xcb-huge-image-shm.ref.png | Bin 97 -> 97 bytes
test/reference/xcb-huge-subimage.ref.png | Bin 97 -> 97 bytes
7 files changed, 3 insertions(+), 8 deletions(-)
commit 6f05ecf488314e4b0c6c6b0110963c449bebe7d7
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Oct 11 19:59:50 2013 +1030
type1-subset: don't rename glyphs used by seac operator
Bug 70364
src/cairo-type1-subset.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
commit f1eefee985b4361386a167e80d9836593ade59b9
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Oct 6 09:57:44 2013 +0100
win32: Reorder font declarations to be in natural order
Reported-by: John Emmas <johne53@tiscali.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/win32/cairo-win32-font.c | 90 ++++++++++++++++++++----------------------
1 file changed, 43 insertions(+), 47 deletions(-)
commit 49366c5e9e7d5afd0daef4c53a41472e020145eb
Author: Uli Schlachter <psychon@znc.in>
Date: Thu Oct 3 17:53:34 2013 +0200
cairo-xlib: Fix out of bounds array access in format cache
The cairo-xlib backend maintains a mapping form cairo_format_t to xrender
formats. This is done via an array. The size of this array is
CAIRO_FORMAT_RGB16_565 + 1 which evaluates to 5.
However, CAIRO_FORMAT_RGB30 has the numeric value 5, too. Thus, using this value
as an index into the array would actually read the following force_precision
field from cairo_xlib_display_t.
This could be triggered by passing CAIRO_FORMAT_RGB30 to
_cairo_xlib_display_get_xrender_format(). From a quick look, I didn't find any
code which would allow doing this, but neither did I find anything allowing
CAIRO_FORMAT_RGB16_565, so it's better to handle this correctly than assert()ing
for this to never happen.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xlib-private.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 217bed84dda43f018e59a4d9a229f63095e1aa06
Author: Uli Schlachter <psychon@znc.in>
Date: Thu Oct 3 17:44:27 2013 +0200
Revert "[xlib] Fast-path the likely case of retrieving a known xrender_format"
This reverts commit 09a2b2ed3189fe12483cbd673c24ceddc2c20f3f.
Back in 2009, _cairo_xlib_display_get_xrender_format() had to acquire a lock to
do its job. The above commit added a fast-path which avoided the lock in most
cases.
However, in 2010 commit f74ad37e66bbdcc4d727ed6d931dde870d84c2f4 modified the
locking in the cairo-xlib backend and now this function never takes any locks.
Thus, the fast-path that was added a year earlier now just does the same thing
that the regular code does and the list of cached formats was checked twice.
Reverting the earlier commit fixes this.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xlib-display.c | 6 ------
1 file changed, 6 deletions(-)
commit 592e6a98031cccfae8551bcd86c1f5134726a4f6
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Sep 15 14:05:42 2013 +0200
README: Don't mention XFAIL_TESTS anymore
The variable XFAIL_TESTS is not used anymore since commit e90073f7ddc.
Instead, we now have special reference images that show the wrong output and the
test suite fails a test if it does not match the expected, wrong output.
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/README | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)
commit bc89be2fff92968a1b585e75371ae2a8a26592e9
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Sep 29 13:12:55 2013 +0200
Remove XFAIL_TESTS from Makefile.am
The variable XFAIL_TESTS is not used anymore since commit e90073f7ddc.
The description for the known failures are moved into the respective tests as
comments.
The following descriptions were dropped:
- surface-pattern-big: Didn't really explain the failure
- big-line: Test isn't failing any more
- self-intersecting: Only XFAIL on quartz, but description doesn't match this
The following tests don't have a xfail reference image and seem to fail just
because of not having a reference image at all (I kept their description for
now):
big-trap, long-lines, self-copy-overlap
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/Makefile.am | 73 ----------------------------------------
test/alpha-similar.c | 4 +++
test/big-trap.c | 1 +
test/degenerate-dash.c | 5 +++
test/degenerate-path.c | 4 +++
test/device-offset-scale.c | 4 +++
test/in-fill-empty-trapezoid.c | 5 +++
test/long-lines.c | 1 +
test/scale-offset-image.c | 1 +
test/self-copy-overlap.c | 5 +++
10 files changed, 30 insertions(+), 73 deletions(-)
commit 5e6e4536716197ea0605732d32959c57ea8bb140
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Sep 29 22:23:31 2013 +0930
pdf: stencil masks may be opaque
src/cairo-pdf-surface.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
commit d3a8d5a9c266b79b0059dd309b5e3eff3ce81a64
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Sep 29 22:18:06 2013 +0930
pdf: Support stencil masks with jpeg/jpx/jbig2 embedding
src/cairo-pdf-surface.c | 204 ++++++++++++++++++++++++++++++-----------------
1 file changed, 131 insertions(+), 73 deletions(-)
commit 07940ecd6055e29addcdb4c14e4449a06a30bf4a
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Sep 29 12:42:59 2013 +0930
pdf: combine source and mask images into single image
Since PDF stores the alpha component of images in a separate stream
which can have a different resolution and encoding to the color
components we can optimize the case where the source and mask are both images.
If the source and mask are both images with the same extents and the
source is opaque, combine the images into a single PDF image (ie the
source is written the the image stream and the mask is written to the
smask stream).
src/cairo-pdf-surface-private.h | 2 +
src/cairo-pdf-surface.c | 466 +++++++++++++++++++++++++++++----------
2 files changed, 347 insertions(+), 121 deletions(-)
commit c1ac8db7e60bcec8235b09729b34154e95790534
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Sep 27 16:35:08 2013 +0100
trace: Fix operand emission
Recent updates (in the past couple of years) to firefox have exposed
numerous bugs in the way we emit the operands. A few off-by-ones,
missing surfaces and outright bugs all of which are intermixed into
producing a corrupt stack.
Reported-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-trace/trace.c | 232 ++++++++++++++++++++++++++++++++++++----------
1 file changed, 182 insertions(+), 50 deletions(-)
commit 0c2faf6621c4983e2ec2bea7c722a5cd3d89cc6d
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Sep 27 15:37:08 2013 +0200
fill_reduces_to_source(): Handle failure of color_to_pixel()
The function color_to_pixel() can fail for unsupported pixman image formats, but
fill_reduces_to_source() ignored this possibility.
Fix this by using the return value of color_to_pixel():
Fixes the following compiler warnings:
cairo-image-compositor.c: In function 'fill_boxes':
cairo-image-compositor.c:349:15: warning: 'pixel' may be used uninitialized in this function [-Wmaybe-uninitialized]
cairo-image-compositor.c: In function 'fill_rectangles':
cairo-image-compositor.c:304:18: warning: 'pixel' may be used uninitialized in this function [-Wmaybe-uninitialized]
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-image-compositor.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
commit 38a925460b35c82833dc4d508e7a0e7e84242318
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Thu Sep 26 10:58:56 2013 -0700
test: Drop unnecessary math.h include
Commit 0ac81988 refactored away fmin; nothing else from math.h is
needed.
test/pixman-downscale.c | 1 -
1 file changed, 1 deletion(-)
commit 337ab1f8d9e29086bfb4001508b28835b41c6390
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 17 16:28:19 2013 +0100
font: Push the last reference dec into the backend->destroy() callback
In order to close a race between locking the backend and resurrecting a
font via the cache, we need to keep the font face alive until after we
take the backend lock. Once we have that lock, we can drop our reference
and test if that was the last. Otherwise we must abort the destroy().
This fixes the double-free exposed by multithreaded applications trying
to create and destroy the same font concurrently.
Reported-by: Weeble <clockworksaint@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=69470
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-font-face.c | 43 ++++++++++++++++++++++++++++++------------
src/cairo-ft-font.c | 18 ++++++++----------
src/cairo-quartz-font.c | 3 ++-
src/cairo-toy-font-face.c | 7 ++++---
src/cairo-user-font.c | 2 +-
src/cairoint.h | 7 +++++--
src/win32/cairo-win32-font.c | 7 ++++---
7 files changed, 55 insertions(+), 32 deletions(-)
commit 0ac81988c199df1a6652dc0ea72627122bf95c6c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 17 08:32:29 2013 +0100
test/pixman-downscale: Open-code fmin()
fmin() requires a bump to either _XOPEN_SOURCE_ >= 600 (POSIX 2004) or
c99 - which is a needless dependency for a single simple routine.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/pixman-downscale.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 9c75065ecefe18557c9d56e1c973215f01f3cd40
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Sep 16 12:45:21 2013 +0200
xcb: Remove useless error handling
All the *_reply() functions in XCB return a pointer to their result and as last
argument they get a xcb_generic_error_t** where pointers to errors are stored,
if any occurs.
However, a request can either fail or succeed. This means that if the returned
result is a NULL pointer, then an error occurred and the other way around: If
the error pointer is set to non-NULL, then the function must have returned NULL.
Thus, all the code, which just checks if an error occurred and which does not
care about the exact error code, does not need to get the error pointer at all.
In this case, xcb will free() the error internally.
While doing this, I noticed that _cairo_xcb_connection_get_image() always
succeeds and thus its return value can be replaced with the GetImage result.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-connection-core.c | 32 ++++++++++----------------------
src/cairo-xcb-connection-shm.c | 6 ++----
src/cairo-xcb-private.h | 5 ++---
src/cairo-xcb-surface.c | 23 ++++++++---------------
4 files changed, 22 insertions(+), 44 deletions(-)
commit 440624cdf2bd55ac1620e697cc481a8fbbb1c657
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Sep 15 15:00:02 2013 +0200
test/multi-page: Fix use-after-free
Commit f9dcd07d22a5269 changed the way the file name is allocated and introduced
a use-after-free in doing so.
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/multi-page.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 1d00550784d052e9b72b3c91d5769f771033037c
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Sep 15 14:50:20 2013 +0200
image: Handle PIXMAN_a8r8g8b8_sRGB in switch
Fixes the following compiler warning:
cairo-image-surface.c: In function '_cairo_format_from_pixman_format':
cairo-image-surface.c:93: warning: enumeration value 'PIXMAN_a8r8g8b8_sRGB' not
handled in switch
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=58726
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-image-surface.c | 3 +++
1 file changed, 3 insertions(+)
commit 966bf2fe6a8c29f4d10b20f982a4ab198a441c78
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Sep 15 16:58:05 2013 +0200
check-doc-syntax: Don't hardcode path to awk
Instead of expecting awk in /usr/bin, this commit changes the code to call awk
through a shell so that $PATH is searched.
Since this awk script shouldn't really be called manually, this is done by
removing the shebang from the awk script, marking it non-executable and fixing
up the caller.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=67674
Reviewed-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/check-doc-syntax.awk | 2 --
src/check-doc-syntax.sh | 2 +-
2 files changed, 1 insertion(+), 3 deletions(-)
commit a8a805b8d9bbbfed9986ecc71e76859a5353730f
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Sep 13 22:18:08 2013 +0200
cairo-gobject: Require at least glib 2.14
cairo-gobject uses g_once_init_enter() and g_once_init_leave(). These functions
were added in glib 2.14 and thus cairo needs at least this version for its
gobject helper functions.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=69239
Signed-off-by: Uli Schlachter <psychon@znc.in>
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 412a4c34d9207c339fd16a99756ea96082dc993f
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Sep 15 21:27:50 2013 +0930
test: update mime-data to test jbig2 mime types
test/global.jb2 | Bin 0 -> 151 bytes
test/image1.jb2 | Bin 0 -> 143 bytes
test/image2.jb2 | Bin 0 -> 92 bytes
test/mime-data.c | 97 +++++++++++++++++++++++++-
test/reference/mime-data.base.argb32.ref.png | Bin 185 -> 243 bytes
test/reference/mime-data.base.rgb24.ref.png | Bin 185 -> 243 bytes
test/reference/mime-data.pdf.ref.png | Bin 6482 -> 7563 bytes
test/reference/mime-data.ps.ref.png | Bin 4554 -> 4705 bytes
test/reference/mime-data.ref.png | Bin 185 -> 243 bytes
test/reference/mime-data.script.ref.png | Bin 2041 -> 2130 bytes
test/reference/mime-data.svg.ref.png | Bin 6264 -> 6437 bytes
11 files changed, 96 insertions(+), 1 deletion(-)
commit 5c0caa6f82374ec38a33d5f25a725f60bc121887
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Sep 14 20:59:56 2013 +0930
pdf: support JBIG2 mime data
JBIG2 images may have shared global data that is stored in a separate
stream in PDF. The CAIRO_MIME_TYPE_JBIG2 mime type is for the JBIG2
data for each image. All images that use global data must also set
CAIRO_MIME_TYPE_JBIG2_GLOBAL_ID to a unique identifier. One of the
images must also set CAIRO_MIME_TYPE_JBIG2_GLOBAL to the global
data. The global data will be shared by all JBIG2 images with the same
CAIRO_MIME_TYPE_JBIG2_GLOBAL_ID.
src/cairo-device.c | 1 +
src/cairo-error-private.h | 1 +
src/cairo-image-info-private.h | 5 ++
src/cairo-image-info.c | 135 +++++++++++++++++++++++++++++
src/cairo-misc.c | 2 +
src/cairo-pdf-surface-private.h | 8 ++
src/cairo-pdf-surface.c | 182 +++++++++++++++++++++++++++++++++++++++
src/cairo-region.c | 1 +
src/cairo-spans.c | 2 +
src/cairo-surface.c | 4 +-
src/cairo.c | 4 +-
src/cairo.h | 6 ++
12 files changed, 349 insertions(+), 2 deletions(-)
commit 2d6705671a900251f00c6b59375bd4d23ec6b4d0
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Sep 13 22:14:49 2013 +0930
ps: fix embedding of mime data
src/cairo-ps-surface.c | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
commit 266d6e71566ac8c5e360c0b32fb78e23e6a06168
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Sep 13 21:32:42 2013 +0930
pdf: fix embedding of mime data that has been broken since 0a10982f
For some reason the mime-data test is not detecting this failure.
src/cairo-pdf-surface.c | 23 ++++++++++++-----------
1 file changed, 12 insertions(+), 11 deletions(-)
commit 5390c2bbca3f1331f4fc831ba1381cc64e0162c6
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Sep 12 22:55:02 2013 +0000
test: Document use of -k and CAIRO_TEST_TARGET to run test subsets
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/README | 6 ++++++
1 file changed, 6 insertions(+)
commit 640eb0206738e1d1bfd9beebaf0dcb6ac0e07584
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Sep 12 22:55:02 2013 +0000
test: Space out keywords for clarity
As another nitpick, a comma alone is legal for separating keywords, but
most tests use a comma and a space. Update the few tests that don't,
to make this consistent.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/image-bug-710072.c | 4 ++--
test/mesh-pattern-accuracy.c | 2 +-
test/mesh-pattern-conical.c | 2 +-
test/mesh-pattern-control-points.c | 2 +-
test/mesh-pattern-fold.c | 2 +-
test/mesh-pattern-overlap.c | 2 +-
test/mesh-pattern-transformed.c | 2 +-
test/mesh-pattern.c | 2 +-
test/record1414x.c | 4 ++--
9 files changed, 11 insertions(+), 11 deletions(-)
commit a6ace0cf6b96930c08397c64bffabc4b201ab4e8
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Sep 12 22:55:02 2013 +0000
test: Comma separate keywords
The parser accepts spaces as separtors between keywords, so this is nit
picky. But only a minority of tests don't follow the comma convention,
so change them to be consistent.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/a1-bug.c | 2 +-
test/arc-direction.c | 2 +-
test/caps-joins-curve.c | 2 +-
test/caps-tails-curve.c | 2 +-
test/caps.c | 8 ++++----
test/clip-empty-group.c | 2 +-
test/drunkard-tails.c | 2 +-
test/joins.c | 2 +-
test/partial-coverage.c | 22 +++++++++++-----------
test/rectilinear-dash-scale.c | 4 ++--
test/rectilinear-dash.c | 2 +-
test/scale-offset-image.c | 2 +-
test/scale-offset-similar.c | 2 +-
test/unclosed-strokes.c | 2 +-
14 files changed, 28 insertions(+), 28 deletions(-)
commit aacc5e76ed39b69595194a23e94bbd6483dd88a6
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Sep 12 22:55:01 2013 +0000
gitignore: Ignore build chaff when configuring with --enable-gtk-doc
When this flag is enabled in configure, a couple extra build files are
created, which git should just ignore.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
.gitignore | 2 ++
1 file changed, 2 insertions(+)
commit ac5f3e2b8ef1937b3e6e3a3f03773cf471e46cc3
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Sep 11 09:59:01 2013 -0700
test: Move cairo_pattern_set_filter to after cairo_set_source_surface
Also update the image.arg32 reference images, since for now we're just
accepting pixman's output as truth. This fixes up several tests:
was is
Tests run: 420 420
Passed: 224 261
Failed: 195 159
Expected Failed: 0 0
Error: 0 0
Crashed: 0 0
Untested: 0 0
Total: 420 420
Thanks to psychon for finding the code error in the test.
test/pixman-downscale.c | 2 +-
test/reference/pixman-downscale-fast-95.ref.png | Bin 685 -> 299 bytes
test/reference/pixman-downscale-nearest-95.ref.png | Bin 685 -> 299 bytes
3 files changed, 1 insertion(+), 1 deletion(-)
commit ade7089f72e0d147db961dec88d3cb1b2280a438
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jul 10 17:27:28 2013 -0700
test: Exercise image scaling quality when downscaling
This adds testcases for the various cairo filter options, each of which
match to corresponding pixman filters. Use the 'downscale' keyword if
invoking tests using cairo-test-suite.
The 24-pixel reference images were produced from quad-color.png using
Gimp's Scale Image command with Interpolation set to None. It is
assumed that all filters should handle a 1:4 scaling cleanly with no
antialiased blurring.
The 95-pixel reference images assume differing types of antialiasing
based on the quality level. We are using the image.argb32 output as
reference here. Potentially some other rendering algorithm could
conceivably provide better results in the future.
The 96-pixel reference images are simply copies of the original
quad-color.png file. It is assumed that 1:1 downscaling operations
should produce no visible change to the original image.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/pixman-downscale.c | 146 ++++++++++++++++++--
test/reference/pixman-downscale-24.ref.png | Bin 191 -> 0 bytes
test/reference/pixman-downscale-95.ref.png | Bin 285 -> 0 bytes
test/reference/pixman-downscale-96.ref.png | Bin 301 -> 0 bytes
test/reference/pixman-downscale-best-24.ref.png | Bin 0 -> 191 bytes
test/reference/pixman-downscale-best-95.ref.png | Bin 0 -> 685 bytes
test/reference/pixman-downscale-best-96.ref.png | Bin 0 -> 301 bytes
.../reference/pixman-downscale-bilinear-24.ref.png | Bin 0 -> 191 bytes
.../reference/pixman-downscale-bilinear-95.ref.png | Bin 0 -> 685 bytes
.../reference/pixman-downscale-bilinear-96.ref.png | Bin 0 -> 301 bytes
test/reference/pixman-downscale-fast-24.ref.png | Bin 0 -> 191 bytes
test/reference/pixman-downscale-fast-95.ref.png | Bin 0 -> 685 bytes
test/reference/pixman-downscale-fast-96.ref.png | Bin 0 -> 301 bytes
test/reference/pixman-downscale-good-24.ref.png | Bin 0 -> 191 bytes
test/reference/pixman-downscale-good-95.ref.png | Bin 0 -> 685 bytes
test/reference/pixman-downscale-good-96.ref.png | Bin 0 -> 301 bytes
test/reference/pixman-downscale-nearest-24.ref.png | Bin 0 -> 191 bytes
test/reference/pixman-downscale-nearest-95.ref.png | Bin 0 -> 685 bytes
test/reference/pixman-downscale-nearest-96.ref.png | Bin 0 -> 301 bytes
19 files changed, 132 insertions(+), 14 deletions(-)
commit 0f554c36d3edf341a9aef8eedfde57f3be635500
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jul 10 16:29:56 2013 -0700
test: Test a variety of scales when downscaling
Downscaling from 96 to 24 is easy since it's an even multiple, so try
scaling by -1 pixel too.
This adds a 1:1 scaling test case as well, which should pass through the
image unchanged.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/pixman-downscale.c | 21 +++++++++++++++++----
test/reference/pixman-downscale-24.ref.png | Bin 0 -> 191 bytes
test/reference/pixman-downscale-95.ref.png | Bin 0 -> 285 bytes
test/reference/pixman-downscale-96.ref.png | Bin 0 -> 301 bytes
test/reference/pixman-downscale.ref.png | Bin 191 -> 0 bytes
5 files changed, 17 insertions(+), 4 deletions(-)
commit 642b6d80917feeea878a11f8aaf179b7a1e5392d
Author: Bryce Harrington <b.harrington@samsung.com>
Date: Wed Jul 10 10:19:21 2013 -0700
test: Add test for image downscaling
This adds pixman-downscale.c, which tests correctness of PNG images
scaled down using pixman routines.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/Makefile.sources | 1 +
test/pixman-downscale.c | 73 +++++++++++++++++++++++++++++++
test/quad-color.png | Bin 0 -> 301 bytes
test/reference/pixman-downscale.ref.png | Bin 0 -> 191 bytes
4 files changed, 74 insertions(+)
commit 7270f22af3d1ad53f033023438e915e11bf88407
Author: Martin Robinson <mrobinson@igalia.com>
Date: Wed Sep 11 08:52:31 2013 -0700
gl: Extend oversize check to cairo_gl_surface_create_for_texture
If a texture is too large to render to via a framebuffer, then eagerly
fail with an error surface.
src/cairo-gl-surface.c | 5 +++++
1 file changed, 5 insertions(+)
commit 279d5a2ed1aaa6d5dbfbeab9e4b4ffa6a66aa6f3
Author: Uli Schlachter <psychon@znc.in>
Date: Wed Sep 11 15:28:29 2013 +0200
recording: Correctly determine alpha of all surfaces
This code has special cases for recording and image surfaces. For all other
kinds of source surfaces, has_bilevel_alpha was not modified, even though the
source surface could have an alpha channel.
Fix this by using the same checks as in the general path at the end of this
function.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-recording-surface.c | 3 +++
1 file changed, 3 insertions(+)
commit a6f51fed985f7db37c672bab0b5dab3f89e78282
Author: Uli Schlachter <psychon@znc.in>
Date: Wed Sep 11 15:24:53 2013 +0200
recording: Fix unitialized variable 'free_me'
This variable should be NULL by default and gets set only if a new reference to
a surface was acquired through _cairo_surface_snapshot_get_target(). This works,
because cairo_surface_destroy(NULL) is well-defined and doesn't do anything.
Fixes the following compiler warning:
cairo-recording-surface.c:1642:24: warning: 'free_me' may be used uninitialized
in this function [-Wmaybe-uninitialized]
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-recording-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 8addb4798c918000eaa6f6dab138e0abb0efa946
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Apr 8 10:57:23 2012 +0930
pdf: avoid making groups a transparency group if not required
If the group contains only a combination of clear and opaque alpha and
only OPERATOR_OVER is used in the group and to paint the group, a
transparency group is not required. This allows the pdf viewer to
replay the group in place.
src/cairo-pdf-surface-private.h | 2 +
src/cairo-pdf-surface.c | 125 ++++++++++++++++++++++++---------
src/cairo-recording-surface-private.h | 8 +++
src/cairo-recording-surface.c | 113 +++++++++++++++++++++++++++++
4 files changed, 215 insertions(+), 33 deletions(-)
commit 53255625c07d8f24403f0cb1b5a4dbaac142e4da
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Sun Sep 8 20:10:04 2013 +0000
svg, test: Refer to output filename by variable, not a hardcoded value
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/svg-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit f9dcd07d22a5269bf799317a36bb2887d8f9af64
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Sun Sep 8 20:10:03 2013 +0000
test: Ensure output dirs exist, falling back to current dir if needed
This change makes several tests behave more like ps-eps.c, et al by
making them attempt to mkdir "output", and in case of trouble use "."
instead. filenames are now allocated at runtime due to this change, so
ensure the corresponding free()'s are in place as well.
This should facilitate running the test suite with a relative path
outside cairo's source tree, such as when employing the CAIRO_REF_DIR
environment variable.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/create-for-stream.c | 14 +++++++++++---
test/fallback-resolution.c | 20 +-------------------
test/multi-page.c | 9 ++++++---
test/pdf-features.c | 6 +++++-
test/pdf-mime-data.c | 6 +++++-
test/pdf-surface-source.c | 6 +++++-
test/png.c | 8 +++++++-
test/ps-eps.c | 20 +-------------------
test/ps-features.c | 8 +++++---
test/ps-surface-source.c | 6 +++++-
test/svg-clip.c | 6 +++++-
test/svg-surface-source.c | 6 +++++-
test/svg-surface.c | 6 +++++-
13 files changed, 66 insertions(+), 55 deletions(-)
commit be7f1ac98f62669743f381df8845886d29a9f7f4
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Sun Sep 8 20:10:03 2013 +0000
test: Make cairo_test_mkdir() usable throughout tests.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/cairo-test.c | 10 +++++-----
test/cairo-test.h | 3 +++
2 files changed, 8 insertions(+), 5 deletions(-)
commit 6731023f1bba7e26dbbc06defdbb37ac5267e9db
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Sun Sep 8 20:10:03 2013 +0000
test: Fix several tests to place output files in the output directory
The standard location for test output is cairo/test/output. The harness
itself was updated to write automatically generated images in this
directory, however a number of tests generate their own local output
files.
This patch updates these tests to write their output into
CAIRO_TEST_OUTPUT_DIR (which defaults to cairo/test/output) as well, in
the interest of decluttering the test directory.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/create-for-stream.c | 6 +++---
test/multi-page.c | 5 +++--
test/pdf-features.c | 3 ++-
test/pdf-mime-data.c | 9 +++++----
test/pdf-surface-source.c | 4 +++-
test/png.c | 3 ++-
test/ps-features.c | 3 ++-
test/ps-surface-source.c | 4 +++-
test/svg-clip.c | 3 ++-
test/svg-surface-source.c | 4 +++-
test/svg-surface.c | 3 ++-
11 files changed, 30 insertions(+), 17 deletions(-)
commit f3574b8b3b3e9dbd9fca927096e5a8205e57033d
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Sun Sep 8 20:10:03 2013 +0000
test: Don't ignore test output files left in test directory
Tests should be placing output files in the output/ directory now,
although not all tests follow this standard practice. Drop the
"*.out.*" from .gitignore to make improper test behavior more evident.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/.gitignore | 4 ----
1 file changed, 4 deletions(-)
commit f52165a7bb3de56fe2a06771f554f3997e176b94
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Sep 6 08:00:46 2013 +0930
svg: Don't embed CMYK Jpeg images
None of the SVG viewers I tried (rsvg, firefox, inkscape) support CMYK
Jpeg images.
Bug 68965
src/cairo-svg-surface.c | 3 +++
1 file changed, 3 insertions(+)
commit 8e1a1ed8631dd55b4344d5682e6c69e923e0401f
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Sep 6 07:54:28 2013 +0930
Downscaling requires pixman 0.30
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 0266cb821fbf0bdd307af7bbcbbd22c4a14201fc
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 5 16:13:56 2013 +0100
script: Add support for replaying device-scale
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-script/cairo-script-operators.c | 48 ++++++++++++++++++++++++++++
1 file changed, 48 insertions(+)
commit a4164142f2a21fb005533d1c5b3cf668c99d1259
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 5 16:12:26 2013 +0100
trace: Record set-device-scale
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-trace/trace.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
commit 935c64a43409a80d9b19d491f9133004152de9bb
Author: Alexander Larsson <alexl@redhat.com>
Date: Tue Aug 27 15:10:38 2013 +0200
surface: Inherit device scale in cairo_surface_create_similar()
Without this most code that uses similar surfaces for offscreen
rendering will render in a pixelized fashion if the final
target uses a device scale.
src/cairo-surface.c | 7 +++++++
1 file changed, 7 insertions(+)
commit bc792a5e0e196dd9761649b14c9206465b42ef1d
Author: Alexander Larsson <alexl@redhat.com>
Date: Tue Aug 27 14:46:16 2013 +0200
surface: Merge scratch construction into _cairo_surface_create_scratch
We merge _cairo_surface_create_similar_scratch and
_cairo_surface_create_similar_solid into a single function named
_cairo_surface_create_scratch, to avoid confusion with
cairo_surface_create_similar which now will have a different
behaviour wrt the sizes and the device-scale.
_create_scratch assumes the width and height are in backend
coordinates, while create_similar does not.
src/cairo-clip-surface.c | 20 +++++-----
src/cairo-default-context.c | 10 ++---
src/cairo-gl-traps-compositor.c | 18 +++++----
src/cairo-mask-compositor.c | 14 ++++---
src/cairo-shape-mask-compositor.c | 27 +++++++------
src/cairo-spans-compositor.c | 10 ++---
src/cairo-surface-subsurface.c | 9 +++--
src/cairo-surface-wrapper.c | 4 +-
src/cairo-surface.c | 75 ++++++++++++++++---------------------
src/cairo-traps-compositor.c | 33 ++++++++--------
src/cairo-xcb-surface-render.c | 20 +++++-----
src/cairo-xlib-source.c | 36 ++++++++++--------
src/cairoint.h | 16 +++-----
13 files changed, 145 insertions(+), 147 deletions(-)
commit bdccf4fe51bca785f73205ccd26c4d020669e312
Author: Alexander Larsson <alexl@redhat.com>
Date: Tue Aug 27 14:33:14 2013 +0200
surface: Opencode create_similar
We copy the _cairo_surface_create_similar_solid code into
cairo_surface_create_similar so that we can separate these later
as one wants to use backend sizes and one not.
src/cairo-surface.c | 33 ++++++++++++++++++++++++++++++---
1 file changed, 30 insertions(+), 3 deletions(-)
commit 5f70148467ff2767dc3c6d45f4af1223d7daa301
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jun 3 15:20:05 2013 +0100
test: Allow CAIRO_TEST_MODE to independently enable extended testing
Such as CAIRO_TEST_MODE=scale for testing application of
cairo_surface_set_device_offset.
CAIRO_TEST_MODE=similar - test rendering through similar surfaces
CAIRO_TEST_MODE=offset - test rendering with a device offset
CAIRO_TEST_MODE=scale - test rendering with a device scale
test/cairo-test-runner.c | 22 ++++++++++++++++++----
1 file changed, 18 insertions(+), 4 deletions(-)
commit 690c61aa54c27e4d35b04d0173abd5931fce507d
Author: Alexander Larsson <alexl@redhat.com>
Date: Mon Jun 3 15:38:22 2013 +0200
tests: Add device scale test to "full" testrun similar to offsets
test/cairo-test-private.h | 2 +-
test/cairo-test-runner.c | 66 ++++++++++++++++++++++++---------------------
test/cairo-test.c | 66 +++++++++++++++++++++++++++------------------
3 files changed, 77 insertions(+), 57 deletions(-)
commit 7ab34f302be72d9dda54d936b6d69bc7c534c885
Author: Alexander Larsson <alexl@redhat.com>
Date: Thu May 30 19:45:59 2013 +0200
surface: expose the device scale
This adds the new public functions
cairo_surface_set_device_scale and cairo_surface_get_device_scale and
updates old users of the internal functions.
src/cairo-default-context.c | 6 ++---
src/cairo-paginated-surface.c | 2 +-
src/cairo-surface-subsurface.c | 12 +++++-----
src/cairo-surface.c | 52 ++++++++++++++++++++++++++++++----------
src/cairo.h | 10 ++++++++
src/cairoint.h | 7 ++----
6 files changed, 61 insertions(+), 28 deletions(-)
commit 38217d67fc2226778dde8d05817cb916691d4d22
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jun 3 20:32:45 2013 +0100
spans,traps: Undo device transform from source matrix for recording replays
As the replay of the recording surface applies the device_transform of
the matrix once again to all its operations, we end up with a repeated
transform through the source matrix of the recording surface. We need to
remove one of these, and the easiest way to do that appears to be to
undo the application to the source matrix.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 13 +++++++++++--
src/cairo-traps-compositor.c | 15 ++++++++++++---
2 files changed, 23 insertions(+), 5 deletions(-)
commit f0e2cd4494b1ac9a351d095fbeb53d702342d35c
Author: Alexander Larsson <alexl@redhat.com>
Date: Fri May 31 16:44:29 2013 +0200
gstate: Handle device scale on surface as source
When creating a transformed pattern we must apply the device
transform *before* the transform set on the pattern itself, otherwise
e.g. its translation will not be affected by the device scale.
We also fix up the device_transform related handling in
_cairo_default_context_pop_group(). With a device scale we can
no longer just use the device_transform_inverse to unset the
device offset for the extents, so we make that a simple translate
instead.
We also remove some weird code that tries to handle the device
transform but seems unnecessary (maybe a workaround for applying
the device transform in the wrong order?). With that code removed
things work fine, but with it things get translated wrongly when
there is a scale.
src/cairo-default-context.c | 23 ++++++++---------------
src/cairo-gstate.c | 2 +-
src/cairo-pattern-private.h | 4 ++++
src/cairo-pattern.c | 10 ++++++++++
4 files changed, 23 insertions(+), 16 deletions(-)
commit 900fc4a890026e46a3b0a00967632f57074b8b93
Author: Alexander Larsson <alexl@redhat.com>
Date: Thu May 30 20:53:29 2013 +0200
gstate: Move device-scale font scaling to gstate
If we do this in surface it will be applied twice then
we chain to a different surface, like e.g. a subsurface.
We also remove a hack in cairo-surface-wrapper where it compensated
for the device scale not being applied.
v2: Compute the backend CTM in ensure_scaled_font().
src/cairo-gstate.c | 8 +++++++-
src/cairo-surface-wrapper.c | 5 ++---
src/cairo-surface.c | 31 ++++---------------------------
3 files changed, 13 insertions(+), 31 deletions(-)
commit 25eaec0a3874a2090e1bb97547a328eb5c00b0b1
Author: Alexander Larsson <alexl@redhat.com>
Date: Thu May 30 20:53:15 2013 +0200
subsurface: Handle device scales
src/cairo-surface-subsurface.c | 21 ++++++++++++++++++---
1 file changed, 18 insertions(+), 3 deletions(-)
commit 633d573889ad685c8f07e9ee72f6a1d240dfacf2
Author: Alexander Larsson <alexl@redhat.com>
Date: Thu May 30 19:48:33 2013 +0200
default-context: Inherit device scale in push_group surface
Without this we will only render to part of the newly created
surface and then copy+scale that part back, which causes fuzziness.
src/cairo-default-context.c | 4 ++++
1 file changed, 4 insertions(+)
commit db7e551a6bf06a0aa7e2e6b3744b7663807d003f
Author: Alexander Larsson <alexl@redhat.com>
Date: Thu May 30 19:47:19 2013 +0200
gstate: Respect device transform in stroke
We need to apply the device transform to the ctm when stroking, as
otherwise line widths are not affected by the device scale.
src/cairo-gstate.c | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
commit fb57ea13e04d82866cbc8e86c83261148bb3e231
Author: Krzysztof Kosiński <tweenk.pl@gmail.com>
Date: Thu Sep 5 16:02:14 2013 +0100
image: Use convolution filters for sample reconstruction when downscaling
I had a look at how complex would it be to add correct downscaling to
Cairo now that Pixman supports convolution filters. It turns out it
this is rather easy. Here is an initial, minimal attempt. It uses
convolution filters only if the image is being downscaled by more than
half a pixel in at least one dimension.
Some discussion:
1. The sampling and reconstruction kernels are picked in a way that
gives comparable quality when upscaling and downscaling. I paired box
sampling with bilinear reconstruction and impulse (point) sampling
with box reconstruction. This gives the expected result for NEAREST
filter. BEST filter uses Lanczos3 for both kernels.
> Do we need to use a reconstruction filter for NEAREST at all? Or maybe
> differentiate between NEAREST and FAST in that case?
If impulse (point) sampling is used, there must be some reconstruction
filter, otherwise no image is produced. That's because the sampling
grid does not match the data grid, and since there is no
reconstruction filter, values between data points are undefined. The
alternative is to use box sampling + no reconstruction.
2. Subsampling bits are always set to 1, since this doesn't seem to
affect quality at all.
3. I am not sure whether this code works correctly for matrices with a
skew component. It should be OK for any combination of scale, rotation
and translation.
4. This patch causes new failures in the test suite:
- recording-surface*: possibly an effect of improved quality.
- surface-pattern-scale-down*, surface-pattern-big-scale-down: the
reference images should be updated.
- pthread-same-source: I have no idea why this is failing, since this
test shouldn't even trigger the new code.
- large-source-roi: this test attempts to downscale an image which is
30000 pixels wide down to 7 pixels. The filter parameters seem to be
created correctly, but they might trigger an overflow somewhere in the
convolution code; the output rectangle is white instead of red, as if
nothing was drawn.
- device-offset-scale: there are subtle differences which look like
convolution-related smoothing; I'm not sure whether this is OK or not.
src/cairo-image-source.c | 65 +++++++++++++++++++++++++++++++++++++++-------
1 file changed, 55 insertions(+), 10 deletions(-)
commit 28ad0f9f3bec65e462e29a1d0b1757a86d16c129
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 5 15:56:55 2013 +0100
Bump version for new development tree, 1.13.1
cairo-version.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 59e2a93b3c8a7b83d537bb2a4bbdd5f0f36a0cbc
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 26 18:46:19 2013 +0100
Post-release version bump
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 8e11a42e3e9b679dce97ac45cd8b47322536a253
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 26 15:30:20 2013 +0100
1.12.16 release
NEWS | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cairo-version.h | 2 +-
2 files changed, 56 insertions(+), 1 deletion(-)
commit b710a4730940e54ac7ffd5073eecf950997a0484
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 26 17:18:38 2013 +0100
Make "make check" happy
A recursive include should hide the bare header from
check-preprocessor-syntax.sh
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pixman-private.h | 6 ++++++
1 file changed, 6 insertions(+)
commit fb8881e84bb24b2a54ee5aa449b6f5638de36404
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 23 12:48:08 2013 +0100
win32: Prevent double-free of similar images
Based on a patch and analysis by Michael Henning.
When we create a similar-image surface for win32, we set up a couple of
back references from the image to the win32 surface, and vice versa. We
need to be careful when decoupling the reference cycle to avoid chasing
around the loop upon destruction. Currently we handled destroying the
similar-image via the parent win32 surface, but similar precaution is
required when destroying the surface via the similar-image.
Reported-by: Michael Henning <drawoc@darkrefraction.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=63787
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface.c | 3 ++-
src/win32/cairo-win32-display-surface.c | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
commit 054f34111d220541bc785b30207387541fdd31d2
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Aug 15 14:28:44 2013 +0000
Provide backwards compatibilty with old pixman
The goal is to allow compilation against older pixman to ease regression
testing.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 2 +-
src/Makefile.sources | 1 +
src/cairo-ft-font.c | 6 +++--
src/cairo-image-compositor.c | 44 ++++++++++++++++++++++-------------
src/cairo-image-surface.c | 5 ++++
src/cairo-pixman-private.h | 45 ++++++++++++++++++++++++++++++++++++
src/cairo-xlib-render-compositor.c | 1 +
src/cairo-xlib-surface.c | 1 +
8 files changed, 86 insertions(+), 19 deletions(-)
commit 95f320e3f26b2a1552a53ebad14dd5086ccf0c60
Author: Martin Robinson <mrobinson@igalia.com>
Date: Mon Jul 29 11:14:34 2013 -0700
gl: Return surface in error when creating oversized texture surfaces
When creating a texture surface that is larger than the maximum
framebuffer or texture dimensions of the context, return a surface in
error. Previously the code failed an assertion, but this prevents an
application from easily detecting when to fall back.
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-surface.c | 33 ++++++++++------
test/Makefile.sources | 1 +
test/gl-oversized-surface.c | 88 +++++++++++++++++++++++++++++++++++++++++++
3 files changed, 111 insertions(+), 11 deletions(-)
commit b5e1373c5845c859ebf82ef4d5e065f6cdd68faf
Author: Henry Song <henry.song@samsung.com>
Date: Mon Aug 19 12:14:46 2013 -0700
gl/msaa: Clean up msaa depth/stencil buffer for OpenGLES
OpenGLES also uses the depth/stencil buffer when doing multisampling, so
it's a leak to only clean up the buffer for desktop OpenGL.
src/cairo-gl-surface.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 54a51968e82ec4e6a8d81d5451232641275439df
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Aug 12 16:33:19 2013 +0200
surface_get_extents: Reject finished or error surface
This fixes a crash in the api-special-cases with xlib-xcb when calling
cairo_clip_extents() on a context that refers to a finished surface.
The crash was a simple NULL pointer dereference, because the underlying xcb
surface that was used in xlib-xcb was gone and set to NULL already.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-surface.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
commit 3c4e0f0f1a338fbbd802cdb3b65b8ea3abc758d1
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Aug 12 15:59:18 2013 +0200
push_group: Refuse working with unusable surface
Make cairo_push_group() fail when the context's target surface is finished.
This fixes the api-special-cases for the xcb backend:
Detected error during xcb run: error=9, seqno=0x13c, major=53, minor=0
The problem was that the Pixmap for the cairo surface was already freed and
cairo still tried to use it again as the drawable in a CreatePixmap request.
Signed-off-by: Uli Schlachter <psychon@znc.in>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-default-context.c | 5 +++++
1 file changed, 5 insertions(+)
commit 18633b081026eb88931af6130b3e716fdb954e19
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Aug 12 15:40:00 2013 +0200
surface: Error out on finished surfaces
Finished surfaces and surfaces with an error status must not be usable anymore,
so refuse to work on them.
This improves the result for api-special-cases.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68014
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-surface.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
commit b64c83e891f2417a1b28034a55659260a1769ba7
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Aug 12 14:30:59 2013 +0200
api-special-cases: Also test contexts
This adds code to the api-special-cases test which also tests the behavior of
cairo when the cairo context or the surface that is target is in an error state
or finished. These new tests call into all public entry points defined in
cairo.h which receive a cairo_t * as their first argument.
Currently this causes a new crash in the testsuite:
cairo-surface.c:394:
_cairo_surface_begin_modification: Assertion `! surface->finished' failed.
Reported-by: christophe.troestler@umons.ac.be
References: https://bugs.freedesktop.org/show_bug.cgi?id=68014
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/api-special-cases.c | 1174 +++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 1153 insertions(+), 21 deletions(-)
commit e438071e9debeca81f97c6fcdc1c2a91a969761d
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Tue Jul 9 21:22:59 2013 +0000
perf: Move macro-benchmark documentation to cairo-traces
The macro benchmarks were moved to a separate repository some time ago,
but the perf README still refers to these tests as if they were still
present, which may lead to some confusion. Instead, consolodate the
macro benchmark documentation with the macro benchmarks, and focus this
README on just the (still in tree) micro-benchmarks.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
perf/README | 89 ++++++++++++++---------------------------------------------
1 file changed, 20 insertions(+), 69 deletions(-)
commit 4e133af60c1af42307724eb6a88b23056741d7e2
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Tue Jul 9 21:23:52 2013 +0000
HACKING: Make mention of the separate cairo-traces repo
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
HACKING | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
commit 46d9db96d460fea72f0420102e8a90c6a7231f79
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Sun Aug 4 20:08:46 2013 -0400
[ft] Ensure alignment of bitmaps received from FreeType
src/cairo-ft-font.c | 9 +++++++++
1 file changed, 9 insertions(+)
commit 34a747e7bdeba1cfe17318f80fbe6720d47bc023
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Sun Aug 4 19:59:06 2013 -0400
[ft] Fix alignment
src/cairo-ft-font.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
commit 3cd6c5966aca1d202744fe44083800bc2a4a831d
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Jul 29 22:47:26 2013 -0400
Revert accidentally committed stuff
build/configure.ac.pthread | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 0554d76402321b25cc952180e4d19436a9038d1a
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Jul 29 22:41:46 2013 -0400
[ft] Add missing include
build/configure.ac.pthread | 6 +++---
src/cairo-ft-font.c | 1 +
2 files changed, 4 insertions(+), 3 deletions(-)
commit 7d26341072b13a78d4b3fe58779057ac020be487
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Jul 29 19:20:33 2013 -0400
[ft] Fix math
src/cairo-ft-font.c | 9 ++-------
1 file changed, 2 insertions(+), 7 deletions(-)
commit 9444ef09ccde2735258cc1bd2f1912119a32dd88
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Jul 29 19:09:29 2013 -0400
Support 2bit and 4bit embedded bitmaps
src/cairo-ft-font.c | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 51 insertions(+), 1 deletion(-)
commit 274863be08f6c8df6d411df9db725d34f7fbabea
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Jul 28 09:30:05 2013 +0930
type1-subset: Don't try to rename non winansi glyphs
When the latin subset contains glyphs that use the seac operator to
combine two glyphs, additional non winansi glyphs are added to the
subset. These extra glyphs do not have a winansi name so they can't
be renamed.
Based on a patch by Salvador Ortiz.
Bug 67324
src/cairo-type1-subset.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
commit 03c81d414d4edb710c91f96ddb7dbf73e5432583
Author: Henry Song <henry.song@samsung.com>
Date: Mon Jul 8 11:36:25 2013 -0700
gl/msaa: Always use scissor when clipping
Even when using the stencil buffer for clipping, always scissor the clip
extents. This simplifies the code a bit.
src/cairo-gl-composite.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
commit 8c710ed87244321dc18447936d629decc25d3d09
Author: Henry Song <henry.song@samsung.com>
Date: Sun Jul 7 11:00:28 2013 -0700
gl/msaa: Disable stencil and scissor during framebuffer blit
When blitting the framebuffer during transitions to and from
multi-sampling mode, we need to disable the stencil and scissor test so
that the entire surface is preserved. This fixes the bitmap-font test
for the MSAA compositor.
src/cairo-gl-device.c | 28 ++++++++++++++++++++++++++++
1 file changed, 28 insertions(+)
commit be2c09a1f59ad677a2b4718d26687873093b466c
Author: Henry Song <henry.song@samsung.com>
Date: Wed Jul 3 12:22:55 2013 -0700
gl/msaa: Properly destroy stencil buffer clip cache
When replacing the stencil buffer clip cache or destroying a surface,
destroy the cached clip. This prevents the clip from leaking.
src/cairo-gl-composite.c | 5 ++++-
src/cairo-gl-surface.c | 2 ++
2 files changed, 6 insertions(+), 1 deletion(-)
commit 2cc353c3dbe01b4d8f65d6de800f2b1d6004a1c2
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Wed Nov 7 14:34:42 2012 -0800
Towards support loading color glyphs from FreeType
See comments.
src/cairo-ft-font.c | 41 ++++++++++++++++++++++++++++++++++++++---
1 file changed, 38 insertions(+), 3 deletions(-)
commit e738079302a968b7b1fb9101cd4d92a8887bedce
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Fri Jul 5 15:22:18 2013 -0600
[ft] Fix wrong assumptions
If subpixel rendering is enabled, but FT returns a 8bit gray bitmap
(perhaps because the font has 8bit embedded bitmaps) we were hitting
the assertions because the assumptions made were wrong. Fix up.
src/cairo-ft-font.c | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
commit a0f556f37fb7016aa304b7cf0e811c0d38f0b969
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Fri Jul 5 15:12:14 2013 -0600
[ft] Fix memory bug in copying bitmaps
src/cairo-ft-font.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
commit 9f9796920f5994090a19de357defe5e72ac61297
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Jun 21 20:38:43 2013 +0200
xcb: Fix some uninitialized variable warnings
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 2170bdbb12f38e372ea2ce1c6492c60cb35f22e4
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Jun 21 20:36:09 2013 +0200
image compositor: Always finish the span renderer
In some obscure conditions that I don't really understand, the image compositor
did not finish a span renderer that it created. This could then cause the last
row of the span to be ignored.
Fixes: clip-complex-bug61492
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=61592
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-image-compositor.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
commit 9058e9ae283ae39a6a4f78dc3dbf8ab46b2ef291
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Jun 21 20:34:27 2013 +0200
Add new test for bug 61592
This test exercises some clipping-related failure that Seongwon Cho reported.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=61592
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/Makefile.sources | 3 +-
test/clip-complex-bug61592.c | 60 ++++++++++++++++++++++++++
test/reference/clip-complex-bug61492.ref.png | Bin 0 -> 105 bytes
3 files changed, 62 insertions(+), 1 deletion(-)
commit 54bee5e0fc1fd1fa85b9f389a73502a7145e0846
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Jun 21 15:18:58 2013 +0200
Fix caps-tails-curve reference images
Commit d7f5a1bec fixed a bug. This caused 12 new test failures for the
test-traps test target:
caps-tails-curve degenerate-arc degenerate-path joins subsurface
subsurface-scale twin twin-antialias-gray twin-antialias-mixed
twin-antialias-none twin-antialias-subpixel user-font
Most of these are indeed (new?) bugs. However, caps-tails-curve actually started
producing the expected result and the reference image just wrongly captures the
old state of things.
At the time of that commit, just taking the output from test-traps as the new
reference image works fine for all backends. However, with current git,
something introduced more antialiasing noise and now test-traps changed again
while cairo-xcb stayed with the old result. Thus, we also need a new reference
image to fix this test.
(The wrong reference images come from commit 8488ae02 which turned test-traps'
results into reference images)
Signed-off-by: Uli Schlachter <psychon@znc.in>
.../caps-tails-curve.traps.argb32.ref.png | Bin 50617 -> 49798 bytes
.../reference/caps-tails-curve.traps.rgb24.ref.png | Bin 50617 -> 49798 bytes
test/reference/caps-tails-curve.xcb.ref.png | Bin 0 -> 50367 bytes
3 files changed, 0 insertions(+), 0 deletions(-)
commit 8b55703d760a0032772d7f9b1d17438b2db3f1b4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jul 4 10:04:30 2013 +0100
test: Amend check-refs.sh to support out-of-tree builds
test/Makefile.am | 4 ++--
test/check-refs.sh | 19 ++++---------------
2 files changed, 6 insertions(+), 17 deletions(-)
commit 8b4151a5e59cd2036e32c0eeb13afe420a434e19
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jul 4 10:02:46 2013 +0100
test: Remove conflicting .ref.png, .argb32.ref.png, .rgb24.ref.png
Where a content specific reference image exists, prefer to have both
content reference images (i.e. both argb32.ref and rgb24.ref) rather
than a mix of .ref and argb32/rgb24.
test/reference/a8-clear.ref.png | Bin 272 -> 0 bytes
test/reference/aliasing.ref.png | Bin 76314 -> 0 bytes
test/reference/alpha-similar.argb32.ref.png | Bin 0 -> 99 bytes
test/reference/alpha-similar.ref.png | Bin 99 -> 0 bytes
test/reference/arc-direction.ref.png | Bin 4124 -> 0 bytes
test/reference/big-line.ref.png | Bin 897 -> 0 bytes
test/reference/bitmap-font.argb32.ref.png | Bin 0 -> 950 bytes
test/reference/bitmap-font.ref.png | Bin 950 -> 0 bytes
test/reference/bug-40410.ref.png | Bin 428 -> 0 bytes
test/reference/bug-bo-ricotz.ref.png | Bin 2108 -> 0 bytes
test/reference/bug-extents.ref.png | Bin 6364 -> 0 bytes
test/reference/caps-joins.ref.png | Bin 2621 -> 0 bytes
test/reference/caps-sub-paths.ref.png | Bin 176 -> 0 bytes
test/reference/caps.ref.png | Bin 1687 -> 0 bytes
test/reference/clear-source.ref.png | Bin 779 -> 0 bytes
test/reference/clip-disjoint-hatching.ref.png | Bin 4390 -> 0 bytes
.../clip-fill-rule-pixel-aligned.argb32.ref.png | Bin 0 -> 195 bytes
.../reference/clip-fill-rule-pixel-aligned.ref.png | Bin 195 -> 0 bytes
test/reference/clip-fill.ref.png | Bin 836 -> 0 bytes
test/reference/clip-group-shapes-circles.ref.png | Bin 1178 -> 0 bytes
test/reference/clip-image.ref.png | Bin 2679 -> 0 bytes
test/reference/clip-intersect.ref.png | Bin 201 -> 0 bytes
test/reference/clip-mixed-antialias.ref.png | Bin 981 -> 0 bytes
test/reference/clip-polygons.ref.png | Bin 1355 -> 0 bytes
test/reference/clip-push-group.ref.png | Bin 166 -> 0 bytes
test/reference/clip-shape.ref.png | Bin 2249 -> 0 bytes
test/reference/clip-text.ref.png | Bin 796 -> 0 bytes
test/reference/clip-unbounded.argb32.ref.png | Bin 0 -> 100 bytes
test/reference/clip-unbounded.ref.png | Bin 100 -> 0 bytes
test/reference/clipped-group.ref.png | Bin 289 -> 0 bytes
test/reference/close-path.ref.png | Bin 271 -> 0 bytes
test/reference/copy-path.ref.png | Bin 513 -> 0 bytes
test/reference/create-from-png.ref.png | Bin 131 -> 0 bytes
test/reference/culled-glyphs.ref.png | Bin 434 -> 0 bytes
test/reference/dash-infinite-loop.ref.png | Bin 626 -> 0 bytes
test/reference/dash-offset-negative.ref.png | Bin 171 -> 0 bytes
test/reference/dash-state.ref.png | Bin 7642 -> 0 bytes
test/reference/dash-zero-length.ref.png | Bin 232 -> 0 bytes
test/reference/degenerate-linear-gradient.ref.png | Bin 322 -> 0 bytes
test/reference/degenerate-pen.ref.png | Bin 752 -> 0 bytes
.../device-offset-positive.argb32.ref.png | Bin 0 -> 139 bytes
test/reference/device-offset-positive.ref.png | Bin 139 -> 0 bytes
test/reference/device-offset.argb32.ref.png | Bin 0 -> 137 bytes
test/reference/device-offset.ref.png | Bin 137 -> 0 bytes
test/reference/extend-pad-border.ref.png | Bin 616 -> 0 bytes
test/reference/fill-alpha-pattern.ref.png | Bin 2962 -> 0 bytes
test/reference/fill-alpha.ref.png | Bin 2167 -> 0 bytes
test/reference/fill-and-stroke-alpha-add.ref.png | Bin 536 -> 0 bytes
test/reference/fill-and-stroke-alpha.ref.png | Bin 462 -> 0 bytes
test/reference/fill-image.ref.png | Bin 972 -> 0 bytes
test/reference/fill-missed-stop.ref.png | Bin 455 -> 0 bytes
test/reference/fill-rule.ref.png | Bin 1769 -> 0 bytes
test/reference/filter-bilinear-extents.ref.png | Bin 1340 -> 0 bytes
test/reference/font-matrix-translation.ref.png | Bin 874 -> 0 bytes
test/reference/ft-show-glyphs-positioning.ref.png | Bin 3297 -> 0 bytes
test/reference/ft-show-glyphs-table.ref.png | Bin 9893 -> 0 bytes
.../ft-text-vertical-layout-type1.ref.png | Bin 3591 -> 0 bytes
test/reference/glyph-cache-pressure.ref.png | Bin 2863 -> 0 bytes
test/reference/gradient-alpha.ref.png | Bin 147 -> 0 bytes
test/reference/gradient-constant-alpha.ref.png | Bin 117 -> 0 bytes
test/reference/gradient-zero-stops.argb32.ref.png | Bin 0 -> 105 bytes
test/reference/gradient-zero-stops.ref.png | Bin 105 -> 0 bytes
test/reference/group-unaligned.ref.png | Bin 325 -> 0 bytes
test/reference/halo-transform.ref.png | Bin 11313 -> 0 bytes
test/reference/horizontal-clip.ref.png | Bin 129 -> 0 bytes
test/reference/huge-linear.ref.png | Bin 1619 -> 0 bytes
test/reference/infinite-join.ref.png | Bin 142 -> 0 bytes
test/reference/joins-loop.ref.png | Bin 3112 -> 0 bytes
test/reference/joins-star.ref.png | Bin 4028 -> 0 bytes
test/reference/large-twin-antialias-mixed.ref.png | Bin 10740 -> 0 bytes
test/reference/leaky-dashed-stroke.ref.png | Bin 5627 -> 0 bytes
test/reference/leaky-polygon.ref.png | Bin 281 -> 0 bytes
.../line-width-large-overlap-rotated.ref.png | Bin 406 -> 0 bytes
test/reference/line-width-overlap-rotated.ref.png | Bin 719 -> 0 bytes
test/reference/line-width-scale.ref.png | Bin 3568 -> 0 bytes
test/reference/line-width-tolerance.ref.png | Bin 192 -> 0 bytes
test/reference/line-width.ref.png | Bin 201 -> 0 bytes
test/reference/linear-gradient-reflect.ref.png | Bin 216 -> 0 bytes
test/reference/linear-gradient-subset.ref.png | Bin 802 -> 0 bytes
test/reference/linear-gradient.ref.png | Bin 961 -> 0 bytes
test/reference/long-dashed-lines.ref.png | Bin 1453 -> 0 bytes
test/reference/mask-ctm.argb32.ref.png | Bin 0 -> 129 bytes
test/reference/mask-ctm.ref.png | Bin 129 -> 0 bytes
test/reference/mask-surface-ctm.argb32.ref.png | Bin 0 -> 129 bytes
test/reference/mask-surface-ctm.ref.png | Bin 129 -> 0 bytes
test/reference/mask-transformed-image.ref.png | Bin 4516 -> 0 bytes
test/reference/mask-transformed-similar.ref.png | Bin 4516 -> 0 bytes
test/reference/miter-precision.ref.png | Bin 878 -> 0 bytes
test/reference/nil-surface.argb32.ref.png | Bin 0 -> 107 bytes
test/reference/nil-surface.ref.png | Bin 107 -> 0 bytes
test/reference/operator-alpha.argb32.ref.png | Bin 0 -> 280 bytes
test/reference/operator-alpha.ref.png | Bin 280 -> 0 bytes
test/reference/operator.argb32.ref.png | Bin 0 -> 238 bytes
test/reference/operator.ref.png | Bin 238 -> 0 bytes
test/reference/over-above-source.ref.png | Bin 511 -> 0 bytes
test/reference/over-around-source.ref.png | Bin 578 -> 0 bytes
test/reference/over-below-source.ref.png | Bin 413 -> 0 bytes
test/reference/over-between-source.ref.png | Bin 561 -> 0 bytes
test/reference/paint-with-alpha-clip-mask.ref.png | Bin 348 -> 0 bytes
test/reference/partial-clip-text-bottom.ref.png | Bin 259 -> 0 bytes
test/reference/partial-clip-text-left.ref.png | Bin 293 -> 0 bytes
test/reference/partial-clip-text-right.ref.png | Bin 155 -> 0 bytes
test/reference/partial-clip-text-top.ref.png | Bin 173 -> 0 bytes
test/reference/pass-through.argb32.ref.png | Bin 0 -> 221 bytes
test/reference/pass-through.ref.png | Bin 221 -> 0 bytes
test/reference/path-append.ref.png | Bin 4424 -> 0 bytes
test/reference/path-stroke-twice.ref.png | Bin 209 -> 0 bytes
test/reference/pixman-rotate.argb32.ref.png | Bin 0 -> 260 bytes
test/reference/pixman-rotate.ref.png | Bin 260 -> 0 bytes
test/reference/pthread-show-text.ref.png | Bin 29759 -> 0 bytes
test/reference/push-group-color.ref.png | Bin 2676 -> 0 bytes
test/reference/push-group.ref.png | Bin 2829 -> 0 bytes
.../random-intersections-curves-eo.ref.png | Bin 156491 -> 0 bytes
.../random-intersections-curves-nz.ref.png | Bin 151310 -> 0 bytes
test/reference/random-intersections-eo.ref.png | Bin 85197 -> 0 bytes
.../reference/random-intersections-nonzero.ref.png | Bin 83247 -> 0 bytes
test/reference/record-paint-alpha-clip.ref.png | Bin 299 -> 0 bytes
test/reference/record-select-font-face.ref.png | Bin 2245 -> 0 bytes
test/reference/recording-surface-over.ref.png | Bin 3072 -> 0 bytes
test/reference/rectilinear-miter-limit.ref.png | Bin 145 -> 0 bytes
test/reference/rel-path.ref.png | Bin 177 -> 0 bytes
.../rotate-clip-image-surface-paint.ref.png | Bin 312 -> 0 bytes
test/reference/rotated-clip.ref.png | Bin 2713 -> 0 bytes
test/reference/rounded-rectangle-fill.ref.png | Bin 563 -> 0 bytes
test/reference/scale-offset-image.ref.png | Bin 7688 -> 0 bytes
test/reference/scale-offset-similar.ref.png | Bin 7688 -> 0 bytes
.../scale-source-surface-paint.argb32.ref.png | Bin 0 -> 147 bytes
test/reference/scale-source-surface-paint.ref.png | Bin 147 -> 0 bytes
test/reference/select-font-face.ref.png | Bin 2245 -> 0 bytes
test/reference/self-copy.ref.png | Bin 258 -> 0 bytes
test/reference/set-source.argb32.ref.png | Bin 0 -> 120 bytes
test/reference/set-source.ref.png | Bin 120 -> 0 bytes
test/reference/shape-general-convex.ref.png | Bin 1869 -> 0 bytes
test/reference/shape-sierpinski.ref.png | Bin 43504 -> 0 bytes
test/reference/show-glyphs-advance.ref.png | Bin 1395 -> 0 bytes
test/reference/show-text-current-point.ref.png | Bin 2185 -> 0 bytes
test/reference/skew-extreme.ref.png | Bin 904 -> 0 bytes
test/reference/smask-fill.ref.png | Bin 1134 -> 0 bytes
test/reference/smask-image-mask.ref.png | Bin 643 -> 0 bytes
test/reference/smask-mask.ref.png | Bin 2523 -> 0 bytes
test/reference/smask-paint.ref.png | Bin 2639 -> 0 bytes
test/reference/smask-stroke.ref.png | Bin 1598 -> 0 bytes
test/reference/smask-text.ref.png | Bin 1623 -> 0 bytes
test/reference/smask.ref.png | Bin 3401 -> 0 bytes
.../source-surface-scale-paint.argb32.ref.png | Bin 0 -> 139 bytes
test/reference/source-surface-scale-paint.ref.png | Bin 139 -> 0 bytes
test/reference/spline-decomposition.ref.png | Bin 10005 -> 0 bytes
test/reference/stroke-image.ref.png | Bin 972 -> 0 bytes
test/reference/stroke-pattern.ref.png | Bin 1417 -> 0 bytes
test/reference/subsurface-scale.ref.png | Bin 5216 -> 0 bytes
test/reference/subsurface.ref.png | Bin 1281 -> 0 bytes
test/reference/surface-pattern-scale-down.ref.png | Bin 1784 -> 0 bytes
test/reference/surface-pattern-scale-up.ref.png | Bin 4017 -> 0 bytes
test/reference/surface-pattern.ref.png | Bin 11100 -> 0 bytes
test/reference/text-antialias-gray.ref.png | Bin 975 -> 0 bytes
test/reference/text-antialias-subpixel-bgr.ref.png | Bin 1001 -> 0 bytes
test/reference/text-antialias-subpixel-rgb.ref.png | Bin 1004 -> 0 bytes
.../reference/text-antialias-subpixel-vbgr.ref.png | Bin 992 -> 0 bytes
.../reference/text-antialias-subpixel-vrgb.ref.png | Bin 1004 -> 0 bytes
test/reference/text-antialias-subpixel.ref.png | Bin 1004 -> 0 bytes
test/reference/text-glyph-range.ref.png | Bin 1729 -> 0 bytes
test/reference/text-pattern.ref.png | Bin 3444 -> 0 bytes
test/reference/tiger.ref.png | Bin 71094 -> 0 bytes
test/reference/transforms.ref.png | Bin 341 -> 0 bytes
test/reference/trap-clip.ref.png | Bin 5741 -> 0 bytes
test/reference/twin-antialias-mixed.ref.png | Bin 1639 -> 0 bytes
test/reference/twin-antialias-none.ref.png | Bin 694 -> 0 bytes
test/reference/unclosed-strokes.ref.png | Bin 1432 -> 0 bytes
test/reference/user-font-proxy.ref.png | Bin 14023 -> 0 bytes
test/reference/user-font-rescale.ref.png | Bin 14852 -> 0 bytes
test/reference/world-map-fill.ref.png | Bin 45440 -> 0 bytes
test/reference/world-map-stroke.ref.png | Bin 43370 -> 0 bytes
test/reference/world-map.ref.png | Bin 65880 -> 0 bytes
test/reference/zero-mask.argb32.ref.png | Bin 0 -> 402 bytes
test/reference/zero-mask.ref.png | Bin 402 -> 0 bytes
175 files changed, 0 insertions(+), 0 deletions(-)
commit 9eb1237e006bb19098144cc045c0a03d167a82b4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jul 4 09:40:37 2013 +0100
test: Add a few reference images found lurking on my machine
test/reference/bug-seams.image.xfail.png | Bin 0 -> 1647 bytes
test/reference/record1414x-fill-alpha.ref.png | Bin 0 -> 4212 bytes
test/reference/record2x-fill-alpha.ref.png | Bin 0 -> 5950 bytes
test/reference/record90-fill-alpha.ref.png | Bin 0 -> 2650 bytes
4 files changed, 0 insertions(+), 0 deletions(-)
commit 3255462a238dfb6d9f1336f04918d51f2cb6ea18
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jul 4 09:24:25 2013 +0100
test: Remove all identical (cmp & pdiff) reference images
Courtesy of the improved check-ref-dups written by Bryce Harrington:
Running make check on the codebase (with default configuration) with the
redundant images removed produces essentially the same test results:
Before
------
Tests run: 13687
Passed: 9216
Failed: 3566
Expected Failed: 312
Error: 1
Crashed: 17
Untested: 575
Total: 13687
After
-----
Tests run: 13689
Passed: 9216
Failed: 3566
Expected Failed: 312
Error: 1
Crashed: 19
Untested: 575
Total: 13689
(with the exception being the pthread tests misbehaving between runs)
test/reference/a1-clip-fill-equal.argb32.ref.png | Bin 120 -> 0 bytes
.../a1-clip-fill-equal.mask.argb32.ref.png | Bin 120 -> 0 bytes
.../a1-clip-fill-equal.mask.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-fill-equal.rgb24.ref.png | Bin 120 -> 0 bytes
.../a1-clip-fill-equal.traps.argb32.ref.png | Bin 120 -> 0 bytes
.../a1-clip-fill-equal.traps.rgb24.ref.png | Bin 120 -> 0 bytes
.../a1-clip-fill-rule.mask.argb32.ref.png | Bin 236 -> 0 bytes
.../reference/a1-clip-fill-rule.mask.rgb24.ref.png | Bin 218 -> 0 bytes
.../a1-clip-fill-rule.traps.argb32.ref.png | Bin 236 -> 0 bytes
.../a1-clip-fill-rule.traps.rgb24.ref.png | Bin 218 -> 0 bytes
test/reference/a1-clip-fill.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-fill.mask.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-fill.mask.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-fill.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-fill.traps.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-fill.traps.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-paint.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-paint.mask.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-paint.mask.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-paint.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-paint.traps.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-paint.traps.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-stroke.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-stroke.mask.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-stroke.mask.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-stroke.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-stroke.traps.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-clip-stroke.traps.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-fill.argb32.ref.png | Bin 328 -> 0 bytes
test/reference/a1-fill.mask.argb32.ref.png | Bin 328 -> 0 bytes
test/reference/a1-fill.mask.rgb24.ref.png | Bin 328 -> 0 bytes
test/reference/a1-fill.rgb24.ref.png | Bin 328 -> 0 bytes
test/reference/a1-fill.traps.argb32.ref.png | Bin 328 -> 0 bytes
test/reference/a1-fill.traps.ref.png | Bin 328 -> 0 bytes
test/reference/a1-fill.traps.rgb24.ref.png | Bin 328 -> 0 bytes
test/reference/a1-image-sample.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/a1-image-sample.mask.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/a1-image-sample.mask.rgb24.ref.png | Bin 122 -> 0 bytes
test/reference/a1-image-sample.rgb24.ref.png | Bin 122 -> 0 bytes
.../reference/a1-image-sample.traps.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/a1-image-sample.traps.rgb24.ref.png | Bin 122 -> 0 bytes
.../a1-image-sample.xlib-fallback.rgb24.ref.png | Bin 122 -> 0 bytes
.../a1-image-sample.xlib-window.rgb24.ref.png | Bin 122 -> 0 bytes
test/reference/a1-line-width.argb32.ref.png | Bin 154 -> 0 bytes
test/reference/a1-line-width.mask.argb32.ref.png | Bin 154 -> 0 bytes
test/reference/a1-line-width.mask.rgb24.ref.png | Bin 154 -> 0 bytes
test/reference/a1-line-width.rgb24.ref.png | Bin 154 -> 0 bytes
test/reference/a1-line-width.traps.argb32.ref.png | Bin 154 -> 0 bytes
test/reference/a1-line-width.traps.rgb24.ref.png | Bin 154 -> 0 bytes
test/reference/a1-mask-sample.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/a1-mask-sample.mask.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/a1-mask-sample.mask.rgb24.ref.png | Bin 122 -> 0 bytes
test/reference/a1-mask-sample.rgb24.ref.png | Bin 122 -> 0 bytes
test/reference/a1-mask-sample.traps.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/a1-mask-sample.traps.rgb24.ref.png | Bin 122 -> 0 bytes
test/reference/a1-mask.argb32.ref.png | Bin 106 -> 0 bytes
test/reference/a1-mask.mask.argb32.ref.png | Bin 106 -> 0 bytes
test/reference/a1-mask.mask.rgb24.ref.png | Bin 106 -> 0 bytes
test/reference/a1-mask.pdf.ref.png | Bin 106 -> 0 bytes
test/reference/a1-mask.ps.ref.png | Bin 106 -> 0 bytes
test/reference/a1-mask.rgb24.ref.png | Bin 106 -> 0 bytes
test/reference/a1-mask.traps.argb32.ref.png | Bin 106 -> 0 bytes
test/reference/a1-mask.traps.rgb24.ref.png | Bin 106 -> 0 bytes
.../a1-rasterisation-rectangles.argb32.ref.png | Bin 1729 -> 0 bytes
...a1-rasterisation-rectangles.mask.argb32.ref.png | Bin 1729 -> 0 bytes
.../a1-rasterisation-rectangles.mask.rgb24.ref.png | Bin 1729 -> 0 bytes
.../a1-rasterisation-rectangles.rgb24.ref.png | Bin 1729 -> 0 bytes
...1-rasterisation-rectangles.traps.argb32.ref.png | Bin 1729 -> 0 bytes
...a1-rasterisation-rectangles.traps.rgb24.ref.png | Bin 1729 -> 0 bytes
.../a1-rasterisation-triangles.argb32.ref.png | Bin 1729 -> 0 bytes
.../a1-rasterisation-triangles.mask.argb32.ref.png | Bin 1729 -> 0 bytes
.../a1-rasterisation-triangles.mask.rgb24.ref.png | Bin 1729 -> 0 bytes
.../a1-rasterisation-triangles.rgb24.ref.png | Bin 1729 -> 0 bytes
...a1-rasterisation-triangles.traps.argb32.ref.png | Bin 1729 -> 0 bytes
.../a1-rasterisation-triangles.traps.rgb24.ref.png | Bin 1729 -> 0 bytes
test/reference/a1-rectilinear-grid.argb32.ref.png | Bin 207 -> 0 bytes
.../a1-rectilinear-grid.mask.argb32.ref.png | Bin 207 -> 0 bytes
.../a1-rectilinear-grid.mask.rgb24.ref.png | Bin 207 -> 0 bytes
test/reference/a1-rectilinear-grid.rgb24.ref.png | Bin 207 -> 0 bytes
.../a1-rectilinear-grid.traps.argb32.ref.png | Bin 207 -> 0 bytes
.../a1-rectilinear-grid.traps.rgb24.ref.png | Bin 207 -> 0 bytes
test/reference/a1-sample.argb32.ref.png | Bin 786 -> 0 bytes
test/reference/a1-sample.mask.argb32.ref.png | Bin 786 -> 0 bytes
test/reference/a1-sample.mask.rgb24.ref.png | Bin 786 -> 0 bytes
test/reference/a1-sample.rgb24.ref.png | Bin 786 -> 0 bytes
test/reference/a1-sample.traps.argb32.ref.png | Bin 786 -> 0 bytes
test/reference/a1-sample.traps.rgb24.ref.png | Bin 786 -> 0 bytes
test/reference/a1-traps-sample.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-traps-sample.mask.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-traps-sample.mask.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a1-traps-sample.rgb24.ref.png | Bin 120 -> 0 bytes
.../reference/a1-traps-sample.traps.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/a1-traps-sample.traps.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/a8-clear.mask.argb32.ref.png | Bin 271 -> 0 bytes
test/reference/a8-clear.mask.rgb24.ref.png | Bin 271 -> 0 bytes
test/reference/a8-mask.argb32.ref.png | Bin 103 -> 0 bytes
test/reference/a8-mask.mask.argb32.ref.png | Bin 103 -> 0 bytes
test/reference/a8-mask.mask.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/a8-mask.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/a8-mask.traps.argb32.ref.png | Bin 103 -> 0 bytes
test/reference/a8-mask.traps.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/aliasing.mask.argb32.ref.png | Bin 104324 -> 0 bytes
test/reference/aliasing.mask.rgb24.ref.png | Bin 104324 -> 0 bytes
test/reference/alpha-similar.argb32.ref.png | Bin 99 -> 0 bytes
test/reference/alpha-similar.mask.argb32.ref.png | Bin 99 -> 0 bytes
test/reference/alpha-similar.mask.rgb24.ref.png | Bin 88 -> 0 bytes
test/reference/alpha-similar.traps.argb32.ref.png | Bin 99 -> 0 bytes
test/reference/alpha-similar.traps.rgb24.ref.png | Bin 88 -> 0 bytes
test/reference/api-special-cases.argb32.ref.png | Bin 95 -> 0 bytes
.../api-special-cases.mask.argb32.ref.png | Bin 95 -> 0 bytes
.../reference/api-special-cases.mask.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/api-special-cases.rgb24.ref.png | Bin 95 -> 0 bytes
.../api-special-cases.traps.argb32.ref.png | Bin 95 -> 0 bytes
.../api-special-cases.traps.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/arc-direction.mask.argb32.ref.png | Bin 6380 -> 0 bytes
test/reference/arc-direction.mask.rgb24.ref.png | Bin 6380 -> 0 bytes
test/reference/arc-infinite-loop.argb32.ref.png | Bin 96 -> 0 bytes
.../arc-infinite-loop.mask.argb32.ref.png | Bin 96 -> 0 bytes
.../reference/arc-infinite-loop.mask.rgb24.ref.png | Bin 96 -> 0 bytes
test/reference/arc-infinite-loop.rgb24.ref.png | Bin 96 -> 0 bytes
.../arc-infinite-loop.traps.argb32.ref.png | Bin 96 -> 0 bytes
.../arc-infinite-loop.traps.rgb24.ref.png | Bin 96 -> 0 bytes
test/reference/big-empty-box.traps.argb32.ref.png | Bin 111 -> 0 bytes
test/reference/big-empty-box.traps.rgb24.ref.png | Bin 108 -> 0 bytes
.../big-empty-triangle.mask.argb32.ref.png | Bin 111 -> 0 bytes
.../big-empty-triangle.mask.rgb24.ref.png | Bin 108 -> 0 bytes
.../big-empty-triangle.traps.argb32.ref.png | Bin 111 -> 0 bytes
.../big-empty-triangle.traps.rgb24.ref.png | Bin 108 -> 0 bytes
test/reference/big-line.mask.argb32.ref.png | Bin 977 -> 0 bytes
test/reference/big-line.mask.rgb24.ref.png | Bin 977 -> 0 bytes
test/reference/big-little-box.mask.argb32.ref.png | Bin 169 -> 0 bytes
test/reference/big-little-box.mask.rgb24.ref.png | Bin 160 -> 0 bytes
test/reference/big-little-box.traps.argb32.ref.png | Bin 169 -> 0 bytes
test/reference/big-little-box.traps.rgb24.ref.png | Bin 160 -> 0 bytes
.../big-little-triangle.mask.argb32.ref.png | Bin 409 -> 0 bytes
.../big-little-triangle.mask.rgb24.ref.png | Bin 328 -> 0 bytes
test/reference/bilevel-image.argb32.ref.png | Bin 105 -> 0 bytes
test/reference/bilevel-image.mask.argb32.ref.png | Bin 105 -> 0 bytes
test/reference/bilevel-image.mask.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/bilevel-image.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/bilevel-image.traps.argb32.ref.png | Bin 105 -> 0 bytes
test/reference/bilevel-image.traps.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/bitmap-font.argb32.ref.png | Bin 931 -> 0 bytes
test/reference/bitmap-font.mask.argb32.ref.png | Bin 931 -> 0 bytes
test/reference/bitmap-font.mask.rgb24.ref.png | Bin 871 -> 0 bytes
test/reference/bitmap-font.traps.argb32.ref.png | Bin 931 -> 0 bytes
test/reference/bitmap-font.traps.rgb24.ref.png | Bin 871 -> 0 bytes
test/reference/bug-40410.mask.argb32.ref.png | Bin 429 -> 0 bytes
test/reference/bug-40410.mask.rgb24.ref.png | Bin 429 -> 0 bytes
test/reference/bug-bo-rectangular.argb32.ref.png | Bin 950 -> 0 bytes
.../bug-bo-rectangular.mask.argb32.ref.png | Bin 950 -> 0 bytes
.../bug-bo-rectangular.mask.rgb24.ref.png | Bin 950 -> 0 bytes
test/reference/bug-bo-rectangular.rgb24.ref.png | Bin 950 -> 0 bytes
.../bug-bo-rectangular.traps.argb32.ref.png | Bin 950 -> 0 bytes
.../bug-bo-rectangular.traps.rgb24.ref.png | Bin 950 -> 0 bytes
test/reference/bug-bo-ricotz.mask.argb32.ref.png | Bin 2128 -> 0 bytes
test/reference/bug-bo-ricotz.mask.rgb24.ref.png | Bin 2128 -> 0 bytes
test/reference/bug-bo-ricotz.traps.argb32.ref.png | Bin 2125 -> 0 bytes
test/reference/bug-bo-ricotz.traps.rgb24.ref.png | Bin 2125 -> 0 bytes
test/reference/bug-extents.mask.argb32.ref.png | Bin 9251 -> 0 bytes
test/reference/bug-extents.mask.rgb24.ref.png | Bin 9251 -> 0 bytes
test/reference/caps-joins.mask.argb32.ref.png | Bin 2893 -> 0 bytes
test/reference/caps-joins.mask.rgb24.ref.png | Bin 2893 -> 0 bytes
test/reference/caps-sub-paths.mask.argb32.ref.png | Bin 168 -> 0 bytes
test/reference/caps-sub-paths.mask.rgb24.ref.png | Bin 168 -> 0 bytes
test/reference/caps.mask.argb32.ref.png | Bin 2115 -> 0 bytes
test/reference/caps.mask.rgb24.ref.png | Bin 2115 -> 0 bytes
test/reference/checkerboard.argb32.ref.png | Bin 142 -> 0 bytes
test/reference/checkerboard.mask.argb32.ref.png | Bin 142 -> 0 bytes
test/reference/checkerboard.mask.rgb24.ref.png | Bin 142 -> 0 bytes
test/reference/checkerboard.rgb24.ref.png | Bin 142 -> 0 bytes
test/reference/checkerboard.traps.argb32.ref.png | Bin 142 -> 0 bytes
test/reference/checkerboard.traps.rgb24.ref.png | Bin 142 -> 0 bytes
test/reference/clear-source.mask.argb32.ref.png | Bin 882 -> 0 bytes
test/reference/clear-source.mask.rgb24.ref.png | Bin 882 -> 0 bytes
test/reference/clear.mask.argb32.ref.png | Bin 692 -> 0 bytes
test/reference/clear.mask.rgb24.ref.png | Bin 617 -> 0 bytes
test/reference/clip-all.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-all.mask.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-all.mask.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/clip-all.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/clip-all.traps.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-all.traps.rgb24.ref.png | Bin 95 -> 0 bytes
.../clip-complex-shape-eo-aa.argb32.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-aa.mask.argb32.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-aa.mask.rgb24.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-aa.rgb24.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-aa.traps.argb32.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-aa.traps.rgb24.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-mono.argb32.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-mono.mask.argb32.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-mono.mask.rgb24.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-mono.rgb24.ref.png | Bin 325 -> 0 bytes
...clip-complex-shape-eo-mono.traps.argb32.ref.png | Bin 325 -> 0 bytes
.../clip-complex-shape-eo-mono.traps.rgb24.ref.png | Bin 325 -> 0 bytes
test/reference/clip-contexts.argb32.ref.png | Bin 98 -> 0 bytes
test/reference/clip-contexts.mask.argb32.ref.png | Bin 98 -> 0 bytes
test/reference/clip-contexts.mask.rgb24.ref.png | Bin 98 -> 0 bytes
test/reference/clip-contexts.rgb24.ref.png | Bin 98 -> 0 bytes
test/reference/clip-contexts.traps.argb32.ref.png | Bin 98 -> 0 bytes
test/reference/clip-contexts.traps.rgb24.ref.png | Bin 98 -> 0 bytes
.../clip-device-offset.mask.argb32.ref.png | Bin 175 -> 0 bytes
.../clip-device-offset.mask.rgb24.ref.png | Bin 168 -> 0 bytes
.../clip-device-offset.traps.argb32.ref.png | Bin 175 -> 0 bytes
.../clip-device-offset.traps.rgb24.ref.png | Bin 168 -> 0 bytes
test/reference/clip-empty-group.argb32.ref.png | Bin 103 -> 0 bytes
.../reference/clip-empty-group.mask.argb32.ref.png | Bin 103 -> 0 bytes
test/reference/clip-empty-group.mask.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/clip-empty-group.rgb24.ref.png | Bin 103 -> 0 bytes
.../clip-empty-group.traps.argb32.ref.png | Bin 103 -> 0 bytes
.../reference/clip-empty-group.traps.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/clip-empty-save.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty-save.mask.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty-save.mask.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty-save.rgb24.ref.png | Bin 95 -> 0 bytes
.../reference/clip-empty-save.traps.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty-save.traps.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty.mask.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty.mask.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty.traps.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/clip-empty.traps.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/clip-fill-no-op.argb32.ref.png | Bin 152 -> 0 bytes
test/reference/clip-fill-no-op.mask.argb32.ref.png | Bin 152 -> 0 bytes
test/reference/clip-fill-no-op.mask.rgb24.ref.png | Bin 152 -> 0 bytes
test/reference/clip-fill-no-op.rgb24.ref.png | Bin 152 -> 0 bytes
.../reference/clip-fill-no-op.traps.argb32.ref.png | Bin 152 -> 0 bytes
test/reference/clip-fill-no-op.traps.rgb24.ref.png | Bin 152 -> 0 bytes
.../clip-fill-rule-pixel-aligned.argb32.ref.png | Bin 176 -> 0 bytes
...lip-fill-rule-pixel-aligned.mask.argb32.ref.png | Bin 176 -> 0 bytes
...clip-fill-rule-pixel-aligned.mask.rgb24.ref.png | Bin 165 -> 0 bytes
...ip-fill-rule-pixel-aligned.traps.argb32.ref.png | Bin 176 -> 0 bytes
...lip-fill-rule-pixel-aligned.traps.rgb24.ref.png | Bin 165 -> 0 bytes
test/reference/clip-fill-rule.mask.argb32.ref.png | Bin 437 -> 0 bytes
test/reference/clip-fill-rule.mask.rgb24.ref.png | Bin 393 -> 0 bytes
...-group-shapes-aligned-rectangles.argb32.ref.png | Bin 378 -> 0 bytes
...p-shapes-aligned-rectangles.mask.argb32.ref.png | Bin 378 -> 0 bytes
...up-shapes-aligned-rectangles.mask.rgb24.ref.png | Bin 378 -> 0 bytes
...p-group-shapes-aligned-rectangles.rgb24.ref.png | Bin 378 -> 0 bytes
...-shapes-aligned-rectangles.traps.argb32.ref.png | Bin 378 -> 0 bytes
...p-shapes-aligned-rectangles.traps.rgb24.ref.png | Bin 378 -> 0 bytes
...roup-shapes-unaligned-rectangles.argb32.ref.png | Bin 415 -> 0 bytes
...group-shapes-unaligned-rectangles.rgb24.ref.png | Bin 415 -> 0 bytes
test/reference/clip-intersect.mask.argb32.ref.png | Bin 200 -> 0 bytes
test/reference/clip-intersect.mask.rgb24.ref.png | Bin 200 -> 0 bytes
.../clip-mixed-antialias.mask.argb32.ref.png | Bin 1084 -> 0 bytes
.../clip-mixed-antialias.mask.rgb24.ref.png | Bin 1084 -> 0 bytes
test/reference/clip-nesting.mask.argb32.ref.png | Bin 1044 -> 0 bytes
test/reference/clip-polygons.traps.argb32.ref.png | Bin 1268 -> 0 bytes
test/reference/clip-polygons.traps.rgb24.ref.png | Bin 1268 -> 0 bytes
test/reference/clip-push-group.mask.argb32.ref.png | Bin 164 -> 0 bytes
test/reference/clip-push-group.mask.rgb24.ref.png | Bin 164 -> 0 bytes
test/reference/clip-rectilinear.argb32.ref.png | Bin 439 -> 0 bytes
test/reference/clip-rectilinear.rgb24.ref.png | Bin 439 -> 0 bytes
.../clip-rectilinear.traps.argb32.ref.png | Bin 440 -> 0 bytes
.../reference/clip-rectilinear.traps.rgb24.ref.png | Bin 440 -> 0 bytes
.../clip-rotate-image-surface-paint.argb32.ref.png | Bin 202 -> 0 bytes
...-rotate-image-surface-paint.mask.argb32.ref.png | Bin 202 -> 0 bytes
...p-rotate-image-surface-paint.mask.rgb24.ref.png | Bin 202 -> 0 bytes
.../clip-rotate-image-surface-paint.rgb24.ref.png | Bin 202 -> 0 bytes
...rotate-image-surface-paint.traps.argb32.ref.png | Bin 202 -> 0 bytes
...-rotate-image-surface-paint.traps.rgb24.ref.png | Bin 202 -> 0 bytes
...image-surface-paint.xlib-fallback.rgb24.ref.png | Bin 202 -> 0 bytes
...e-image-surface-paint.xlib-window.rgb24.ref.png | Bin 202 -> 0 bytes
test/reference/clip-stroke-no-op.argb32.ref.png | Bin 152 -> 0 bytes
.../clip-stroke-no-op.mask.argb32.ref.png | Bin 152 -> 0 bytes
.../reference/clip-stroke-no-op.mask.rgb24.ref.png | Bin 152 -> 0 bytes
test/reference/clip-stroke-no-op.rgb24.ref.png | Bin 152 -> 0 bytes
.../clip-stroke-no-op.traps.argb32.ref.png | Bin 152 -> 0 bytes
.../clip-stroke-no-op.traps.rgb24.ref.png | Bin 152 -> 0 bytes
test/reference/clip-twice-rectangle.argb32.ref.png | Bin 323 -> 0 bytes
.../clip-twice-rectangle.mask.argb32.ref.png | Bin 323 -> 0 bytes
.../clip-twice-rectangle.mask.rgb24.ref.png | Bin 323 -> 0 bytes
test/reference/clip-twice-rectangle.rgb24.ref.png | Bin 323 -> 0 bytes
.../clip-twice-rectangle.traps.argb32.ref.png | Bin 323 -> 0 bytes
.../clip-twice-rectangle.traps.rgb24.ref.png | Bin 323 -> 0 bytes
test/reference/clip-unbounded.argb32.ref.png | Bin 100 -> 0 bytes
test/reference/clip-unbounded.mask.argb32.ref.png | Bin 100 -> 0 bytes
test/reference/clip-unbounded.mask.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/clip-unbounded.traps.argb32.ref.png | Bin 100 -> 0 bytes
test/reference/clip-unbounded.traps.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/clipped-surface.argb32.ref.png | Bin 345 -> 0 bytes
test/reference/clipped-surface.mask.argb32.ref.png | Bin 345 -> 0 bytes
test/reference/clipped-surface.mask.rgb24.ref.png | Bin 345 -> 0 bytes
test/reference/clipped-surface.rgb24.ref.png | Bin 345 -> 0 bytes
.../reference/clipped-surface.traps.argb32.ref.png | Bin 345 -> 0 bytes
test/reference/clipped-surface.traps.rgb24.ref.png | Bin 345 -> 0 bytes
test/reference/close-path.mask.argb32.ref.png | Bin 294 -> 0 bytes
test/reference/close-path.mask.rgb24.ref.png | Bin 294 -> 0 bytes
...te-integer-translate-over-repeat.argb32.ref.png | Bin 334 -> 0 bytes
...teger-translate-over-repeat.mask.argb32.ref.png | Bin 334 -> 0 bytes
...nteger-translate-over-repeat.mask.rgb24.ref.png | Bin 334 -> 0 bytes
...ite-integer-translate-over-repeat.rgb24.ref.png | Bin 334 -> 0 bytes
...eger-translate-over-repeat.traps.argb32.ref.png | Bin 334 -> 0 bytes
...teger-translate-over-repeat.traps.rgb24.ref.png | Bin 334 -> 0 bytes
...composite-integer-translate-over.argb32.ref.png | Bin 13998 -> 0 bytes
...site-integer-translate-over.mask.argb32.ref.png | Bin 13998 -> 0 bytes
...osite-integer-translate-over.mask.rgb24.ref.png | Bin 13998 -> 0 bytes
.../composite-integer-translate-over.rgb24.ref.png | Bin 13998 -> 0 bytes
...ite-integer-translate-over.traps.argb32.ref.png | Bin 13998 -> 0 bytes
...site-integer-translate-over.traps.rgb24.ref.png | Bin 13998 -> 0 bytes
...mposite-integer-translate-source.argb32.ref.png | Bin 13998 -> 0 bytes
...te-integer-translate-source.mask.argb32.ref.png | Bin 13998 -> 0 bytes
...ite-integer-translate-source.mask.rgb24.ref.png | Bin 13998 -> 0 bytes
...omposite-integer-translate-source.rgb24.ref.png | Bin 13998 -> 0 bytes
...e-integer-translate-source.traps.argb32.ref.png | Bin 13998 -> 0 bytes
...te-integer-translate-source.traps.rgb24.ref.png | Bin 13998 -> 0 bytes
test/reference/copy-disjoint.argb32.ref.png | Bin 1098 -> 0 bytes
test/reference/copy-disjoint.mask.argb32.ref.png | Bin 1098 -> 0 bytes
test/reference/copy-disjoint.mask.rgb24.ref.png | Bin 1098 -> 0 bytes
test/reference/copy-disjoint.rgb24.ref.png | Bin 1098 -> 0 bytes
test/reference/copy-disjoint.traps.argb32.ref.png | Bin 1098 -> 0 bytes
test/reference/copy-disjoint.traps.rgb24.ref.png | Bin 1098 -> 0 bytes
test/reference/copy-path.mask.argb32.ref.png | Bin 616 -> 0 bytes
test/reference/copy-path.mask.rgb24.ref.png | Bin 616 -> 0 bytes
.../create-from-png-stream.argb32.ref.png | Bin 96 -> 0 bytes
.../create-from-png-stream.mask.argb32.ref.png | Bin 96 -> 0 bytes
.../create-from-png-stream.mask.rgb24.ref.png | Bin 96 -> 0 bytes
.../reference/create-from-png-stream.rgb24.ref.png | Bin 96 -> 0 bytes
.../create-from-png-stream.traps.argb32.ref.png | Bin 96 -> 0 bytes
.../create-from-png-stream.traps.rgb24.ref.png | Bin 96 -> 0 bytes
test/reference/culled-glyphs.mask.argb32.ref.png | Bin 440 -> 0 bytes
test/reference/culled-glyphs.mask.rgb24.ref.png | Bin 440 -> 0 bytes
test/reference/culled-glyphs.traps.argb32.ref.png | Bin 440 -> 0 bytes
test/reference/culled-glyphs.traps.rgb24.ref.png | Bin 440 -> 0 bytes
.../dash-infinite-loop.mask.argb32.ref.png | Bin 877 -> 0 bytes
.../dash-infinite-loop.mask.rgb24.ref.png | Bin 877 -> 0 bytes
test/reference/dash-no-dash.argb32.ref.png | Bin 119 -> 0 bytes
test/reference/dash-no-dash.mask.argb32.ref.png | Bin 119 -> 0 bytes
test/reference/dash-no-dash.mask.rgb24.ref.png | Bin 119 -> 0 bytes
test/reference/dash-no-dash.rgb24.ref.png | Bin 119 -> 0 bytes
test/reference/dash-no-dash.traps.argb32.ref.png | Bin 119 -> 0 bytes
test/reference/dash-no-dash.traps.rgb24.ref.png | Bin 119 -> 0 bytes
.../dash-offset-negative.mask.argb32.ref.png | Bin 129 -> 0 bytes
.../dash-offset-negative.mask.rgb24.ref.png | Bin 129 -> 0 bytes
test/reference/dash-offset.argb32.ref.png | Bin 794 -> 0 bytes
test/reference/dash-offset.mask.argb32.ref.png | Bin 794 -> 0 bytes
test/reference/dash-offset.mask.rgb24.ref.png | Bin 794 -> 0 bytes
test/reference/dash-offset.rgb24.ref.png | Bin 794 -> 0 bytes
test/reference/dash-offset.traps.argb32.ref.png | Bin 794 -> 0 bytes
test/reference/dash-offset.traps.rgb24.ref.png | Bin 794 -> 0 bytes
test/reference/dash-state.mask.argb32.ref.png | Bin 8027 -> 0 bytes
test/reference/dash-state.mask.rgb24.ref.png | Bin 8027 -> 0 bytes
.../reference/dash-zero-length.mask.argb32.ref.png | Bin 230 -> 0 bytes
test/reference/degenerate-arcs.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/degenerate-arcs.mask.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/degenerate-arcs.mask.rgb24.ref.png | Bin 120 -> 0 bytes
test/reference/degenerate-arcs.rgb24.ref.png | Bin 120 -> 0 bytes
.../reference/degenerate-arcs.traps.argb32.ref.png | Bin 120 -> 0 bytes
test/reference/degenerate-arcs.traps.rgb24.ref.png | Bin 120 -> 0 bytes
.../degenerate-linear-gradient.mask.argb32.ref.png | Bin 336 -> 0 bytes
.../degenerate-linear-gradient.mask.rgb24.ref.png | Bin 336 -> 0 bytes
...degenerate-linear-gradient.traps.argb32.ref.png | Bin 336 -> 0 bytes
.../degenerate-linear-gradient.traps.rgb24.ref.png | Bin 336 -> 0 bytes
test/reference/degenerate-pen.mask.argb32.ref.png | Bin 1019 -> 0 bytes
test/reference/degenerate-pen.mask.rgb24.ref.png | Bin 1019 -> 0 bytes
.../degenerate-radial-gradient.argb32.ref.png | Bin 428 -> 0 bytes
.../degenerate-radial-gradient.mask.argb32.ref.png | Bin 428 -> 0 bytes
.../degenerate-radial-gradient.mask.rgb24.ref.png | Bin 428 -> 0 bytes
.../degenerate-radial-gradient.rgb24.ref.png | Bin 428 -> 0 bytes
...degenerate-radial-gradient.traps.argb32.ref.png | Bin 428 -> 0 bytes
.../degenerate-radial-gradient.traps.rgb24.ref.png | Bin 428 -> 0 bytes
.../device-offset-fractional.argb32.ref.png | Bin 266 -> 0 bytes
.../device-offset-fractional.mask.argb32.ref.png | Bin 266 -> 0 bytes
.../device-offset-fractional.mask.rgb24.ref.png | Bin 266 -> 0 bytes
.../device-offset-fractional.rgb24.ref.png | Bin 266 -> 0 bytes
.../device-offset-fractional.traps.argb32.ref.png | Bin 266 -> 0 bytes
.../device-offset-fractional.traps.rgb24.ref.png | Bin 266 -> 0 bytes
.../device-offset-positive.argb32.ref.png | Bin 120 -> 0 bytes
.../device-offset-positive.mask.argb32.ref.png | Bin 120 -> 0 bytes
.../device-offset-positive.mask.rgb24.ref.png | Bin 111 -> 0 bytes
.../device-offset-positive.traps.argb32.ref.png | Bin 120 -> 0 bytes
.../device-offset-positive.traps.rgb24.ref.png | Bin 111 -> 0 bytes
test/reference/device-offset-scale.argb32.ref.png | Bin 109 -> 0 bytes
.../device-offset-scale.mask.argb32.ref.png | Bin 109 -> 0 bytes
.../device-offset-scale.mask.rgb24.ref.png | Bin 109 -> 0 bytes
test/reference/device-offset-scale.rgb24.ref.png | Bin 109 -> 0 bytes
.../device-offset-scale.traps.argb32.ref.png | Bin 109 -> 0 bytes
.../device-offset-scale.traps.rgb24.ref.png | Bin 109 -> 0 bytes
test/reference/device-offset.argb32.ref.png | Bin 118 -> 0 bytes
test/reference/device-offset.mask.argb32.ref.png | Bin 118 -> 0 bytes
test/reference/device-offset.mask.rgb24.ref.png | Bin 111 -> 0 bytes
test/reference/device-offset.traps.argb32.ref.png | Bin 118 -> 0 bytes
test/reference/device-offset.traps.rgb24.ref.png | Bin 111 -> 0 bytes
.../extend-pad-border.mask.argb32.ref.png | Bin 495 -> 0 bytes
.../reference/extend-pad-border.mask.rgb24.ref.png | Bin 495 -> 0 bytes
.../extend-pad-border.traps.argb32.ref.png | Bin 495 -> 0 bytes
.../extend-pad-border.traps.rgb24.ref.png | Bin 495 -> 0 bytes
test/reference/extend-pad-similar.argb32.ref.png | Bin 279 -> 0 bytes
.../extend-pad-similar.mask.argb32.ref.png | Bin 279 -> 0 bytes
.../extend-pad-similar.mask.rgb24.ref.png | Bin 279 -> 0 bytes
test/reference/extend-pad-similar.rgb24.ref.png | Bin 279 -> 0 bytes
.../extend-pad-similar.traps.argb32.ref.png | Bin 279 -> 0 bytes
.../extend-pad-similar.traps.rgb24.ref.png | Bin 279 -> 0 bytes
test/reference/extend-pad.argb32.ref.png | Bin 279 -> 0 bytes
test/reference/extend-pad.mask.argb32.ref.png | Bin 279 -> 0 bytes
test/reference/extend-pad.mask.rgb24.ref.png | Bin 279 -> 0 bytes
test/reference/extend-pad.rgb24.ref.png | Bin 279 -> 0 bytes
test/reference/extend-pad.traps.argb32.ref.png | Bin 279 -> 0 bytes
test/reference/extend-pad.traps.rgb24.ref.png | Bin 279 -> 0 bytes
.../extend-reflect-similar.argb32.ref.png | Bin 133406 -> 0 bytes
.../extend-reflect-similar.mask.argb32.ref.png | Bin 133406 -> 0 bytes
.../extend-reflect-similar.mask.rgb24.ref.png | Bin 133406 -> 0 bytes
.../reference/extend-reflect-similar.rgb24.ref.png | Bin 133406 -> 0 bytes
.../extend-reflect-similar.traps.argb32.ref.png | Bin 133406 -> 0 bytes
.../extend-reflect-similar.traps.rgb24.ref.png | Bin 133406 -> 0 bytes
test/reference/extend-reflect.argb32.ref.png | Bin 133406 -> 0 bytes
test/reference/extend-reflect.mask.argb32.ref.png | Bin 133406 -> 0 bytes
test/reference/extend-reflect.mask.rgb24.ref.png | Bin 133406 -> 0 bytes
test/reference/extend-reflect.rgb24.ref.png | Bin 133406 -> 0 bytes
test/reference/extend-reflect.traps.argb32.ref.png | Bin 133406 -> 0 bytes
test/reference/extend-reflect.traps.rgb24.ref.png | Bin 133406 -> 0 bytes
.../reference/extend-repeat-similar.argb32.ref.png | Bin 108603 -> 0 bytes
.../extend-repeat-similar.mask.argb32.ref.png | Bin 108603 -> 0 bytes
.../extend-repeat-similar.mask.rgb24.ref.png | Bin 108603 -> 0 bytes
test/reference/extend-repeat-similar.rgb24.ref.png | Bin 108603 -> 0 bytes
.../extend-repeat-similar.traps.argb32.ref.png | Bin 108603 -> 0 bytes
.../extend-repeat-similar.traps.rgb24.ref.png | Bin 108603 -> 0 bytes
test/reference/extend-repeat.argb32.ref.png | Bin 108603 -> 0 bytes
test/reference/extend-repeat.mask.argb32.ref.png | Bin 108603 -> 0 bytes
test/reference/extend-repeat.mask.rgb24.ref.png | Bin 108603 -> 0 bytes
test/reference/extend-repeat.rgb24.ref.png | Bin 108603 -> 0 bytes
test/reference/extend-repeat.traps.argb32.ref.png | Bin 108603 -> 0 bytes
test/reference/extend-repeat.traps.rgb24.ref.png | Bin 108603 -> 0 bytes
.../extended-blend-alpha-mask.mask.argb32.ref.png | Bin 9221 -> 0 bytes
.../extended-blend-alpha-mask.mask.rgb24.ref.png | Bin 4597 -> 0 bytes
.../extended-blend-alpha-mask.traps.argb32.ref.png | Bin 9221 -> 0 bytes
.../extended-blend-alpha-mask.traps.rgb24.ref.png | Bin 4597 -> 0 bytes
.../extended-blend-alpha.mask.argb32.ref.png | Bin 9406 -> 0 bytes
.../extended-blend-alpha.mask.rgb24.ref.png | Bin 5740 -> 0 bytes
.../extended-blend-alpha.traps.argb32.ref.png | Bin 9406 -> 0 bytes
.../extended-blend-alpha.traps.rgb24.ref.png | Bin 5740 -> 0 bytes
.../extended-blend-mask.mask.argb32.ref.png | Bin 3971 -> 0 bytes
.../extended-blend-mask.mask.rgb24.ref.png | Bin 3643 -> 0 bytes
.../extended-blend-mask.traps.argb32.ref.png | Bin 3971 -> 0 bytes
.../extended-blend-mask.traps.rgb24.ref.png | Bin 3643 -> 0 bytes
.../extended-blend-solid-alpha.mask.argb32.ref.png | Bin 9406 -> 0 bytes
.../extended-blend-solid-alpha.mask.rgb24.ref.png | Bin 5740 -> 0 bytes
...extended-blend-solid-alpha.traps.argb32.ref.png | Bin 9406 -> 0 bytes
.../extended-blend-solid-alpha.traps.rgb24.ref.png | Bin 5740 -> 0 bytes
.../extended-blend-solid.mask.argb32.ref.png | Bin 4063 -> 0 bytes
.../extended-blend-solid.mask.rgb24.ref.png | Bin 3775 -> 0 bytes
.../extended-blend-solid.traps.argb32.ref.png | Bin 4063 -> 0 bytes
.../extended-blend-solid.traps.rgb24.ref.png | Bin 3775 -> 0 bytes
test/reference/extended-blend.mask.argb32.ref.png | Bin 4063 -> 0 bytes
test/reference/extended-blend.mask.rgb24.ref.png | Bin 3775 -> 0 bytes
test/reference/extended-blend.traps.argb32.ref.png | Bin 4063 -> 0 bytes
test/reference/extended-blend.traps.rgb24.ref.png | Bin 3775 -> 0 bytes
.../fill-alpha-pattern.mask.argb32.ref.png | Bin 3381 -> 0 bytes
.../fill-alpha-pattern.mask.rgb24.ref.png | Bin 3381 -> 0 bytes
test/reference/fill-alpha.mask.argb32.ref.png | Bin 2736 -> 0 bytes
test/reference/fill-alpha.mask.rgb24.ref.png | Bin 2736 -> 0 bytes
.../fill-and-stroke-alpha-add.mask.argb32.ref.png | Bin 556 -> 0 bytes
.../fill-and-stroke-alpha-add.mask.rgb24.ref.png | Bin 556 -> 0 bytes
.../fill-and-stroke-alpha.mask.argb32.ref.png | Bin 508 -> 0 bytes
.../fill-and-stroke-alpha.mask.rgb24.ref.png | Bin 508 -> 0 bytes
test/reference/fill-and-stroke.mask.argb32.ref.png | Bin 312 -> 0 bytes
test/reference/fill-and-stroke.mask.rgb24.ref.png | Bin 283 -> 0 bytes
.../fill-degenerate-sort-order.mask.argb32.ref.png | Bin 2400 -> 0 bytes
.../fill-degenerate-sort-order.mask.rgb24.ref.png | Bin 2049 -> 0 bytes
test/reference/fill-disjoint.argb32.ref.png | Bin 1098 -> 0 bytes
test/reference/fill-disjoint.mask.argb32.ref.png | Bin 1098 -> 0 bytes
test/reference/fill-disjoint.mask.rgb24.ref.png | Bin 1098 -> 0 bytes
test/reference/fill-disjoint.rgb24.ref.png | Bin 1098 -> 0 bytes
test/reference/fill-disjoint.traps.argb32.ref.png | Bin 1098 -> 0 bytes
test/reference/fill-disjoint.traps.rgb24.ref.png | Bin 1098 -> 0 bytes
test/reference/fill-empty.mask.argb32.ref.png | Bin 99 -> 0 bytes
test/reference/fill-empty.mask.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/fill-empty.traps.argb32.ref.png | Bin 99 -> 0 bytes
test/reference/fill-empty.traps.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/fill-image.mask.argb32.ref.png | Bin 1315 -> 0 bytes
test/reference/fill-image.mask.rgb24.ref.png | Bin 1315 -> 0 bytes
.../reference/fill-missed-stop.mask.argb32.ref.png | Bin 455 -> 0 bytes
test/reference/fill-missed-stop.mask.rgb24.ref.png | Bin 382 -> 0 bytes
test/reference/fill-rule.mask.argb32.ref.png | Bin 2065 -> 0 bytes
test/reference/fill-rule.mask.rgb24.ref.png | Bin 1803 -> 0 bytes
.../filter-bilinear-extents.mask.argb32.ref.png | Bin 1210 -> 0 bytes
.../filter-bilinear-extents.mask.rgb24.ref.png | Bin 1210 -> 0 bytes
.../filter-bilinear-extents.traps.argb32.ref.png | Bin 1210 -> 0 bytes
.../filter-bilinear-extents.traps.rgb24.ref.png | Bin 1210 -> 0 bytes
.../reference/filter-nearest-offset.argb32.ref.png | Bin 201 -> 0 bytes
.../filter-nearest-offset.mask.argb32.ref.png | Bin 201 -> 0 bytes
.../filter-nearest-offset.mask.rgb24.ref.png | Bin 201 -> 0 bytes
test/reference/filter-nearest-offset.rgb24.ref.png | Bin 201 -> 0 bytes
.../filter-nearest-offset.traps.argb32.ref.png | Bin 201 -> 0 bytes
.../filter-nearest-offset.traps.rgb24.ref.png | Bin 201 -> 0 bytes
.../filter-nearest-transformed.argb32.ref.png | Bin 514 -> 0 bytes
.../filter-nearest-transformed.mask.argb32.ref.png | Bin 514 -> 0 bytes
.../filter-nearest-transformed.mask.rgb24.ref.png | Bin 514 -> 0 bytes
.../filter-nearest-transformed.rgb24.ref.png | Bin 514 -> 0 bytes
...filter-nearest-transformed.traps.argb32.ref.png | Bin 514 -> 0 bytes
.../filter-nearest-transformed.traps.rgb24.ref.png | Bin 514 -> 0 bytes
.../font-matrix-translation.mask.argb32.ref.png | Bin 865 -> 0 bytes
.../font-matrix-translation.mask.rgb24.ref.png | Bin 865 -> 0 bytes
.../font-matrix-translation.traps.argb32.ref.png | Bin 865 -> 0 bytes
.../font-matrix-translation.traps.rgb24.ref.png | Bin 865 -> 0 bytes
.../ft-show-glyphs-positioning.mask.argb32.ref.png | Bin 3243 -> 0 bytes
.../ft-show-glyphs-positioning.mask.rgb24.ref.png | Bin 3243 -> 0 bytes
...ft-show-glyphs-positioning.traps.argb32.ref.png | Bin 3243 -> 0 bytes
.../ft-show-glyphs-positioning.traps.rgb24.ref.png | Bin 3243 -> 0 bytes
.../ft-show-glyphs-table.mask.argb32.ref.png | Bin 9975 -> 0 bytes
.../ft-show-glyphs-table.mask.rgb24.ref.png | Bin 9975 -> 0 bytes
.../ft-show-glyphs-table.traps.argb32.ref.png | Bin 9975 -> 0 bytes
.../ft-show-glyphs-table.traps.rgb24.ref.png | Bin 9975 -> 0 bytes
.../ft-text-antialias-none.argb32.ref.png | Bin 295 -> 0 bytes
.../ft-text-antialias-none.mask.argb32.ref.png | Bin 295 -> 0 bytes
.../ft-text-antialias-none.mask.rgb24.ref.png | Bin 295 -> 0 bytes
.../reference/ft-text-antialias-none.rgb24.ref.png | Bin 295 -> 0 bytes
.../ft-text-antialias-none.traps.argb32.ref.png | Bin 295 -> 0 bytes
.../ft-text-antialias-none.traps.rgb24.ref.png | Bin 295 -> 0 bytes
...-text-vertical-layout-type1.mask.argb32.ref.png | Bin 3062 -> 0 bytes
...t-text-vertical-layout-type1.mask.rgb24.ref.png | Bin 3062 -> 0 bytes
test/reference/get-group-target.argb32.ref.png | Bin 113 -> 0 bytes
.../reference/get-group-target.mask.argb32.ref.png | Bin 113 -> 0 bytes
test/reference/get-group-target.mask.rgb24.ref.png | Bin 113 -> 0 bytes
test/reference/get-group-target.rgb24.ref.png | Bin 113 -> 0 bytes
.../get-group-target.traps.argb32.ref.png | Bin 113 -> 0 bytes
.../reference/get-group-target.traps.rgb24.ref.png | Bin 113 -> 0 bytes
.../gl-surface-source.mask.argb32.ref.png | Bin 377 -> 0 bytes
.../reference/gl-surface-source.mask.rgb24.ref.png | Bin 301 -> 0 bytes
.../gl-surface-source.traps.argb32.ref.png | Bin 377 -> 0 bytes
.../gl-surface-source.traps.rgb24.ref.png | Bin 301 -> 0 bytes
.../glyph-cache-pressure.mask.argb32.ref.png | Bin 2858 -> 0 bytes
.../glyph-cache-pressure.mask.rgb24.ref.png | Bin 2858 -> 0 bytes
.../glyph-cache-pressure.traps.argb32.ref.png | Bin 2858 -> 0 bytes
.../glyph-cache-pressure.traps.rgb24.ref.png | Bin 2858 -> 0 bytes
test/reference/gradient-alpha.mask.argb32.ref.png | Bin 125 -> 0 bytes
test/reference/gradient-alpha.mask.rgb24.ref.png | Bin 119 -> 0 bytes
test/reference/gradient-alpha.traps.argb32.ref.png | Bin 125 -> 0 bytes
test/reference/gradient-alpha.traps.rgb24.ref.png | Bin 119 -> 0 bytes
.../gradient-constant-alpha.mask.argb32.ref.png | Bin 111 -> 0 bytes
.../gradient-constant-alpha.mask.rgb24.ref.png | Bin 106 -> 0 bytes
.../gradient-constant-alpha.traps.argb32.ref.png | Bin 111 -> 0 bytes
.../gradient-constant-alpha.traps.rgb24.ref.png | Bin 106 -> 0 bytes
.../gradient-zero-stops-mask.mask.argb32.ref.png | Bin 86 -> 0 bytes
.../gradient-zero-stops-mask.mask.rgb24.ref.png | Bin 86 -> 0 bytes
.../gradient-zero-stops-mask.traps.argb32.ref.png | Bin 86 -> 0 bytes
.../gradient-zero-stops-mask.traps.rgb24.ref.png | Bin 86 -> 0 bytes
test/reference/gradient-zero-stops.argb32.ref.png | Bin 86 -> 0 bytes
.../gradient-zero-stops.mask.argb32.ref.png | Bin 86 -> 0 bytes
.../gradient-zero-stops.mask.rgb24.ref.png | Bin 86 -> 0 bytes
.../gradient-zero-stops.traps.argb32.ref.png | Bin 86 -> 0 bytes
.../gradient-zero-stops.traps.rgb24.ref.png | Bin 86 -> 0 bytes
test/reference/group-clip.argb32.ref.png | Bin 191 -> 0 bytes
test/reference/group-clip.mask.argb32.ref.png | Bin 191 -> 0 bytes
test/reference/group-clip.mask.rgb24.ref.png | Bin 191 -> 0 bytes
test/reference/group-clip.rgb24.ref.png | Bin 191 -> 0 bytes
test/reference/group-clip.traps.argb32.ref.png | Bin 191 -> 0 bytes
test/reference/group-clip.traps.rgb24.ref.png | Bin 191 -> 0 bytes
test/reference/group-paint.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/group-paint.mask.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/group-paint.mask.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/group-paint.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/group-paint.traps.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/group-paint.traps.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/group-unaligned.mask.argb32.ref.png | Bin 427 -> 0 bytes
test/reference/group-unaligned.mask.rgb24.ref.png | Bin 427 -> 0 bytes
test/reference/halo-transform.mask.argb32.ref.png | Bin 15063 -> 0 bytes
test/reference/halo-transform.mask.rgb24.ref.png | Bin 15063 -> 0 bytes
test/reference/halo-transform.traps.argb32.ref.png | Bin 15122 -> 0 bytes
test/reference/halo-transform.traps.rgb24.ref.png | Bin 15122 -> 0 bytes
test/reference/horizontal-clip.mask.argb32.ref.png | Bin 113 -> 0 bytes
test/reference/horizontal-clip.mask.rgb24.ref.png | Bin 113 -> 0 bytes
.../reference/horizontal-clip.traps.argb32.ref.png | Bin 113 -> 0 bytes
test/reference/horizontal-clip.traps.rgb24.ref.png | Bin 113 -> 0 bytes
test/reference/huge-linear.mask.argb32.ref.png | Bin 1600 -> 0 bytes
test/reference/huge-linear.mask.rgb24.ref.png | Bin 1600 -> 0 bytes
test/reference/huge-linear.traps.argb32.ref.png | Bin 1600 -> 0 bytes
test/reference/huge-linear.traps.rgb24.ref.png | Bin 1600 -> 0 bytes
test/reference/huge-radial.argb32.ref.png | Bin 41702 -> 0 bytes
test/reference/huge-radial.mask.argb32.ref.png | Bin 41702 -> 0 bytes
test/reference/huge-radial.mask.rgb24.ref.png | Bin 41702 -> 0 bytes
test/reference/huge-radial.rgb24.ref.png | Bin 41702 -> 0 bytes
test/reference/huge-radial.traps.argb32.ref.png | Bin 41702 -> 0 bytes
test/reference/huge-radial.traps.rgb24.ref.png | Bin 41702 -> 0 bytes
.../image-bug-710072-aligned.argb32.ref.png | Bin 151 -> 0 bytes
.../image-bug-710072-aligned.mask.argb32.ref.png | Bin 151 -> 0 bytes
.../image-bug-710072-aligned.mask.rgb24.ref.png | Bin 151 -> 0 bytes
.../image-bug-710072-aligned.rgb24.ref.png | Bin 151 -> 0 bytes
.../image-bug-710072-aligned.traps.argb32.ref.png | Bin 151 -> 0 bytes
.../image-bug-710072-aligned.traps.rgb24.ref.png | Bin 151 -> 0 bytes
...-bug-710072-aligned.xlib-fallback.rgb24.ref.png | Bin 151 -> 0 bytes
...ge-bug-710072-aligned.xlib-window.rgb24.ref.png | Bin 151 -> 0 bytes
.../image-bug-710072-unaligned.argb32.ref.png | Bin 212 -> 0 bytes
.../image-bug-710072-unaligned.mask.argb32.ref.png | Bin 212 -> 0 bytes
.../image-bug-710072-unaligned.mask.rgb24.ref.png | Bin 212 -> 0 bytes
.../image-bug-710072-unaligned.rgb24.ref.png | Bin 212 -> 0 bytes
.../image-surface-source.mask.argb32.ref.png | Bin 377 -> 0 bytes
.../image-surface-source.mask.rgb24.ref.png | Bin 301 -> 0 bytes
.../image-surface-source.traps.argb32.ref.png | Bin 377 -> 0 bytes
.../image-surface-source.traps.rgb24.ref.png | Bin 301 -> 0 bytes
...mage-surface-source.xlib-fallback.rgb24.ref.png | Bin 301 -> 0 bytes
.../image-surface-source.xlib-window.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/implicit-close.argb32.ref.png | Bin 251 -> 0 bytes
test/reference/implicit-close.mask.argb32.ref.png | Bin 251 -> 0 bytes
test/reference/implicit-close.mask.rgb24.ref.png | Bin 251 -> 0 bytes
test/reference/implicit-close.rgb24.ref.png | Bin 251 -> 0 bytes
test/reference/infinite-join.mask.argb32.ref.png | Bin 164 -> 0 bytes
test/reference/infinite-join.mask.rgb24.ref.png | Bin 164 -> 0 bytes
test/reference/inverse-text.traps.argb32.ref.png | Bin 2162 -> 0 bytes
test/reference/inverse-text.traps.rgb24.ref.png | Bin 2162 -> 0 bytes
test/reference/joins-loop.mask.argb32.ref.png | Bin 4492 -> 0 bytes
test/reference/joins-loop.mask.rgb24.ref.png | Bin 4492 -> 0 bytes
test/reference/joins-star.mask.argb32.ref.png | Bin 4914 -> 0 bytes
test/reference/joins-star.mask.rgb24.ref.png | Bin 4914 -> 0 bytes
test/reference/large-clip.argb32.ref.png | Bin 305 -> 0 bytes
test/reference/large-clip.mask.argb32.ref.png | Bin 305 -> 0 bytes
test/reference/large-clip.mask.rgb24.ref.png | Bin 305 -> 0 bytes
test/reference/large-clip.rgb24.ref.png | Bin 305 -> 0 bytes
test/reference/large-clip.traps.argb32.ref.png | Bin 305 -> 0 bytes
test/reference/large-clip.traps.rgb24.ref.png | Bin 305 -> 0 bytes
test/reference/large-font.argb32.ref.png | Bin 6117 -> 0 bytes
test/reference/large-font.mask.argb32.ref.png | Bin 6117 -> 0 bytes
test/reference/large-font.mask.rgb24.ref.png | Bin 6117 -> 0 bytes
test/reference/large-font.rgb24.ref.png | Bin 6117 -> 0 bytes
test/reference/large-font.traps.argb32.ref.png | Bin 6117 -> 0 bytes
test/reference/large-font.traps.rgb24.ref.png | Bin 6117 -> 0 bytes
test/reference/large-source-roi.argb32.ref.png | Bin 93 -> 0 bytes
.../reference/large-source-roi.mask.argb32.ref.png | Bin 93 -> 0 bytes
test/reference/large-source-roi.mask.rgb24.ref.png | Bin 93 -> 0 bytes
test/reference/large-source-roi.rgb24.ref.png | Bin 93 -> 0 bytes
.../large-source-roi.traps.argb32.ref.png | Bin 93 -> 0 bytes
.../reference/large-source-roi.traps.rgb24.ref.png | Bin 93 -> 0 bytes
test/reference/large-source.argb32.ref.png | Bin 112 -> 0 bytes
test/reference/large-source.mask.argb32.ref.png | Bin 112 -> 0 bytes
test/reference/large-source.mask.rgb24.ref.png | Bin 112 -> 0 bytes
test/reference/large-source.rgb24.ref.png | Bin 112 -> 0 bytes
test/reference/large-source.traps.argb32.ref.png | Bin 112 -> 0 bytes
test/reference/large-source.traps.rgb24.ref.png | Bin 112 -> 0 bytes
.../large-twin-antialias-mixed.mask.argb32.ref.png | Bin 16660 -> 0 bytes
.../large-twin-antialias-mixed.mask.rgb24.ref.png | Bin 16660 -> 0 bytes
test/reference/leaky-dash.argb32.ref.png | Bin 197 -> 0 bytes
test/reference/leaky-dash.mask.argb32.ref.png | Bin 197 -> 0 bytes
test/reference/leaky-dash.mask.rgb24.ref.png | Bin 197 -> 0 bytes
test/reference/leaky-dash.rgb24.ref.png | Bin 197 -> 0 bytes
test/reference/leaky-dash.traps.argb32.ref.png | Bin 197 -> 0 bytes
test/reference/leaky-dash.traps.rgb24.ref.png | Bin 197 -> 0 bytes
.../leaky-dashed-rectangle.argb32.ref.png | Bin 357 -> 0 bytes
.../leaky-dashed-rectangle.mask.argb32.ref.png | Bin 357 -> 0 bytes
.../leaky-dashed-rectangle.mask.rgb24.ref.png | Bin 357 -> 0 bytes
.../reference/leaky-dashed-rectangle.rgb24.ref.png | Bin 357 -> 0 bytes
.../leaky-dashed-stroke.mask.argb32.ref.png | Bin 9387 -> 0 bytes
.../leaky-dashed-stroke.mask.rgb24.ref.png | Bin 9387 -> 0 bytes
test/reference/leaky-polygon.mask.argb32.ref.png | Bin 337 -> 0 bytes
test/reference/leaky-polygon.mask.rgb24.ref.png | Bin 337 -> 0 bytes
...line-width-large-overlap-flipped.argb32.ref.png | Bin 305 -> 0 bytes
...width-large-overlap-flipped.mask.argb32.ref.png | Bin 305 -> 0 bytes
...-width-large-overlap-flipped.mask.rgb24.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap-flipped.rgb24.ref.png | Bin 305 -> 0 bytes
...idth-large-overlap-flipped.traps.argb32.ref.png | Bin 305 -> 0 bytes
...width-large-overlap-flipped.traps.rgb24.ref.png | Bin 305 -> 0 bytes
...line-width-large-overlap-flopped.argb32.ref.png | Bin 305 -> 0 bytes
...width-large-overlap-flopped.mask.argb32.ref.png | Bin 305 -> 0 bytes
...-width-large-overlap-flopped.mask.rgb24.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap-flopped.rgb24.ref.png | Bin 305 -> 0 bytes
...idth-large-overlap-flopped.traps.argb32.ref.png | Bin 305 -> 0 bytes
...width-large-overlap-flopped.traps.rgb24.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap-offset.argb32.ref.png | Bin 305 -> 0 bytes
...-width-large-overlap-offset.mask.argb32.ref.png | Bin 305 -> 0 bytes
...e-width-large-overlap-offset.mask.rgb24.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap-offset.rgb24.ref.png | Bin 305 -> 0 bytes
...width-large-overlap-offset.traps.argb32.ref.png | Bin 305 -> 0 bytes
...-width-large-overlap-offset.traps.rgb24.ref.png | Bin 305 -> 0 bytes
...width-large-overlap-rotated.mask.argb32.ref.png | Bin 427 -> 0 bytes
...-width-large-overlap-rotated.mask.rgb24.ref.png | Bin 427 -> 0 bytes
...idth-large-overlap-rotated.traps.argb32.ref.png | Bin 404 -> 0 bytes
...width-large-overlap-rotated.traps.rgb24.ref.png | Bin 404 -> 0 bytes
.../line-width-large-overlap.argb32.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap.mask.argb32.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap.mask.rgb24.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap.rgb24.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap.traps.argb32.ref.png | Bin 305 -> 0 bytes
.../line-width-large-overlap.traps.rgb24.ref.png | Bin 305 -> 0 bytes
.../line-width-overlap-flipped.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flipped.mask.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flipped.mask.rgb24.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flipped.rgb24.ref.png | Bin 324 -> 0 bytes
...line-width-overlap-flipped.traps.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flipped.traps.rgb24.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flopped.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flopped.mask.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flopped.mask.rgb24.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flopped.rgb24.ref.png | Bin 324 -> 0 bytes
...line-width-overlap-flopped.traps.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-flopped.traps.rgb24.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap-offset.argb32.ref.png | Bin 348 -> 0 bytes
.../line-width-overlap-offset.mask.argb32.ref.png | Bin 348 -> 0 bytes
.../line-width-overlap-offset.mask.rgb24.ref.png | Bin 348 -> 0 bytes
.../line-width-overlap-offset.rgb24.ref.png | Bin 348 -> 0 bytes
.../line-width-overlap-offset.traps.argb32.ref.png | Bin 365 -> 0 bytes
.../line-width-overlap-offset.traps.rgb24.ref.png | Bin 365 -> 0 bytes
.../line-width-overlap-rotated.mask.argb32.ref.png | Bin 828 -> 0 bytes
.../line-width-overlap-rotated.mask.rgb24.ref.png | Bin 828 -> 0 bytes
test/reference/line-width-overlap.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap.mask.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap.mask.rgb24.ref.png | Bin 324 -> 0 bytes
test/reference/line-width-overlap.rgb24.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap.traps.argb32.ref.png | Bin 324 -> 0 bytes
.../line-width-overlap.traps.rgb24.ref.png | Bin 324 -> 0 bytes
.../reference/line-width-scale.mask.argb32.ref.png | Bin 5721 -> 0 bytes
test/reference/line-width-scale.mask.rgb24.ref.png | Bin 5721 -> 0 bytes
.../line-width-tolerance.mask.argb32.ref.png | Bin 168 -> 0 bytes
.../line-width-tolerance.mask.rgb24.ref.png | Bin 168 -> 0 bytes
test/reference/line-width.mask.argb32.ref.png | Bin 178 -> 0 bytes
test/reference/line-width.mask.rgb24.ref.png | Bin 178 -> 0 bytes
.../linear-gradient-extend.argb32.ref.png | Bin 371 -> 0 bytes
.../linear-gradient-extend.mask.argb32.ref.png | Bin 371 -> 0 bytes
.../linear-gradient-extend.mask.rgb24.ref.png | Bin 371 -> 0 bytes
.../reference/linear-gradient-extend.rgb24.ref.png | Bin 371 -> 0 bytes
.../linear-gradient-extend.traps.argb32.ref.png | Bin 371 -> 0 bytes
.../linear-gradient-extend.traps.rgb24.ref.png | Bin 371 -> 0 bytes
.../reference/linear-gradient-large.argb32.ref.png | Bin 4076 -> 0 bytes
.../linear-gradient-large.mask.argb32.ref.png | Bin 4076 -> 0 bytes
.../linear-gradient-large.mask.rgb24.ref.png | Bin 4076 -> 0 bytes
test/reference/linear-gradient-large.rgb24.ref.png | Bin 4076 -> 0 bytes
.../linear-gradient-large.traps.argb32.ref.png | Bin 4076 -> 0 bytes
.../linear-gradient-large.traps.rgb24.ref.png | Bin 4076 -> 0 bytes
.../linear-gradient-one-stop.mask.argb32.ref.png | Bin 225 -> 0 bytes
.../linear-gradient-one-stop.mask.rgb24.ref.png | Bin 174 -> 0 bytes
.../linear-gradient-one-stop.traps.argb32.ref.png | Bin 225 -> 0 bytes
.../linear-gradient-one-stop.traps.rgb24.ref.png | Bin 174 -> 0 bytes
.../linear-gradient-reflect.mask.argb32.ref.png | Bin 185 -> 0 bytes
.../linear-gradient-reflect.mask.rgb24.ref.png | Bin 185 -> 0 bytes
.../linear-gradient-reflect.traps.argb32.ref.png | Bin 185 -> 0 bytes
.../linear-gradient-reflect.traps.rgb24.ref.png | Bin 185 -> 0 bytes
.../linear-gradient-subset.mask.argb32.ref.png | Bin 820 -> 0 bytes
.../linear-gradient-subset.mask.rgb24.ref.png | Bin 820 -> 0 bytes
test/reference/linear-gradient.mask.argb32.ref.png | Bin 974 -> 0 bytes
test/reference/linear-gradient.mask.rgb24.ref.png | Bin 974 -> 0 bytes
test/reference/linear-uniform.argb32.ref.png | Bin 128 -> 0 bytes
test/reference/linear-uniform.mask.argb32.ref.png | Bin 128 -> 0 bytes
test/reference/linear-uniform.mask.rgb24.ref.png | Bin 128 -> 0 bytes
test/reference/linear-uniform.rgb24.ref.png | Bin 128 -> 0 bytes
test/reference/linear-uniform.traps.argb32.ref.png | Bin 128 -> 0 bytes
test/reference/linear-uniform.traps.rgb24.ref.png | Bin 128 -> 0 bytes
.../long-dashed-lines.mask.argb32.ref.png | Bin 2548 -> 0 bytes
.../reference/long-dashed-lines.mask.rgb24.ref.png | Bin 2548 -> 0 bytes
test/reference/map-all-to-image.argb32.ref.png | Bin 86 -> 0 bytes
.../reference/map-all-to-image.mask.argb32.ref.png | Bin 86 -> 0 bytes
test/reference/map-all-to-image.mask.rgb24.ref.png | Bin 86 -> 0 bytes
test/reference/map-all-to-image.rgb24.ref.png | Bin 86 -> 0 bytes
.../map-all-to-image.traps.argb32.ref.png | Bin 86 -> 0 bytes
.../reference/map-all-to-image.traps.rgb24.ref.png | Bin 86 -> 0 bytes
test/reference/map-bit-to-image.argb32.ref.png | Bin 103 -> 0 bytes
.../reference/map-bit-to-image.mask.argb32.ref.png | Bin 103 -> 0 bytes
test/reference/map-bit-to-image.mask.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/map-bit-to-image.rgb24.ref.png | Bin 103 -> 0 bytes
.../map-bit-to-image.traps.argb32.ref.png | Bin 103 -> 0 bytes
.../reference/map-bit-to-image.traps.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/map-to-image-fill.argb32.ref.png | Bin 103 -> 0 bytes
.../map-to-image-fill.mask.argb32.ref.png | Bin 103 -> 0 bytes
.../reference/map-to-image-fill.mask.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/map-to-image-fill.rgb24.ref.png | Bin 103 -> 0 bytes
.../map-to-image-fill.traps.argb32.ref.png | Bin 103 -> 0 bytes
.../map-to-image-fill.traps.rgb24.ref.png | Bin 103 -> 0 bytes
.../map-to-image-fill.xlib-fallback.rgb24.ref.png | Bin 103 -> 0 bytes
.../map-to-image-fill.xlib-window.rgb24.ref.png | Bin 103 -> 0 bytes
test/reference/mask-alpha.mask.argb32.ref.png | Bin 632 -> 0 bytes
test/reference/mask-alpha.mask.rgb24.ref.png | Bin 589 -> 0 bytes
test/reference/mask-ctm.argb32.ref.png | Bin 110 -> 0 bytes
test/reference/mask-ctm.mask.argb32.ref.png | Bin 110 -> 0 bytes
test/reference/mask-ctm.mask.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/mask-ctm.traps.argb32.ref.png | Bin 110 -> 0 bytes
test/reference/mask-ctm.traps.rgb24.ref.png | Bin 105 -> 0 bytes
test/reference/mask-surface-ctm.argb32.ref.png | Bin 110 -> 0 bytes
.../reference/mask-surface-ctm.mask.argb32.ref.png | Bin 110 -> 0 bytes
test/reference/mask-surface-ctm.mask.rgb24.ref.png | Bin 105 -> 0 bytes
.../mask-surface-ctm.traps.argb32.ref.png | Bin 110 -> 0 bytes
.../reference/mask-surface-ctm.traps.rgb24.ref.png | Bin 105 -> 0 bytes
.../mask-transformed-image.mask.argb32.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-image.mask.rgb24.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-image.traps.argb32.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-image.traps.rgb24.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-similar.mask.argb32.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-similar.mask.rgb24.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-similar.traps.argb32.ref.png | Bin 3812 -> 0 bytes
.../mask-transformed-similar.traps.rgb24.ref.png | Bin 3812 -> 0 bytes
test/reference/mask.mask.argb32.ref.png | Bin 8565 -> 0 bytes
test/reference/mask.mask.rgb24.ref.png | Bin 7135 -> 0 bytes
.../reference/mesh-pattern-accuracy.argb32.ref.png | Bin 8086 -> 0 bytes
.../mesh-pattern-accuracy.mask.argb32.ref.png | Bin 8086 -> 0 bytes
.../mesh-pattern-accuracy.mask.rgb24.ref.png | Bin 8086 -> 0 bytes
test/reference/mesh-pattern-accuracy.rgb24.ref.png | Bin 8086 -> 0 bytes
.../mesh-pattern-accuracy.traps.argb32.ref.png | Bin 8086 -> 0 bytes
.../mesh-pattern-accuracy.traps.rgb24.ref.png | Bin 8086 -> 0 bytes
test/reference/mesh-pattern-conical.argb32.ref.png | Bin 8655 -> 0 bytes
.../mesh-pattern-conical.mask.argb32.ref.png | Bin 8655 -> 0 bytes
.../mesh-pattern-conical.mask.rgb24.ref.png | Bin 8655 -> 0 bytes
test/reference/mesh-pattern-conical.rgb24.ref.png | Bin 8655 -> 0 bytes
.../mesh-pattern-conical.traps.argb32.ref.png | Bin 8655 -> 0 bytes
.../mesh-pattern-conical.traps.rgb24.ref.png | Bin 8655 -> 0 bytes
.../mesh-pattern-control-points.argb32.ref.png | Bin 10665 -> 0 bytes
...mesh-pattern-control-points.mask.argb32.ref.png | Bin 10665 -> 0 bytes
.../mesh-pattern-control-points.mask.rgb24.ref.png | Bin 10665 -> 0 bytes
.../mesh-pattern-control-points.rgb24.ref.png | Bin 10665 -> 0 bytes
...esh-pattern-control-points.traps.argb32.ref.png | Bin 10665 -> 0 bytes
...mesh-pattern-control-points.traps.rgb24.ref.png | Bin 10665 -> 0 bytes
test/reference/mesh-pattern-fold.argb32.ref.png | Bin 52980 -> 0 bytes
.../mesh-pattern-fold.mask.argb32.ref.png | Bin 52980 -> 0 bytes
.../reference/mesh-pattern-fold.mask.rgb24.ref.png | Bin 52980 -> 0 bytes
test/reference/mesh-pattern-fold.rgb24.ref.png | Bin 52980 -> 0 bytes
.../mesh-pattern-fold.traps.argb32.ref.png | Bin 52980 -> 0 bytes
.../mesh-pattern-fold.traps.rgb24.ref.png | Bin 52980 -> 0 bytes
test/reference/mesh-pattern-overlap.argb32.ref.png | Bin 9129 -> 0 bytes
.../mesh-pattern-overlap.mask.argb32.ref.png | Bin 9129 -> 0 bytes
.../mesh-pattern-overlap.mask.rgb24.ref.png | Bin 9129 -> 0 bytes
test/reference/mesh-pattern-overlap.rgb24.ref.png | Bin 9129 -> 0 bytes
.../mesh-pattern-overlap.traps.argb32.ref.png | Bin 9129 -> 0 bytes
.../mesh-pattern-overlap.traps.rgb24.ref.png | Bin 9129 -> 0 bytes
.../mesh-pattern-transformed.argb32.ref.png | Bin 14463 -> 0 bytes
.../mesh-pattern-transformed.mask.argb32.ref.png | Bin 14463 -> 0 bytes
.../mesh-pattern-transformed.mask.rgb24.ref.png | Bin 14463 -> 0 bytes
.../mesh-pattern-transformed.rgb24.ref.png | Bin 14463 -> 0 bytes
.../mesh-pattern-transformed.traps.argb32.ref.png | Bin 14463 -> 0 bytes
.../mesh-pattern-transformed.traps.rgb24.ref.png | Bin 14463 -> 0 bytes
test/reference/mesh-pattern.argb32.ref.png | Bin 19566 -> 0 bytes
test/reference/mesh-pattern.mask.argb32.ref.png | Bin 19566 -> 0 bytes
test/reference/mesh-pattern.mask.rgb24.ref.png | Bin 19566 -> 0 bytes
test/reference/mesh-pattern.rgb24.ref.png | Bin 19566 -> 0 bytes
test/reference/mesh-pattern.traps.argb32.ref.png | Bin 19566 -> 0 bytes
test/reference/mesh-pattern.traps.rgb24.ref.png | Bin 19566 -> 0 bytes
test/reference/mime-data.argb32.ref.png | Bin 185 -> 0 bytes
test/reference/mime-data.mask.argb32.ref.png | Bin 185 -> 0 bytes
test/reference/mime-data.mask.rgb24.ref.png | Bin 185 -> 0 bytes
test/reference/mime-data.rgb24.ref.png | Bin 185 -> 0 bytes
test/reference/mime-data.traps.argb32.ref.png | Bin 185 -> 0 bytes
test/reference/mime-data.traps.rgb24.ref.png | Bin 185 -> 0 bytes
test/reference/miter-precision.mask.argb32.ref.png | Bin 1030 -> 0 bytes
test/reference/miter-precision.mask.rgb24.ref.png | Bin 1030 -> 0 bytes
test/reference/move-to-show-surface.argb32.ref.png | Bin 96 -> 0 bytes
.../move-to-show-surface.mask.argb32.ref.png | Bin 96 -> 0 bytes
.../move-to-show-surface.mask.rgb24.ref.png | Bin 96 -> 0 bytes
test/reference/move-to-show-surface.rgb24.ref.png | Bin 96 -> 0 bytes
.../move-to-show-surface.traps.argb32.ref.png | Bin 96 -> 0 bytes
.../move-to-show-surface.traps.rgb24.ref.png | Bin 96 -> 0 bytes
.../reference/negative-stride-image.argb32.ref.png | Bin 81121 -> 0 bytes
.../negative-stride-image.mask.argb32.ref.png | Bin 81121 -> 0 bytes
.../negative-stride-image.mask.rgb24.ref.png | Bin 81121 -> 0 bytes
test/reference/negative-stride-image.rgb24.ref.png | Bin 81121 -> 0 bytes
.../negative-stride-image.traps.argb32.ref.png | Bin 81121 -> 0 bytes
.../negative-stride-image.traps.rgb24.ref.png | Bin 81121 -> 0 bytes
test/reference/new-sub-path.mask.argb32.ref.png | Bin 408 -> 0 bytes
test/reference/new-sub-path.mask.rgb24.ref.png | Bin 371 -> 0 bytes
test/reference/nil-surface.argb32.ref.png | Bin 88 -> 0 bytes
test/reference/nil-surface.mask.argb32.ref.png | Bin 88 -> 0 bytes
test/reference/nil-surface.mask.rgb24.ref.png | Bin 87 -> 0 bytes
test/reference/nil-surface.traps.argb32.ref.png | Bin 88 -> 0 bytes
test/reference/nil-surface.traps.rgb24.ref.png | Bin 87 -> 0 bytes
test/reference/operator-alpha-alpha.argb32.ref.png | Bin 3441 -> 0 bytes
.../operator-alpha-alpha.mask.argb32.ref.png | Bin 3441 -> 0 bytes
.../operator-alpha-alpha.mask.rgb24.ref.png | Bin 3441 -> 0 bytes
test/reference/operator-alpha-alpha.rgb24.ref.png | Bin 3441 -> 0 bytes
test/reference/operator-alpha.argb32.ref.png | Bin 280 -> 0 bytes
test/reference/operator-alpha.mask.argb32.ref.png | Bin 280 -> 0 bytes
test/reference/operator-alpha.mask.rgb24.ref.png | Bin 205 -> 0 bytes
test/reference/operator-alpha.traps.argb32.ref.png | Bin 280 -> 0 bytes
test/reference/operator-alpha.traps.rgb24.ref.png | Bin 205 -> 0 bytes
test/reference/operator-clear.mask.argb32.ref.png | Bin 1071 -> 0 bytes
test/reference/operator.argb32.ref.png | Bin 238 -> 0 bytes
test/reference/operator.mask.argb32.ref.png | Bin 238 -> 0 bytes
test/reference/operator.mask.rgb24.ref.png | Bin 189 -> 0 bytes
test/reference/operator.traps.argb32.ref.png | Bin 238 -> 0 bytes
test/reference/operator.traps.rgb24.ref.png | Bin 189 -> 0 bytes
.../over-above-source.mask.argb32.ref.png | Bin 564 -> 0 bytes
.../reference/over-above-source.mask.rgb24.ref.png | Bin 465 -> 0 bytes
.../over-around-source.mask.argb32.ref.png | Bin 633 -> 0 bytes
.../over-around-source.mask.rgb24.ref.png | Bin 499 -> 0 bytes
.../over-below-source.mask.argb32.ref.png | Bin 447 -> 0 bytes
.../reference/over-below-source.mask.rgb24.ref.png | Bin 385 -> 0 bytes
.../over-between-source.mask.argb32.ref.png | Bin 596 -> 0 bytes
.../over-between-source.mask.rgb24.ref.png | Bin 463 -> 0 bytes
.../overlapping-boxes.mask.argb32.ref.png | Bin 179 -> 0 bytes
.../reference/overlapping-boxes.mask.rgb24.ref.png | Bin 170 -> 0 bytes
.../overlapping-glyphs.mask.argb32.ref.png | Bin 2717 -> 0 bytes
.../overlapping-glyphs.mask.rgb24.ref.png | Bin 1663 -> 0 bytes
test/reference/paint-clip-fill-aa.argb32.ref.png | Bin 327 -> 0 bytes
.../paint-clip-fill-aa.mask.argb32.ref.png | Bin 327 -> 0 bytes
.../paint-clip-fill-aa.mask.rgb24.ref.png | Bin 327 -> 0 bytes
test/reference/paint-clip-fill-aa.rgb24.ref.png | Bin 327 -> 0 bytes
.../paint-clip-fill-aa.traps.argb32.ref.png | Bin 327 -> 0 bytes
.../paint-clip-fill-aa.traps.rgb24.ref.png | Bin 327 -> 0 bytes
test/reference/paint-clip-fill-mono.argb32.ref.png | Bin 327 -> 0 bytes
.../paint-clip-fill-mono.mask.argb32.ref.png | Bin 327 -> 0 bytes
.../paint-clip-fill-mono.mask.rgb24.ref.png | Bin 327 -> 0 bytes
test/reference/paint-clip-fill-mono.rgb24.ref.png | Bin 327 -> 0 bytes
.../paint-clip-fill-mono.traps.argb32.ref.png | Bin 327 -> 0 bytes
.../paint-clip-fill-mono.traps.rgb24.ref.png | Bin 327 -> 0 bytes
test/reference/paint-repeat.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/paint-repeat.mask.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/paint-repeat.mask.rgb24.ref.png | Bin 122 -> 0 bytes
test/reference/paint-repeat.rgb24.ref.png | Bin 122 -> 0 bytes
test/reference/paint-repeat.traps.argb32.ref.png | Bin 122 -> 0 bytes
test/reference/paint-repeat.traps.rgb24.ref.png | Bin 122 -> 0 bytes
test/reference/paint-source-alpha.argb32.ref.png | Bin 224 -> 0 bytes
.../paint-source-alpha.mask.argb32.ref.png | Bin 224 -> 0 bytes
.../paint-source-alpha.mask.rgb24.ref.png | Bin 224 -> 0 bytes
test/reference/paint-source-alpha.rgb24.ref.png | Bin 224 -> 0 bytes
.../paint-source-alpha.traps.argb32.ref.png | Bin 224 -> 0 bytes
.../paint-source-alpha.traps.rgb24.ref.png | Bin 224 -> 0 bytes
.../reference/paint-with-alpha-clip.argb32.ref.png | Bin 290 -> 0 bytes
test/reference/paint-with-alpha-clip.rgb24.ref.png | Bin 290 -> 0 bytes
.../paint-with-alpha-solid-clip.argb32.ref.png | Bin 248 -> 0 bytes
.../paint-with-alpha-solid-clip.rgb24.ref.png | Bin 248 -> 0 bytes
test/reference/paint-with-alpha.argb32.ref.png | Bin 224 -> 0 bytes
.../reference/paint-with-alpha.mask.argb32.ref.png | Bin 224 -> 0 bytes
test/reference/paint-with-alpha.mask.rgb24.ref.png | Bin 224 -> 0 bytes
test/reference/paint-with-alpha.rgb24.ref.png | Bin 224 -> 0 bytes
.../paint-with-alpha.traps.argb32.ref.png | Bin 224 -> 0 bytes
.../reference/paint-with-alpha.traps.rgb24.ref.png | Bin 224 -> 0 bytes
test/reference/paint.argb32.ref.png | Bin 93 -> 0 bytes
test/reference/paint.mask.argb32.ref.png | Bin 93 -> 0 bytes
test/reference/paint.mask.rgb24.ref.png | Bin 93 -> 0 bytes
test/reference/paint.rgb24.ref.png | Bin 93 -> 0 bytes
test/reference/paint.traps.argb32.ref.png | Bin 93 -> 0 bytes
test/reference/paint.traps.rgb24.ref.png | Bin 93 -> 0 bytes
.../partial-clip-text-bottom.mask.argb32.ref.png | Bin 261 -> 0 bytes
.../partial-clip-text-bottom.mask.rgb24.ref.png | Bin 261 -> 0 bytes
.../partial-clip-text-bottom.traps.argb32.ref.png | Bin 261 -> 0 bytes
.../partial-clip-text-bottom.traps.rgb24.ref.png | Bin 261 -> 0 bytes
.../partial-clip-text-left.mask.argb32.ref.png | Bin 301 -> 0 bytes
.../partial-clip-text-left.mask.rgb24.ref.png | Bin 301 -> 0 bytes
.../partial-clip-text-left.traps.argb32.ref.png | Bin 301 -> 0 bytes
.../partial-clip-text-left.traps.rgb24.ref.png | Bin 301 -> 0 bytes
.../partial-clip-text-right.mask.argb32.ref.png | Bin 155 -> 0 bytes
.../partial-clip-text-right.mask.rgb24.ref.png | Bin 155 -> 0 bytes
.../partial-clip-text-right.traps.argb32.ref.png | Bin 155 -> 0 bytes
.../partial-clip-text-right.traps.rgb24.ref.png | Bin 155 -> 0 bytes
.../partial-clip-text-top.mask.argb32.ref.png | Bin 181 -> 0 bytes
.../partial-clip-text-top.mask.rgb24.ref.png | Bin 181 -> 0 bytes
.../partial-clip-text-top.traps.argb32.ref.png | Bin 181 -> 0 bytes
.../partial-clip-text-top.traps.rgb24.ref.png | Bin 181 -> 0 bytes
.../partial-coverage-half-reference.argb32.ref.png | Bin 189 -> 0 bytes
...ial-coverage-half-reference.mask.argb32.ref.png | Bin 189 -> 0 bytes
...tial-coverage-half-reference.mask.rgb24.ref.png | Bin 189 -> 0 bytes
.../partial-coverage-half-reference.rgb24.ref.png | Bin 189 -> 0 bytes
...al-coverage-half-reference.traps.argb32.ref.png | Bin 189 -> 0 bytes
...ial-coverage-half-reference.traps.rgb24.ref.png | Bin 189 -> 0 bytes
.../partial-coverage-reference.argb32.ref.png | Bin 202 -> 0 bytes
.../partial-coverage-reference.mask.argb32.ref.png | Bin 202 -> 0 bytes
.../partial-coverage-reference.mask.rgb24.ref.png | Bin 202 -> 0 bytes
.../partial-coverage-reference.rgb24.ref.png | Bin 202 -> 0 bytes
...partial-coverage-reference.traps.argb32.ref.png | Bin 202 -> 0 bytes
.../partial-coverage-reference.traps.rgb24.ref.png | Bin 202 -> 0 bytes
...coverage-three-quarter-reference.argb32.ref.png | Bin 186 -> 0 bytes
...age-three-quarter-reference.mask.argb32.ref.png | Bin 186 -> 0 bytes
...rage-three-quarter-reference.mask.rgb24.ref.png | Bin 186 -> 0 bytes
...-coverage-three-quarter-reference.rgb24.ref.png | Bin 186 -> 0 bytes
...ge-three-quarter-reference.traps.argb32.ref.png | Bin 186 -> 0 bytes
...age-three-quarter-reference.traps.rgb24.ref.png | Bin 186 -> 0 bytes
test/reference/pass-through.argb32.ref.png | Bin 221 -> 0 bytes
test/reference/pass-through.mask.argb32.ref.png | Bin 221 -> 0 bytes
test/reference/pass-through.mask.rgb24.ref.png | Bin 158 -> 0 bytes
test/reference/pass-through.traps.argb32.ref.png | Bin 221 -> 0 bytes
test/reference/pass-through.traps.rgb24.ref.png | Bin 158 -> 0 bytes
test/reference/path-append.mask.argb32.ref.png | Bin 6144 -> 0 bytes
test/reference/path-append.mask.rgb24.ref.png | Bin 6144 -> 0 bytes
.../path-stroke-twice.mask.argb32.ref.png | Bin 240 -> 0 bytes
.../reference/path-stroke-twice.mask.rgb24.ref.png | Bin 240 -> 0 bytes
test/reference/pattern-getters.argb32.ref.png | Bin 87 -> 0 bytes
test/reference/pattern-getters.mask.argb32.ref.png | Bin 87 -> 0 bytes
test/reference/pattern-getters.mask.rgb24.ref.png | Bin 87 -> 0 bytes
test/reference/pattern-getters.rgb24.ref.png | Bin 87 -> 0 bytes
.../reference/pattern-getters.traps.argb32.ref.png | Bin 87 -> 0 bytes
test/reference/pattern-getters.traps.rgb24.ref.png | Bin 87 -> 0 bytes
.../pdf-surface-source.mask.argb32.ref.png | Bin 377 -> 0 bytes
.../pdf-surface-source.mask.rgb24.ref.png | Bin 301 -> 0 bytes
.../pdf-surface-source.traps.argb32.ref.png | Bin 377 -> 0 bytes
.../pdf-surface-source.traps.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/pixman-rotate.argb32.ref.png | Bin 260 -> 0 bytes
test/reference/pixman-rotate.mask.argb32.ref.png | Bin 260 -> 0 bytes
test/reference/pixman-rotate.mask.rgb24.ref.png | Bin 225 -> 0 bytes
test/reference/pixman-rotate.traps.argb32.ref.png | Bin 260 -> 0 bytes
test/reference/pixman-rotate.traps.rgb24.ref.png | Bin 225 -> 0 bytes
.../ps-surface-source.mask.argb32.ref.png | Bin 377 -> 0 bytes
.../reference/ps-surface-source.mask.rgb24.ref.png | Bin 301 -> 0 bytes
.../ps-surface-source.traps.argb32.ref.png | Bin 377 -> 0 bytes
.../ps-surface-source.traps.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/pthread-same-source.argb32.ref.png | Bin 1000 -> 0 bytes
.../pthread-same-source.mask.argb32.ref.png | Bin 1000 -> 0 bytes
.../pthread-same-source.mask.rgb24.ref.png | Bin 1000 -> 0 bytes
test/reference/pthread-same-source.rgb24.ref.png | Bin 1000 -> 0 bytes
.../pthread-same-source.traps.argb32.ref.png | Bin 1000 -> 0 bytes
.../pthread-same-source.traps.rgb24.ref.png | Bin 1000 -> 0 bytes
.../pthread-show-text.mask.argb32.ref.png | Bin 30199 -> 0 bytes
.../reference/pthread-show-text.mask.rgb24.ref.png | Bin 30199 -> 0 bytes
.../pthread-show-text.traps.argb32.ref.png | Bin 30199 -> 0 bytes
.../pthread-show-text.traps.rgb24.ref.png | Bin 30199 -> 0 bytes
test/reference/pthread-similar.argb32.ref.png | Bin 170 -> 0 bytes
test/reference/pthread-similar.mask.argb32.ref.png | Bin 170 -> 0 bytes
test/reference/pthread-similar.mask.rgb24.ref.png | Bin 170 -> 0 bytes
test/reference/pthread-similar.rgb24.ref.png | Bin 170 -> 0 bytes
.../reference/pthread-similar.traps.argb32.ref.png | Bin 170 -> 0 bytes
test/reference/pthread-similar.traps.rgb24.ref.png | Bin 170 -> 0 bytes
.../reference/push-group-color.mask.argb32.ref.png | Bin 2892 -> 0 bytes
test/reference/push-group-color.mask.rgb24.ref.png | Bin 2892 -> 0 bytes
.../push-group-path-offset.argb32.ref.png | Bin 186 -> 0 bytes
.../push-group-path-offset.mask.argb32.ref.png | Bin 186 -> 0 bytes
.../push-group-path-offset.mask.rgb24.ref.png | Bin 186 -> 0 bytes
.../reference/push-group-path-offset.rgb24.ref.png | Bin 186 -> 0 bytes
.../push-group-path-offset.traps.argb32.ref.png | Bin 186 -> 0 bytes
.../push-group-path-offset.traps.rgb24.ref.png | Bin 186 -> 0 bytes
test/reference/push-group.mask.argb32.ref.png | Bin 3062 -> 0 bytes
test/reference/push-group.mask.rgb24.ref.png | Bin 2899 -> 0 bytes
...radial-gradient-mask-source.mask.argb32.ref.png | Bin 145713 -> 0 bytes
...adial-gradient-mask-source.traps.argb32.ref.png | Bin 145713 -> 0 bytes
test/reference/radial-gradient-mask.argb32.ref.png | Bin 286065 -> 0 bytes
.../radial-gradient-mask.mask.argb32.ref.png | Bin 286065 -> 0 bytes
.../radial-gradient-mask.mask.rgb24.ref.png | Bin 286065 -> 0 bytes
test/reference/radial-gradient-mask.rgb24.ref.png | Bin 286065 -> 0 bytes
.../radial-gradient-mask.traps.argb32.ref.png | Bin 286065 -> 0 bytes
.../radial-gradient-mask.traps.rgb24.ref.png | Bin 286065 -> 0 bytes
.../radial-gradient-one-stop.argb32.ref.png | Bin 6306 -> 0 bytes
.../radial-gradient-one-stop.mask.argb32.ref.png | Bin 6306 -> 0 bytes
.../radial-gradient-one-stop.mask.rgb24.ref.png | Bin 6306 -> 0 bytes
.../radial-gradient-one-stop.rgb24.ref.png | Bin 6306 -> 0 bytes
.../radial-gradient-one-stop.traps.argb32.ref.png | Bin 6306 -> 0 bytes
.../radial-gradient-one-stop.traps.rgb24.ref.png | Bin 6306 -> 0 bytes
.../radial-gradient-source.mask.argb32.ref.png | Bin 408848 -> 0 bytes
.../radial-gradient-source.mask.rgb24.ref.png | Bin 263908 -> 0 bytes
.../radial-gradient-source.traps.argb32.ref.png | Bin 408848 -> 0 bytes
.../radial-gradient-source.traps.rgb24.ref.png | Bin 263908 -> 0 bytes
test/reference/radial-gradient.argb32.ref.png | Bin 382283 -> 0 bytes
test/reference/radial-gradient.mask.argb32.ref.png | Bin 382283 -> 0 bytes
test/reference/radial-gradient.mask.rgb24.ref.png | Bin 382283 -> 0 bytes
test/reference/radial-gradient.rgb24.ref.png | Bin 382283 -> 0 bytes
.../reference/radial-gradient.traps.argb32.ref.png | Bin 382283 -> 0 bytes
test/reference/radial-gradient.traps.rgb24.ref.png | Bin 382283 -> 0 bytes
...dom-intersections-curves-eo.mask.argb32.ref.png | Bin 245848 -> 0 bytes
...ndom-intersections-curves-eo.mask.rgb24.ref.png | Bin 245848 -> 0 bytes
...dom-intersections-curves-nz.mask.argb32.ref.png | Bin 265249 -> 0 bytes
...ndom-intersections-curves-nz.mask.rgb24.ref.png | Bin 265249 -> 0 bytes
.../random-intersections-eo.mask.argb32.ref.png | Bin 136632 -> 0 bytes
.../random-intersections-eo.mask.rgb24.ref.png | Bin 136632 -> 0 bytes
...andom-intersections-nonzero.mask.argb32.ref.png | Bin 142139 -> 0 bytes
...random-intersections-nonzero.mask.rgb24.ref.png | Bin 142139 -> 0 bytes
test/reference/raster-source.argb32.ref.png | Bin 1209 -> 0 bytes
test/reference/raster-source.mask.argb32.ref.png | Bin 1209 -> 0 bytes
test/reference/raster-source.mask.rgb24.ref.png | Bin 1209 -> 0 bytes
test/reference/raster-source.rgb24.ref.png | Bin 1209 -> 0 bytes
test/reference/raster-source.traps.argb32.ref.png | Bin 1209 -> 0 bytes
test/reference/raster-source.traps.rgb24.ref.png | Bin 1209 -> 0 bytes
.../record-extend-none-similar.argb32.ref.png | Bin 293 -> 0 bytes
...ecord-extend-none-similar.image16.rgb24.ref.png | Bin 293 -> 0 bytes
.../record-extend-none-similar.rgb24.ref.png | Bin 293 -> 0 bytes
test/reference/record-extend-none.argb32.ref.png | Bin 293 -> 0 bytes
.../record-extend-none.image16.rgb24.ref.png | Bin 293 -> 0 bytes
test/reference/record-extend-none.rgb24.ref.png | Bin 293 -> 0 bytes
.../record-extend-none.traps.argb32.ref.png | Bin 293 -> 0 bytes
.../record-extend-none.traps.rgb24.ref.png | Bin 293 -> 0 bytes
.../record-extend-pad-similar.argb32.ref.png | Bin 298 -> 0 bytes
...record-extend-pad-similar.image16.rgb24.ref.png | Bin 298 -> 0 bytes
.../record-extend-pad-similar.rgb24.ref.png | Bin 298 -> 0 bytes
test/reference/record-extend-pad.argb32.ref.png | Bin 298 -> 0 bytes
.../record-extend-pad.image16.rgb24.ref.png | Bin 298 -> 0 bytes
test/reference/record-extend-pad.rgb24.ref.png | Bin 298 -> 0 bytes
.../record-extend-pad.traps.argb32.ref.png | Bin 298 -> 0 bytes
.../record-extend-pad.traps.rgb24.ref.png | Bin 298 -> 0 bytes
.../record-extend-reflect-similar.argb32.ref.png | Bin 335 -> 0 bytes
...rd-extend-reflect-similar.image16.rgb24.ref.png | Bin 335 -> 0 bytes
.../record-extend-reflect-similar.rgb24.ref.png | Bin 335 -> 0 bytes
.../reference/record-extend-reflect.argb32.ref.png | Bin 335 -> 0 bytes
.../record-extend-reflect.image16.rgb24.ref.png | Bin 335 -> 0 bytes
test/reference/record-extend-reflect.rgb24.ref.png | Bin 335 -> 0 bytes
.../record-extend-reflect.traps.argb32.ref.png | Bin 335 -> 0 bytes
.../record-extend-reflect.traps.rgb24.ref.png | Bin 335 -> 0 bytes
.../record-extend-repeat-similar.argb32.ref.png | Bin 286 -> 0 bytes
...ord-extend-repeat-similar.image16.rgb24.ref.png | Bin 286 -> 0 bytes
.../record-extend-repeat-similar.rgb24.ref.png | Bin 286 -> 0 bytes
test/reference/record-extend-repeat.argb32.ref.png | Bin 286 -> 0 bytes
.../record-extend-repeat.image16.rgb24.ref.png | Bin 286 -> 0 bytes
test/reference/record-extend-repeat.rgb24.ref.png | Bin 286 -> 0 bytes
.../record-extend-repeat.traps.argb32.ref.png | Bin 286 -> 0 bytes
.../record-extend-repeat.traps.rgb24.ref.png | Bin 286 -> 0 bytes
test/reference/record-mesh.argb32.ref.png | Bin 15229 -> 0 bytes
test/reference/record-mesh.rgb24.ref.png | Bin 15229 -> 0 bytes
test/reference/record-mesh.traps.argb32.ref.png | Bin 15229 -> 0 bytes
test/reference/record-mesh.traps.rgb24.ref.png | Bin 15229 -> 0 bytes
.../record-paint-alpha-solid-clip.argb32.ref.png | Bin 248 -> 0 bytes
.../record-paint-alpha-solid-clip.rgb24.ref.png | Bin 248 -> 0 bytes
test/reference/record-paint-alpha.argb32.ref.png | Bin 224 -> 0 bytes
test/reference/record-paint-alpha.rgb24.ref.png | Bin 224 -> 0 bytes
.../record-paint-alpha.traps.argb32.ref.png | Bin 224 -> 0 bytes
.../record-paint-alpha.traps.rgb24.ref.png | Bin 224 -> 0 bytes
test/reference/record-paint.argb32.ref.png | Bin 93 -> 0 bytes
test/reference/record-paint.image16.rgb24.ref.png | Bin 93 -> 0 bytes
test/reference/record-paint.rgb24.ref.png | Bin 93 -> 0 bytes
test/reference/record-paint.traps.argb32.ref.png | Bin 93 -> 0 bytes
test/reference/record-paint.traps.rgb24.ref.png | Bin 93 -> 0 bytes
.../record-self-intersecting.argb32.ref.png | Bin 168 -> 0 bytes
.../record-self-intersecting.rgb24.ref.png | Bin 168 -> 0 bytes
.../rectangle-rounding-error.argb32.ref.png | Bin 212 -> 0 bytes
.../rectangle-rounding-error.mask.argb32.ref.png | Bin 212 -> 0 bytes
.../rectangle-rounding-error.mask.rgb24.ref.png | Bin 212 -> 0 bytes
.../rectangle-rounding-error.rgb24.ref.png | Bin 212 -> 0 bytes
.../rectangle-rounding-error.traps.argb32.ref.png | Bin 212 -> 0 bytes
.../rectangle-rounding-error.traps.rgb24.ref.png | Bin 212 -> 0 bytes
test/reference/rectilinear-fill.argb32.ref.png | Bin 151 -> 0 bytes
.../reference/rectilinear-fill.mask.argb32.ref.png | Bin 151 -> 0 bytes
test/reference/rectilinear-fill.mask.rgb24.ref.png | Bin 151 -> 0 bytes
test/reference/rectilinear-fill.rgb24.ref.png | Bin 151 -> 0 bytes
.../rectilinear-fill.traps.argb32.ref.png | Bin 151 -> 0 bytes
.../reference/rectilinear-fill.traps.rgb24.ref.png | Bin 151 -> 0 bytes
test/reference/rectilinear-grid.argb32.ref.png | Bin 569 -> 0 bytes
.../reference/rectilinear-grid.mask.argb32.ref.png | Bin 569 -> 0 bytes
test/reference/rectilinear-grid.mask.rgb24.ref.png | Bin 569 -> 0 bytes
test/reference/rectilinear-grid.rgb24.ref.png | Bin 569 -> 0 bytes
.../rectilinear-miter-limit.mask.argb32.ref.png | Bin 145 -> 0 bytes
.../rectilinear-miter-limit.mask.rgb24.ref.png | Bin 145 -> 0 bytes
test/reference/rectilinear-stroke.argb32.ref.png | Bin 172 -> 0 bytes
.../rectilinear-stroke.mask.argb32.ref.png | Bin 172 -> 0 bytes
.../rectilinear-stroke.mask.rgb24.ref.png | Bin 172 -> 0 bytes
test/reference/rectilinear-stroke.rgb24.ref.png | Bin 172 -> 0 bytes
.../rectilinear-stroke.traps.argb32.ref.png | Bin 172 -> 0 bytes
.../rectilinear-stroke.traps.rgb24.ref.png | Bin 172 -> 0 bytes
test/reference/rel-path.mask.argb32.ref.png | Bin 197 -> 0 bytes
test/reference/rgb24-ignore-alpha.argb32.ref.png | Bin 97 -> 0 bytes
.../rgb24-ignore-alpha.mask.argb32.ref.png | Bin 97 -> 0 bytes
.../rgb24-ignore-alpha.mask.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/rgb24-ignore-alpha.rgb24.ref.png | Bin 97 -> 0 bytes
.../rgb24-ignore-alpha.traps.argb32.ref.png | Bin 97 -> 0 bytes
.../rgb24-ignore-alpha.traps.rgb24.ref.png | Bin 97 -> 0 bytes
...te-clip-image-surface-paint.mask.argb32.ref.png | Bin 331 -> 0 bytes
...ate-clip-image-surface-paint.mask.rgb24.ref.png | Bin 331 -> 0 bytes
.../rotate-image-surface-paint.argb32.ref.png | Bin 220 -> 0 bytes
.../rotate-image-surface-paint.mask.argb32.ref.png | Bin 220 -> 0 bytes
.../rotate-image-surface-paint.mask.rgb24.ref.png | Bin 220 -> 0 bytes
.../rotate-image-surface-paint.rgb24.ref.png | Bin 220 -> 0 bytes
...rotate-image-surface-paint.traps.argb32.ref.png | Bin 220 -> 0 bytes
.../rotate-image-surface-paint.traps.rgb24.ref.png | Bin 220 -> 0 bytes
...image-surface-paint.xlib-fallback.rgb24.ref.png | Bin 220 -> 0 bytes
...e-image-surface-paint.xlib-window.rgb24.ref.png | Bin 220 -> 0 bytes
.../rounded-rectangle-fill.mask.argb32.ref.png | Bin 787 -> 0 bytes
.../rounded-rectangle-fill.mask.rgb24.ref.png | Bin 787 -> 0 bytes
.../scale-down-source-surface-paint.argb32.ref.png | Bin 96 -> 0 bytes
...e-down-source-surface-paint.mask.argb32.ref.png | Bin 96 -> 0 bytes
...le-down-source-surface-paint.mask.rgb24.ref.png | Bin 96 -> 0 bytes
.../scale-down-source-surface-paint.rgb24.ref.png | Bin 96 -> 0 bytes
...-down-source-surface-paint.traps.argb32.ref.png | Bin 96 -> 0 bytes
...e-down-source-surface-paint.traps.rgb24.ref.png | Bin 96 -> 0 bytes
.../scale-offset-image.mask.argb32.ref.png | Bin 9748 -> 0 bytes
.../scale-offset-image.mask.rgb24.ref.png | Bin 9748 -> 0 bytes
.../scale-offset-similar.mask.argb32.ref.png | Bin 9748 -> 0 bytes
.../scale-offset-similar.mask.rgb24.ref.png | Bin 9748 -> 0 bytes
.../scale-source-surface-paint.argb32.ref.png | Bin 128 -> 0 bytes
.../scale-source-surface-paint.mask.argb32.ref.png | Bin 128 -> 0 bytes
.../scale-source-surface-paint.mask.rgb24.ref.png | Bin 117 -> 0 bytes
...scale-source-surface-paint.traps.argb32.ref.png | Bin 128 -> 0 bytes
.../scale-source-surface-paint.traps.rgb24.ref.png | Bin 117 -> 0 bytes
.../reference/select-font-face.mask.argb32.ref.png | Bin 2250 -> 0 bytes
test/reference/select-font-face.mask.rgb24.ref.png | Bin 2250 -> 0 bytes
.../select-font-face.traps.argb32.ref.png | Bin 2250 -> 0 bytes
.../reference/select-font-face.traps.rgb24.ref.png | Bin 2250 -> 0 bytes
test/reference/self-copy.mask.argb32.ref.png | Bin 257 -> 0 bytes
test/reference/self-copy.mask.rgb24.ref.png | Bin 257 -> 0 bytes
test/reference/self-intersecting.argb32.ref.png | Bin 168 -> 0 bytes
.../self-intersecting.mask.argb32.ref.png | Bin 168 -> 0 bytes
.../reference/self-intersecting.mask.rgb24.ref.png | Bin 168 -> 0 bytes
test/reference/self-intersecting.rgb24.ref.png | Bin 168 -> 0 bytes
test/reference/set-source.argb32.ref.png | Bin 101 -> 0 bytes
test/reference/set-source.mask.argb32.ref.png | Bin 101 -> 0 bytes
test/reference/set-source.mask.rgb24.ref.png | Bin 101 -> 0 bytes
test/reference/set-source.traps.argb32.ref.png | Bin 101 -> 0 bytes
test/reference/set-source.traps.rgb24.ref.png | Bin 101 -> 0 bytes
.../shape-general-convex.mask.argb32.ref.png | Bin 2742 -> 0 bytes
.../shape-general-convex.mask.rgb24.ref.png | Bin 2742 -> 0 bytes
.../reference/shape-sierpinski.mask.argb32.ref.png | Bin 63714 -> 0 bytes
test/reference/shape-sierpinski.mask.rgb24.ref.png | Bin 63714 -> 0 bytes
.../show-glyphs-advance.mask.argb32.ref.png | Bin 1394 -> 0 bytes
.../show-glyphs-advance.mask.rgb24.ref.png | Bin 1394 -> 0 bytes
.../show-glyphs-advance.traps.argb32.ref.png | Bin 1394 -> 0 bytes
.../show-glyphs-advance.traps.rgb24.ref.png | Bin 1394 -> 0 bytes
test/reference/show-glyphs-many.argb32.ref.png | Bin 96 -> 0 bytes
.../reference/show-glyphs-many.mask.argb32.ref.png | Bin 96 -> 0 bytes
test/reference/show-glyphs-many.mask.rgb24.ref.png | Bin 96 -> 0 bytes
test/reference/show-glyphs-many.rgb24.ref.png | Bin 96 -> 0 bytes
.../show-glyphs-many.traps.argb32.ref.png | Bin 96 -> 0 bytes
.../reference/show-glyphs-many.traps.rgb24.ref.png | Bin 96 -> 0 bytes
.../show-text-current-point.mask.argb32.ref.png | Bin 2151 -> 0 bytes
.../show-text-current-point.mask.rgb24.ref.png | Bin 2151 -> 0 bytes
.../show-text-current-point.traps.argb32.ref.png | Bin 2151 -> 0 bytes
.../show-text-current-point.traps.rgb24.ref.png | Bin 2151 -> 0 bytes
test/reference/skew-extreme.mask.argb32.ref.png | Bin 799 -> 0 bytes
test/reference/skew-extreme.mask.rgb24.ref.png | Bin 799 -> 0 bytes
test/reference/smask-fill.mask.argb32.ref.png | Bin 1197 -> 0 bytes
test/reference/smask-fill.mask.rgb24.ref.png | Bin 1197 -> 0 bytes
.../reference/smask-image-mask.mask.argb32.ref.png | Bin 619 -> 0 bytes
test/reference/smask-image-mask.mask.rgb24.ref.png | Bin 619 -> 0 bytes
.../smask-image-mask.traps.argb32.ref.png | Bin 619 -> 0 bytes
.../reference/smask-image-mask.traps.rgb24.ref.png | Bin 619 -> 0 bytes
.../smask-image-mask.xlib-fallback.rgb24.ref.png | Bin 619 -> 0 bytes
.../smask-image-mask.xlib-window.rgb24.ref.png | Bin 619 -> 0 bytes
test/reference/smask-mask.mask.argb32.ref.png | Bin 2353 -> 0 bytes
test/reference/smask-mask.mask.rgb24.ref.png | Bin 2353 -> 0 bytes
test/reference/smask-mask.traps.argb32.ref.png | Bin 2353 -> 0 bytes
test/reference/smask-mask.traps.rgb24.ref.png | Bin 2353 -> 0 bytes
test/reference/smask-paint.mask.argb32.ref.png | Bin 2469 -> 0 bytes
test/reference/smask-paint.mask.rgb24.ref.png | Bin 2469 -> 0 bytes
test/reference/smask-paint.traps.argb32.ref.png | Bin 2469 -> 0 bytes
test/reference/smask-paint.traps.rgb24.ref.png | Bin 2469 -> 0 bytes
test/reference/smask-stroke.mask.argb32.ref.png | Bin 1709 -> 0 bytes
test/reference/smask-stroke.mask.rgb24.ref.png | Bin 1709 -> 0 bytes
test/reference/smask-text.traps.argb32.ref.png | Bin 1661 -> 0 bytes
test/reference/smask-text.traps.rgb24.ref.png | Bin 1661 -> 0 bytes
test/reference/smask.traps.argb32.ref.png | Bin 3393 -> 0 bytes
test/reference/smask.traps.rgb24.ref.png | Bin 3393 -> 0 bytes
.../solid-pattern-cache-stress.argb32.ref.png | Bin 87 -> 0 bytes
.../solid-pattern-cache-stress.mask.argb32.ref.png | Bin 87 -> 0 bytes
.../solid-pattern-cache-stress.mask.rgb24.ref.png | Bin 87 -> 0 bytes
.../solid-pattern-cache-stress.rgb24.ref.png | Bin 87 -> 0 bytes
...solid-pattern-cache-stress.traps.argb32.ref.png | Bin 87 -> 0 bytes
.../solid-pattern-cache-stress.traps.rgb24.ref.png | Bin 87 -> 0 bytes
test/reference/source-clip-scale.argb32.ref.png | Bin 136 -> 0 bytes
.../source-clip-scale.mask.argb32.ref.png | Bin 136 -> 0 bytes
.../reference/source-clip-scale.mask.rgb24.ref.png | Bin 136 -> 0 bytes
test/reference/source-clip-scale.rgb24.ref.png | Bin 136 -> 0 bytes
.../source-clip-scale.traps.argb32.ref.png | Bin 136 -> 0 bytes
.../source-clip-scale.traps.rgb24.ref.png | Bin 136 -> 0 bytes
test/reference/source-clip.argb32.ref.png | Bin 111 -> 0 bytes
test/reference/source-clip.mask.argb32.ref.png | Bin 111 -> 0 bytes
test/reference/source-clip.mask.rgb24.ref.png | Bin 111 -> 0 bytes
test/reference/source-clip.rgb24.ref.png | Bin 111 -> 0 bytes
test/reference/source-clip.traps.argb32.ref.png | Bin 111 -> 0 bytes
test/reference/source-clip.traps.rgb24.ref.png | Bin 111 -> 0 bytes
.../source-surface-scale-paint.argb32.ref.png | Bin 120 -> 0 bytes
.../source-surface-scale-paint.mask.argb32.ref.png | Bin 120 -> 0 bytes
.../source-surface-scale-paint.mask.rgb24.ref.png | Bin 114 -> 0 bytes
...source-surface-scale-paint.traps.argb32.ref.png | Bin 120 -> 0 bytes
.../source-surface-scale-paint.traps.rgb24.ref.png | Bin 114 -> 0 bytes
.../spline-decomposition.mask.argb32.ref.png | Bin 19520 -> 0 bytes
.../spline-decomposition.mask.rgb24.ref.png | Bin 19520 -> 0 bytes
test/reference/stride-12-image.argb32.ref.png | Bin 81121 -> 0 bytes
test/reference/stride-12-image.mask.argb32.ref.png | Bin 81121 -> 0 bytes
test/reference/stride-12-image.mask.rgb24.ref.png | Bin 81121 -> 0 bytes
test/reference/stride-12-image.rgb24.ref.png | Bin 81121 -> 0 bytes
.../reference/stride-12-image.traps.argb32.ref.png | Bin 81121 -> 0 bytes
test/reference/stride-12-image.traps.rgb24.ref.png | Bin 81121 -> 0 bytes
test/reference/stroke-image.mask.argb32.ref.png | Bin 1424 -> 0 bytes
test/reference/stroke-image.mask.rgb24.ref.png | Bin 1424 -> 0 bytes
test/reference/stroke-open-box.argb32.ref.png | Bin 148 -> 0 bytes
test/reference/stroke-open-box.mask.argb32.ref.png | Bin 148 -> 0 bytes
test/reference/stroke-open-box.mask.rgb24.ref.png | Bin 148 -> 0 bytes
test/reference/stroke-open-box.rgb24.ref.png | Bin 148 -> 0 bytes
.../reference/stroke-open-box.traps.argb32.ref.png | Bin 148 -> 0 bytes
test/reference/stroke-open-box.traps.rgb24.ref.png | Bin 148 -> 0 bytes
test/reference/stroke-pattern.mask.argb32.ref.png | Bin 1491 -> 0 bytes
test/reference/stroke-pattern.mask.rgb24.ref.png | Bin 1491 -> 0 bytes
test/reference/stroke-pattern.traps.argb32.ref.png | Bin 1487 -> 0 bytes
test/reference/stroke-pattern.traps.rgb24.ref.png | Bin 1487 -> 0 bytes
.../subsurface-image-repeat.argb32.ref.png | Bin 915 -> 0 bytes
.../subsurface-image-repeat.mask.argb32.ref.png | Bin 915 -> 0 bytes
.../subsurface-image-repeat.mask.rgb24.ref.png | Bin 915 -> 0 bytes
.../subsurface-image-repeat.rgb24.ref.png | Bin 915 -> 0 bytes
.../subsurface-image-repeat.traps.argb32.ref.png | Bin 915 -> 0 bytes
.../subsurface-image-repeat.traps.rgb24.ref.png | Bin 915 -> 0 bytes
...urface-image-repeat.xlib-fallback.rgb24.ref.png | Bin 915 -> 0 bytes
...bsurface-image-repeat.xlib-window.rgb24.ref.png | Bin 915 -> 0 bytes
.../subsurface-modify-child.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-child.mask.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-child.mask.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-child.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-child.traps.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-child.traps.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-parent.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-parent.mask.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-parent.mask.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-parent.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-parent.traps.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-modify-parent.traps.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-outside-target.mask.argb32.ref.png | Bin 2063 -> 0 bytes
.../subsurface-outside-target.mask.rgb24.ref.png | Bin 1648 -> 0 bytes
.../subsurface-outside-target.traps.argb32.ref.png | Bin 2063 -> 0 bytes
.../subsurface-outside-target.traps.rgb24.ref.png | Bin 1648 -> 0 bytes
test/reference/subsurface-pad.argb32.ref.png | Bin 181 -> 0 bytes
test/reference/subsurface-pad.mask.argb32.ref.png | Bin 181 -> 0 bytes
test/reference/subsurface-pad.mask.rgb24.ref.png | Bin 181 -> 0 bytes
test/reference/subsurface-pad.rgb24.ref.png | Bin 181 -> 0 bytes
test/reference/subsurface-pad.traps.argb32.ref.png | Bin 181 -> 0 bytes
test/reference/subsurface-pad.traps.rgb24.ref.png | Bin 181 -> 0 bytes
test/reference/subsurface-reflect.argb32.ref.png | Bin 210 -> 0 bytes
.../subsurface-reflect.mask.argb32.ref.png | Bin 210 -> 0 bytes
.../subsurface-reflect.mask.rgb24.ref.png | Bin 210 -> 0 bytes
test/reference/subsurface-reflect.rgb24.ref.png | Bin 210 -> 0 bytes
.../subsurface-reflect.traps.argb32.ref.png | Bin 210 -> 0 bytes
.../subsurface-reflect.traps.rgb24.ref.png | Bin 210 -> 0 bytes
test/reference/subsurface-repeat.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-repeat.mask.argb32.ref.png | Bin 197 -> 0 bytes
.../reference/subsurface-repeat.mask.rgb24.ref.png | Bin 197 -> 0 bytes
test/reference/subsurface-repeat.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-repeat.traps.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-repeat.traps.rgb24.ref.png | Bin 197 -> 0 bytes
.../reference/subsurface-scale.mask.argb32.ref.png | Bin 5921 -> 0 bytes
test/reference/subsurface-scale.mask.rgb24.ref.png | Bin 5921 -> 0 bytes
.../subsurface-similar-repeat.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-similar-repeat.mask.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-similar-repeat.mask.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-similar-repeat.rgb24.ref.png | Bin 197 -> 0 bytes
.../subsurface-similar-repeat.traps.argb32.ref.png | Bin 197 -> 0 bytes
.../subsurface-similar-repeat.traps.rgb24.ref.png | Bin 197 -> 0 bytes
test/reference/subsurface.mask.argb32.ref.png | Bin 1811 -> 0 bytes
test/reference/subsurface.mask.rgb24.ref.png | Bin 1811 -> 0 bytes
.../surface-pattern-big-scale-down.argb32.ref.png | Bin 191 -> 0 bytes
...face-pattern-big-scale-down.mask.argb32.ref.png | Bin 191 -> 0 bytes
...rface-pattern-big-scale-down.mask.rgb24.ref.png | Bin 191 -> 0 bytes
.../surface-pattern-big-scale-down.rgb24.ref.png | Bin 191 -> 0 bytes
...ace-pattern-big-scale-down.traps.argb32.ref.png | Bin 191 -> 0 bytes
...face-pattern-big-scale-down.traps.rgb24.ref.png | Bin 191 -> 0 bytes
.../surface-pattern-operator.mask.argb32.ref.png | Bin 5217 -> 0 bytes
.../surface-pattern-operator.mask.rgb24.ref.png | Bin 1942 -> 0 bytes
...e-pattern-scale-down-extend-none.argb32.ref.png | Bin 329 -> 0 bytes
...tern-scale-down-extend-none.mask.argb32.ref.png | Bin 329 -> 0 bytes
...ttern-scale-down-extend-none.mask.rgb24.ref.png | Bin 329 -> 0 bytes
...ce-pattern-scale-down-extend-none.rgb24.ref.png | Bin 329 -> 0 bytes
...ern-scale-down-extend-none.traps.argb32.ref.png | Bin 329 -> 0 bytes
...tern-scale-down-extend-none.traps.rgb24.ref.png | Bin 329 -> 0 bytes
...ce-pattern-scale-down-extend-pad.argb32.ref.png | Bin 320 -> 0 bytes
...ttern-scale-down-extend-pad.mask.argb32.ref.png | Bin 320 -> 0 bytes
...attern-scale-down-extend-pad.mask.rgb24.ref.png | Bin 320 -> 0 bytes
...ace-pattern-scale-down-extend-pad.rgb24.ref.png | Bin 320 -> 0 bytes
...tern-scale-down-extend-pad.traps.argb32.ref.png | Bin 320 -> 0 bytes
...ttern-scale-down-extend-pad.traps.rgb24.ref.png | Bin 320 -> 0 bytes
...attern-scale-down-extend-reflect.argb32.ref.png | Bin 328 -> 0 bytes
...n-scale-down-extend-reflect.mask.argb32.ref.png | Bin 328 -> 0 bytes
...rn-scale-down-extend-reflect.mask.rgb24.ref.png | Bin 328 -> 0 bytes
...pattern-scale-down-extend-reflect.rgb24.ref.png | Bin 328 -> 0 bytes
...-scale-down-extend-reflect.traps.argb32.ref.png | Bin 328 -> 0 bytes
...n-scale-down-extend-reflect.traps.rgb24.ref.png | Bin 328 -> 0 bytes
...pattern-scale-down-extend-repeat.argb32.ref.png | Bin 330 -> 0 bytes
...rn-scale-down-extend-repeat.mask.argb32.ref.png | Bin 330 -> 0 bytes
...ern-scale-down-extend-repeat.mask.rgb24.ref.png | Bin 330 -> 0 bytes
...-pattern-scale-down-extend-repeat.rgb24.ref.png | Bin 330 -> 0 bytes
...n-scale-down-extend-repeat.traps.argb32.ref.png | Bin 330 -> 0 bytes
...rn-scale-down-extend-repeat.traps.rgb24.ref.png | Bin 330 -> 0 bytes
.../surface-pattern-scale-down.mask.argb32.ref.png | Bin 1326 -> 0 bytes
.../surface-pattern-scale-down.mask.rgb24.ref.png | Bin 1326 -> 0 bytes
...surface-pattern-scale-down.traps.argb32.ref.png | Bin 1326 -> 0 bytes
.../surface-pattern-scale-down.traps.rgb24.ref.png | Bin 1326 -> 0 bytes
.../surface-pattern-scale-up.mask.argb32.ref.png | Bin 4020 -> 0 bytes
.../surface-pattern-scale-up.mask.rgb24.ref.png | Bin 4020 -> 0 bytes
.../surface-pattern-scale-up.traps.argb32.ref.png | Bin 4020 -> 0 bytes
.../surface-pattern-scale-up.traps.rgb24.ref.png | Bin 4020 -> 0 bytes
test/reference/surface-pattern.mask.argb32.ref.png | Bin 11088 -> 0 bytes
test/reference/surface-pattern.mask.rgb24.ref.png | Bin 11088 -> 0 bytes
.../reference/surface-pattern.traps.argb32.ref.png | Bin 11088 -> 0 bytes
test/reference/surface-pattern.traps.rgb24.ref.png | Bin 11088 -> 0 bytes
.../svg-surface-source.mask.argb32.ref.png | Bin 377 -> 0 bytes
.../svg-surface-source.mask.rgb24.ref.png | Bin 301 -> 0 bytes
.../svg-surface-source.traps.argb32.ref.png | Bin 377 -> 0 bytes
.../svg-surface-source.traps.rgb24.ref.png | Bin 301 -> 0 bytes
.../text-antialias-gray.mask.argb32.ref.png | Bin 966 -> 0 bytes
.../text-antialias-gray.mask.rgb24.ref.png | Bin 966 -> 0 bytes
.../text-antialias-gray.traps.argb32.ref.png | Bin 966 -> 0 bytes
.../text-antialias-gray.traps.rgb24.ref.png | Bin 966 -> 0 bytes
test/reference/text-antialias-none.argb32.ref.png | Bin 265 -> 0 bytes
.../text-antialias-none.mask.argb32.ref.png | Bin 265 -> 0 bytes
.../text-antialias-none.mask.rgb24.ref.png | Bin 265 -> 0 bytes
test/reference/text-antialias-none.rgb24.ref.png | Bin 265 -> 0 bytes
.../text-antialias-none.traps.argb32.ref.png | Bin 265 -> 0 bytes
test/reference/text-antialias-none.traps.ref.png | Bin 265 -> 0 bytes
.../text-antialias-none.traps.rgb24.ref.png | Bin 265 -> 0 bytes
...ext-antialias-subpixel-bgr.traps.argb32.ref.png | Bin 1005 -> 0 bytes
...text-antialias-subpixel-bgr.traps.rgb24.ref.png | Bin 1005 -> 0 bytes
...ext-antialias-subpixel-rgb.traps.argb32.ref.png | Bin 1013 -> 0 bytes
...text-antialias-subpixel-rgb.traps.rgb24.ref.png | Bin 1013 -> 0 bytes
...xt-antialias-subpixel-vbgr.traps.argb32.ref.png | Bin 985 -> 0 bytes
...ext-antialias-subpixel-vbgr.traps.rgb24.ref.png | Bin 985 -> 0 bytes
...xt-antialias-subpixel-vrgb.traps.argb32.ref.png | Bin 1009 -> 0 bytes
...ext-antialias-subpixel-vrgb.traps.rgb24.ref.png | Bin 1009 -> 0 bytes
.../text-antialias-subpixel.traps.argb32.ref.png | Bin 1013 -> 0 bytes
.../text-antialias-subpixel.traps.rgb24.ref.png | Bin 1013 -> 0 bytes
.../reference/text-glyph-range.mask.argb32.ref.png | Bin 1928 -> 0 bytes
test/reference/text-glyph-range.mask.rgb24.ref.png | Bin 1928 -> 0 bytes
.../text-glyph-range.traps.argb32.ref.png | Bin 1979 -> 0 bytes
.../reference/text-glyph-range.traps.rgb24.ref.png | Bin 1979 -> 0 bytes
test/reference/text-pattern.mask.argb32.ref.png | Bin 3455 -> 0 bytes
test/reference/text-pattern.mask.rgb24.ref.png | Bin 2684 -> 0 bytes
test/reference/text-rotate.traps.argb32.ref.png | Bin 16597 -> 0 bytes
test/reference/text-rotate.traps.rgb24.ref.png | Bin 16597 -> 0 bytes
test/reference/text-transform.argb32.ref.png | Bin 5579 -> 0 bytes
test/reference/text-transform.mask.argb32.ref.png | Bin 5579 -> 0 bytes
test/reference/text-transform.mask.rgb24.ref.png | Bin 5579 -> 0 bytes
test/reference/text-transform.rgb24.ref.png | Bin 5579 -> 0 bytes
test/reference/text-transform.traps.argb32.ref.png | Bin 5579 -> 0 bytes
test/reference/text-transform.traps.rgb24.ref.png | Bin 5579 -> 0 bytes
test/reference/tiger.mask.argb32.ref.png | Bin 93916 -> 0 bytes
test/reference/tiger.mask.rgb24.ref.png | Bin 93916 -> 0 bytes
test/reference/transforms.mask.argb32.ref.png | Bin 348 -> 0 bytes
test/reference/transforms.mask.rgb24.ref.png | Bin 348 -> 0 bytes
.../translate-show-surface.argb32.ref.png | Bin 96 -> 0 bytes
.../translate-show-surface.mask.argb32.ref.png | Bin 96 -> 0 bytes
.../translate-show-surface.mask.rgb24.ref.png | Bin 96 -> 0 bytes
.../reference/translate-show-surface.rgb24.ref.png | Bin 96 -> 0 bytes
.../translate-show-surface.traps.argb32.ref.png | Bin 96 -> 0 bytes
.../translate-show-surface.traps.rgb24.ref.png | Bin 96 -> 0 bytes
.../twin-antialias-mixed.mask.argb32.ref.png | Bin 2230 -> 0 bytes
.../twin-antialias-mixed.mask.rgb24.ref.png | Bin 2230 -> 0 bytes
.../twin-antialias-none.mask.argb32.ref.png | Bin 690 -> 0 bytes
.../twin-antialias-none.mask.rgb24.ref.png | Bin 690 -> 0 bytes
test/reference/unaligned-box.argb32.ref.png | Bin 496 -> 0 bytes
test/reference/unaligned-box.mask.argb32.ref.png | Bin 496 -> 0 bytes
test/reference/unaligned-box.mask.rgb24.ref.png | Bin 496 -> 0 bytes
test/reference/unaligned-box.rgb24.ref.png | Bin 496 -> 0 bytes
test/reference/unantialiased-shapes.argb32.ref.png | Bin 3926 -> 0 bytes
.../unantialiased-shapes.mask.argb32.ref.png | Bin 3926 -> 0 bytes
.../unantialiased-shapes.mask.rgb24.ref.png | Bin 3926 -> 0 bytes
test/reference/unantialiased-shapes.rgb24.ref.png | Bin 3926 -> 0 bytes
.../reference/unclosed-strokes.mask.argb32.ref.png | Bin 1901 -> 0 bytes
test/reference/unclosed-strokes.mask.rgb24.ref.png | Bin 1901 -> 0 bytes
test/reference/user-font-mask.argb32.ref.png | Bin 5476 -> 0 bytes
test/reference/user-font-mask.mask.argb32.ref.png | Bin 5476 -> 0 bytes
test/reference/user-font-mask.mask.rgb24.ref.png | Bin 5476 -> 0 bytes
test/reference/user-font-mask.rgb24.ref.png | Bin 5476 -> 0 bytes
test/reference/user-font-mask.traps.argb32.ref.png | Bin 5476 -> 0 bytes
test/reference/user-font-mask.traps.rgb24.ref.png | Bin 5476 -> 0 bytes
test/reference/user-font-proxy.mask.argb32.ref.png | Bin 16941 -> 0 bytes
test/reference/user-font-proxy.mask.rgb24.ref.png | Bin 16941 -> 0 bytes
.../reference/user-font-proxy.traps.argb32.ref.png | Bin 16854 -> 0 bytes
test/reference/user-font-proxy.traps.rgb24.ref.png | Bin 16854 -> 0 bytes
.../user-font-rescale.mask.argb32.ref.png | Bin 14883 -> 0 bytes
.../reference/user-font-rescale.mask.rgb24.ref.png | Bin 14883 -> 0 bytes
.../user-font-rescale.traps.argb32.ref.png | Bin 14883 -> 0 bytes
.../user-font-rescale.traps.rgb24.ref.png | Bin 14883 -> 0 bytes
test/reference/white-in-noop.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/white-in-noop.mask.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/white-in-noop.mask.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/white-in-noop.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/white-in-noop.traps.argb32.ref.png | Bin 95 -> 0 bytes
test/reference/white-in-noop.traps.rgb24.ref.png | Bin 95 -> 0 bytes
test/reference/world-map-fill.mask.argb32.ref.png | Bin 57308 -> 0 bytes
test/reference/world-map-fill.mask.rgb24.ref.png | Bin 57308 -> 0 bytes
test/reference/xcb-huge-image-shm.argb32.ref.png | Bin 97 -> 0 bytes
.../xcb-huge-image-shm.mask.argb32.ref.png | Bin 97 -> 0 bytes
.../xcb-huge-image-shm.mask.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/xcb-huge-image-shm.rgb24.ref.png | Bin 97 -> 0 bytes
.../xcb-huge-image-shm.traps.argb32.ref.png | Bin 97 -> 0 bytes
.../xcb-huge-image-shm.traps.rgb24.ref.png | Bin 97 -> 0 bytes
.../xcb-huge-image-shm.xlib-fallback.rgb24.ref.png | Bin 97 -> 0 bytes
.../xcb-huge-image-shm.xlib-window.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/xcb-snapshot-assert.argb32.ref.png | Bin 97 -> 0 bytes
.../xcb-snapshot-assert.mask.argb32.ref.png | Bin 97 -> 0 bytes
.../xcb-snapshot-assert.mask.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/xcb-snapshot-assert.rgb24.ref.png | Bin 97 -> 0 bytes
.../xcb-snapshot-assert.traps.argb32.ref.png | Bin 97 -> 0 bytes
.../xcb-snapshot-assert.traps.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/xcb-stress-cache.argb32.ref.png | Bin 97 -> 0 bytes
.../reference/xcb-stress-cache.mask.argb32.ref.png | Bin 97 -> 0 bytes
test/reference/xcb-stress-cache.mask.rgb24.ref.png | Bin 97 -> 0 bytes
test/reference/xcb-stress-cache.rgb24.ref.png | Bin 97 -> 0 bytes
.../xcb-stress-cache.traps.argb32.ref.png | Bin 97 -> 0 bytes
.../reference/xcb-stress-cache.traps.rgb24.ref.png | Bin 97 -> 0 bytes
.../xcb-surface-source.mask.argb32.ref.png | Bin 377 -> 0 bytes
.../xcb-surface-source.mask.rgb24.ref.png | Bin 301 -> 0 bytes
.../xcb-surface-source.traps.argb32.ref.png | Bin 377 -> 0 bytes
.../xcb-surface-source.traps.rgb24.ref.png | Bin 301 -> 0 bytes
.../reference/xcomposite-projection.argb32.ref.png | Bin 1108 -> 0 bytes
test/reference/xcomposite-projection.rgb24.ref.png | Bin 1108 -> 0 bytes
test/reference/xlib-expose-event.argb32.ref.png | Bin 40717 -> 0 bytes
.../xlib-expose-event.mask.argb32.ref.png | Bin 40717 -> 0 bytes
.../reference/xlib-expose-event.mask.rgb24.ref.png | Bin 40717 -> 0 bytes
test/reference/xlib-expose-event.rgb24.ref.png | Bin 40717 -> 0 bytes
.../xlib-expose-event.traps.argb32.ref.png | Bin 40717 -> 0 bytes
.../xlib-expose-event.traps.rgb24.ref.png | Bin 40717 -> 0 bytes
.../xlib-surface-source.mask.argb32.ref.png | Bin 377 -> 0 bytes
.../xlib-surface-source.mask.rgb24.ref.png | Bin 301 -> 0 bytes
.../xlib-surface-source.traps.argb32.ref.png | Bin 377 -> 0 bytes
.../xlib-surface-source.traps.rgb24.ref.png | Bin 301 -> 0 bytes
test/reference/zero-alpha.argb32.ref.png | Bin 91 -> 0 bytes
test/reference/zero-alpha.mask.argb32.ref.png | Bin 91 -> 0 bytes
test/reference/zero-alpha.mask.rgb24.ref.png | Bin 91 -> 0 bytes
test/reference/zero-alpha.rgb24.ref.png | Bin 91 -> 0 bytes
test/reference/zero-alpha.traps.argb32.ref.png | Bin 91 -> 0 bytes
test/reference/zero-alpha.traps.rgb24.ref.png | Bin 91 -> 0 bytes
test/reference/zero-mask.argb32.ref.png | Bin 402 -> 0 bytes
test/reference/zero-mask.mask.argb32.ref.png | Bin 402 -> 0 bytes
test/reference/zero-mask.mask.rgb24.ref.png | Bin 382 -> 0 bytes
test/reference/zero-mask.traps.argb32.ref.png | Bin 402 -> 0 bytes
test/reference/zero-mask.traps.rgb24.ref.png | Bin 382 -> 0 bytes
1477 files changed, 0 insertions(+), 0 deletions(-)
commit 33895904d52f47d0d89156ca1e1ff7cc8f5887d2
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Wed Jul 3 22:37:41 2013 +0000
test: Add special cases for create-from-png and fallback-resolution
These tests use reference images somewhat differently from other tests,
so treat them as special cases and avoid recommending deleting any of
their files.
Add TODO's to each test to rework them to be more consistent with other
tests.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/check-refs.sh | 10 ++++++++++
test/create-from-png.c | 5 +++++
test/fallback-resolution.c | 1 +
3 files changed, 16 insertions(+)
commit 5577223489dc3f6e282c498d70f66f8ee9327474
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Wed Jul 3 22:37:00 2013 +0000
pdiff: Drop unused variable
Fixes:
perceptualdiff.c:35:24: warning: unused variable ‘dim’
[-Wunused-variable]
Signed-off-by: Bryce Harrington <bryce@bryceharrington.org>
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/pdiff/perceptualdiff.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 319b8935826c8726b8c23f1c746a82b261b8cde1
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Wed Jul 3 22:36:28 2013 +0000
pdiff: Quell warning about signed/unsigned comparisons
perceptualdiff.c:55:19: warning: comparison between signed and unsigned
integer expressions [-Wsign-compare]
perceptualdiff.c:60:16: warning: comparison between signed and unsigned
integer expressions [-Wsign-compare]
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/pdiff/perceptualdiff.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 9e4cac50c25cec0476413a991d98c897fce0aceb
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Wed Jul 3 22:35:47 2013 +0000
test: Make check-ref-dups utilize perceptualdiff for comparisons
The current sha1sum-based file checker does a blanket comparison of all
files with each other, which is fast but not directly helpful since it
doesn't distinguish between sibling files (which are allowable to be
duplicates). Also, it ignores files that may have byte differences
(such as PNG header differences) but are otherwise pixel-identical.
This patch replaces the sha1sum-based checker with one that accounts for
the default fallback path and uses perceptualdiff to compare files that
are bytewise different and verify whether they actually are different.
The intention is that the output of this command can be directly used to
remove redundant files, e.g.:
cd test
make check-ref-dups | cut -d' ' -f2 | \
while read f; do git rm "reference/$f"; done
This should have no impact on make check's results (modulo any tests
that behave erratically), and will help trim down the size of the
tarball.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
[ickle: rebase and add the suggested command to the Makefile]
test/Makefile.am | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
commit 8d3c518e9db39b670fe89c4bf097871e1cf16955
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Wed Jul 3 22:35:08 2013 +0000
test: Use cmp to catch byte-by-byte identical files
cmp runs faster than perceptualdiff, and catches files that are exact
copies of the reference image. We still use perceptualdiff for catching
files that aren't bytewise identical, but are still identical at the
pixel level.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/check-refs.sh | 20 ++++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
commit b0be0d8d42b5b6ba80e59a869a8f72fd8556e91e
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Wed Jul 3 22:33:57 2013 +0000
test: Add script to check for redundant reference images
This script requires the perceptualdiff program, which can be built as
follows:
cd test/pdiff && make perceptualdiff
The script's output provides a list of target-specific or
format-specific images that are identical to their more generic
reference files, and thus are redundant and can be safely removed from
the archive without altering any test behaviors.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
[ickle: applied Behdad's suggestion of renaming the script check-refs.sh]
test/Makefile.am | 1 +
test/check-refs.sh | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 61 insertions(+)
commit 7f1be42e85589ee07dacead012234c1a1eb1b395
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Wed Jul 3 22:32:34 2013 +0000
test: Fix make check-ref-dups due to move of ref images to reference/
The check-ref-dups target in Makefile.am was not updated with the new
path when the reference images were moved from test/ to
test/reference/. Now it produces output properly again.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/Makefile.am | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 7b8fc77bb974fbd4fbc697405a8b6aec748bb7f2
Author: Eric Anholt <eric@anholt.net>
Date: Mon Jun 24 23:28:47 2013 -0700
gl: Move glGetUniformLocation to shader compile time.
The lookup of the string names has significant overhead, which is why GL
gives you glGetUniformLocation so that you reference uniforms by
constant integers in your high performance path.
Reduces cairo-perf-trace runtime of firefox-planet-gnome by 1.06767% +/-
0.289265% (n=72) on my IVB macbook air.
Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-composite.c | 2 +-
src/cairo-gl-operand.c | 30 +++++++--------------
src/cairo-gl-private.h | 19 ++++++++-----
src/cairo-gl-shaders.c | 67 +++++++++++++++++++++++++++++++---------------
4 files changed, 70 insertions(+), 48 deletions(-)
commit 4d9439132de85c0f0f4d5b5a474ea7164910251e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 21 20:18:40 2013 +0100
check: Fix check-def.sh for variations in GCC's linker
We now need to exclude bss and data sections from the symbol list.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/check-def.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 7b80613d6d483cdfd5d0c6311de0f8586092b408
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 21 17:30:47 2013 +0100
test: Use the highest precision rendering for shapes for generating ref results
The test-traps and test-base surfaces are used for generating the
reference results, and so they should opt for using the best rendering
paths through the traps- and base-compositors.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/test-compositor-surface.c | 4 ++++
1 file changed, 4 insertions(+)
commit 686ebd4a893d2e583d0cf11bd9f77681dbf0b21c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 21 16:58:38 2013 +0100
cairo-perf-print: Do not free the uninitialised histogram
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf-print.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 5589e80e2bd6b82e5730cbf6b72aaf82a66b31c0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 21 12:01:32 2013 +0100
xml: Handle clip-boxes in the updated cairo_clip_t
Edward Zimmerman pointed out that the xml surface had bitrotted slightly
and no longer understand the new clip layout - in particular that we can
have clips without a path, but just with boxes instead.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xml-surface.c | 77 ++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 72 insertions(+), 5 deletions(-)
commit 2bfb9e9001bceaedffb2303c062af8e42045931e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jun 20 20:47:18 2013 +0100
svg: Unwrap recording surfaces
As a first step towards bring SVG uptodate with the various new
patterns, first we need to prevent SVG crashing when it mishandles an
unknown recording surface.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-svg-surface.c | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
commit b7331f0c52cc64f2c224eac502afa6c50a1a8d8b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jun 20 14:23:15 2013 +0100
gstate: Speed up stroked path extents
We can skip the intermediate evaluation of the trapezoids for
determining the extents of a stroked path by using the relatively new
functions for computing the contours of the stroke. Then we can simply
use the bbox of the points within the contours to retrieve the path
extents - which is already provided by the polygon holding the contours
of the stroke. This provides a faster result with less numerical
inaccuracy due to fewer stages required in the computation
References: https://bugs.freedesktop.org/show_bug.cgi?id=62375
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gstate.c | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
commit 9ea5993b036f5930179263baaf3162eeebb7c153
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jun 20 14:11:38 2013 +0100
test/get-path-extents: Check exact matches within tolerance
When we refine geometry, we do so to a tolerance as specified by the
user. This means that we can not expect tessellated results to have
exact results, but always they should match within the specified
tolerance.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/get-path-extents.c | 30 +++++++++++++++++++++---------
1 file changed, 21 insertions(+), 9 deletions(-)
commit e079e4e2297810ceb10798cf310a7fafe39b18f0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jun 20 14:02:14 2013 +0100
image: Mark the data as owned after stealing the snapshot's image
Victor Goya found that we ended up leaking memory after reading a PNG
into an image surface and drawing that onto a PDF surface. In
particular, he discovered that
commit 0bfd2acd35547fc2bd0de99cc67d153f0170697d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 13 01:34:12 2012 +0100
xlib: Implement SHM fallbacks and fast upload paths
introduced a path to steal the image data for a snapshot (and thereby
avoid a redundant copy), but that path then lead to the leak of the
"owned" data.
Reported-by: Victor Goya <victor.goya@af83.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit f39eef852491c10dec4089f9fb3d332a712da28c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jun 20 11:11:20 2013 +0100
pdf: Fix compiler warning for use of unitialised variable along error path
cairo-pdf-surface.c: In function '_cairo_pdf_surface_add_source_surface.isra.20':
cairo-pdf-surface.c:1461:10: warning: 'unique_id' may be used uninitialized in this function [-Wmaybe-uninitialized]
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pdf-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 80641f4adc3e2ca16e67110e7b82f42e88efd93e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jun 20 11:09:53 2013 +0100
pdf: Improve consistency in use of cairo_int_status_t
Suppress several compiler warning for mixing
cairo_status_t/cairo_int_status_t enums.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pdf-operators-private.h | 7 +-
src/cairo-pdf-surface.c | 256 +++++++++++++++----------------
src/cairo-ps-surface.c | 2 +-
src/cairo-type3-glyph-surface-private.h | 5 +-
4 files changed, 136 insertions(+), 134 deletions(-)
commit d4545910e2836eb6fc7dc2ed787b02aea514cb0b
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Jun 20 03:16:01 2013 +0000
test: Note naming scheme for XFAIL images in README
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/README | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit 982f288460591a8f2b8a78db89ae6e5495d2b3b8
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Jun 20 03:16:29 2013 +0000
gl: Quell warning about incompatible pointer type
mask is a cairo_surface_t pointer, and is cast to a cairo_gl_surface_t
pointer in the _cairo_gl_surface_draw_image() call.
texture.owns_surface also expects mask to be a cairo_gl_surface_t
pointer, so apply the same cast here as well.
Fixes the following warning:
cairo-gl-traps-compositor.c:370:35: warning: assignment from
incompatible pointer type [enabled by default]
Ref.: 38bf7a65
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-gl-traps-compositor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit aa764a3bbc3fe43191d877aaec42b73c7d55d040
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Jun 20 03:17:38 2013 +0000
pdf: Assure compiler that data, data_size will always be initialized
There are only three possible color states: COLOR, GRAYSCALE, or
MONOCHROME thus data and data_size will always be set to some value,
so assert the default is never reached.
Fixes these warning:
cairo-pdf-surface.c:2517:32: warning: ‘data_size’ may be used
uninitialized in this function [-Wuninitialized]
cairo-pdf-surface.c:2338:19: note: ‘data_size’ was declared here
cairo-pdf-surface.c:2446:11: warning: ‘data’ may be used uninitialized
in this function [-Wuninitialized]
cairo-pdf-surface.c:2337:11: note: ‘data’ was declared here
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-pdf-surface.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit 27cb80b84834f7262d70cd1f95dd6e940059f75a
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Jun 20 03:18:11 2013 +0000
type1-subset: Fix typos in function comment
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-type1-subset.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
commit f893acd60df816f3e0282affef6b58f59f84f48a
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Thu Jun 20 03:18:45 2013 +0000
type1-subset: Quell warning about uninitialized array_start
Since we explicitly set font->subset_subrs to false, there's no way the
warned code will be executed, but perhaps the compiler is confused by
the goto jump.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-type1-subset.c | 1 +
1 file changed, 1 insertion(+)
commit 519dff51db30e157f52ef5244a3afeea06340ff8
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 18 16:06:28 2013 +0100
scaled-font: Prevent a recursive mutex lock for removing a failed glyph
If we fail to create a glyph, and it is the only one in the glyph page,
we then pluck that page out of the global glyph cache. The cache destroy
callback tries to take the scaled_font lock again, causing a lockup.
Rework the error path to avoid taking that lock in this case - still a
potential lock ordering issue remains.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 4 ++++
1 file changed, 4 insertions(+)
commit df1ca22ada340add2360677ff892ec043dad96f4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 18 15:46:28 2013 +0100
recording: Prevent invalid memory access with zero length command array
If we try to sort a zero length array, we access invalid memory.
However, for a zero length command array, we can trivially compute the
number of visible indices, 0.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-recording-surface.c | 3 +++
1 file changed, 3 insertions(+)
commit c51b850bd836c2bec0a1bcc7b32136dc21bc2360
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 11 14:11:45 2013 +0100
perf: Remove a debug artifact
Remove the intentional #error for non-UNIX path used to remind me to fix
up configure.ac.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf-print.c | 1 -
1 file changed, 1 deletion(-)
commit 2c097e6e6b8375b7d488572cdb09b80dca06d42a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 11 11:57:04 2013 +0100
perf: Avoid vertically stretching the histogram
If we have more rows than the max_count in any column, we end up
stretching the histogram vertically, which makes it harder to read.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-stats.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
commit b9f0ef4496eca31b47296543f48078b2a7034750
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 11 11:47:24 2013 +0100
perf: Rescale the histogram for the terminal
If running ./cairo-perf-print in a terminal, query the terminal size and
rescale the histogram to use the maximum available space.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 2 ++
perf/cairo-perf-print.c | 37 +++++++++++++++++++++++++++++++++++--
2 files changed, 37 insertions(+), 2 deletions(-)
commit 9a12c2e02369f0920c1f1f578eb8d228add77ea1
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 11 11:05:03 2013 +0100
perf: Rudimentary histogram printing for cairo-perf-print
If you call ./cairo-perf-print --histogram results.txt, it will then
print a histogram of the results, one per test. Ideally, you should see
a skewed distribution (with a negative skew representing that most results
run in optimal time), but random sampling errors (scheduling,
throttling, general inefficiency etc) will push it more towards a normal
distribution.
For example,
| x |
| x xx |
| x xx |
| x xx |
| xxxx |
| xxxx x |
| x xxxxxx |
| x xxxxxx |
| xxxxxxxxx |
| xxxxxxxxx |
| xxxxxxxxx |
| xxxxxxxxxxxx |
| xxxxxxxxxxxx |
| xxxxxxxxxxxx |
| xxxxxxxxxxxxxx |
|x xxxxxxxxxxxxxx |
|x x xxxxxxxxxxxxxxx |
|x x xxxxxxxxxxxxxxx |
|x x xxxxxxxxxxxxxxxxx |
|xxx x xxxxxxxxxxxxxxxxxxx |
|xxx xxxxxxxxxxxxxxxxxxxxxxxxx |
|xxxxxx xxxx x x x x xxx xx xxxxx xxx x xxx x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx|
.------------------------------------------------------------------------------.
xlib firefox-fishtank 8298.44 1.53% (829/946)
Starts off reasonably, but quickly deteriorates as the integrated CPU/GPU
overheats and is forced to throttle.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf-print.c | 65 +++++++++++++++++++++++++++----------
perf/cairo-perf-report.c | 2 +-
perf/cairo-perf.h | 9 ++++++
perf/cairo-stats.c | 80 ++++++++++++++++++++++++++++++++++++++++++++++
perf/cairo-stats.h | 16 ++++++++++
5 files changed, 155 insertions(+), 17 deletions(-)
commit e519d6f9860c7f0bc51f1e8a17505f2dc372c938
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 11 10:00:56 2013 +0100
recording: Fix inconsistent usage of types for indices
We were wantonly mixing unsigned/signed integers for our index and
counters, leading to compiler warnings. Be bold, and use unsigned
consistently.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-recording-surface-private.h | 4 ++--
src/cairo-recording-surface.c | 18 +++++++++---------
2 files changed, 11 insertions(+), 11 deletions(-)
commit b45c79ff8a8e7c5cf4af1498d854a85c818d9268
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Mon Jun 10 19:01:09 2013 +0000
image: Quell warning about signed/unsigned int comparison.
Restore (int) cast that was dropped in e7e1ac23.
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
src/cairo-image-compositor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 5271f3199107f50f65608f3816c840da7445fb55
Author: Bryce W. Harrington <b.harrington@samsung.com>
Date: Sat Jun 8 01:42:20 2013 +0000
test: Fix typo in sample_horizontal to use horizontal, not vertical.
Triggers the following warning during build:
sample.c:61:1: warning: ‘horizontal’ defined but not used
[-Wunused-function]
Signed-off-by: Bryce Harrington <b.harrington@samsung.com>
test/sample.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 17dc312221c294b120bd159e01f5f566c6ec4a2d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jun 5 22:34:52 2013 +0100
trace: Improve operand emission
In particular fixing up a couple of corner cases in emitting the right
instructions for scaled-fonts and patterns.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-trace/trace.c | 147 +++++++++++++++++++++++++++-------------------
1 file changed, 87 insertions(+), 60 deletions(-)
commit e34b800214c78ec3d92de505d173fc617cf6220f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 4 11:47:07 2013 +0100
test: Extend testing of joins for fine lines
test/caps-joins.c | 55 ++++++++++++++++++++++++++--
test/reference/caps-joins-05.ref.png | Bin 0 -> 2169 bytes
test/reference/caps-joins-05.traps.ref.png | Bin 0 -> 1714 bytes
test/reference/caps-joins-1.ref.png | Bin 0 -> 2105 bytes
test/reference/caps-joins-1.traps.ref.png | Bin 0 -> 1861 bytes
test/reference/caps-joins-2.ref.png | Bin 0 -> 2046 bytes
test/reference/caps-joins-2.traps.ref.png | Bin 0 -> 1631 bytes
7 files changed, 51 insertions(+), 4 deletions(-)
commit a2d852497364afa742518ac0d9feb0466dccc191
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jun 4 11:34:31 2013 +0100
test: Expand testing of caps for fine strokes
test/caps.c | 57 ++++++++++++++++++++++++++++++++--
test/reference/caps-05.ref.png | Bin 0 -> 1375 bytes
test/reference/caps-05.traps.ref.png | Bin 0 -> 1126 bytes
test/reference/caps-1.ref.png | Bin 0 -> 1457 bytes
test/reference/caps-1.traps.ref.png | Bin 0 -> 1268 bytes
test/reference/caps-2.ref.png | Bin 0 -> 1509 bytes
test/reference/caps-2.traps.ref.png | Bin 0 -> 1231 bytes
7 files changed, 54 insertions(+), 3 deletions(-)
commit 85c2a0d76ab109f2bec8f7dccab577033e6d37b0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jun 3 13:56:00 2013 +0100
xlib: Unlike the visual when destroying it
Otherwise we leave dangling pointers in the visual list, leading to
memory corruption when using low bitdepth servers.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-list-inline.h | 8 +++++++-
src/cairo-xlib-visual.c | 3 +++
2 files changed, 10 insertions(+), 1 deletion(-)
commit 41bef0fc385381b8c6b9091ec7ca2abe04cfc147
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 30 20:57:04 2013 +0100
traps: Ensure that we correctly clip when using multiple clip boxes
We need to be more careful when trying to discard a clip to be sure that
it is truly not required. In particular, we need to not throw a way a
clip region when it has more than one box intersecting the mask.
Reported-by: Alexander Larsson
Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=697357
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-composite-rectangles.c | 7 +++++++
src/cairo-traps-compositor.c | 32 ++++++++++++++------------------
2 files changed, 21 insertions(+), 18 deletions(-)
commit 631bf299256e11a17511977f357e0353fb5615f7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat May 11 21:37:05 2013 +0100
directfb: Correctly chain up map-to-image/unmap to the image backend
Fixes the infinite recursion reported by jojo.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-directfb-surface.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 728e58e60f89076f626329ee3f006f011783f90b
Author: Martin Robinson <mrobinson@igalia.com>
Date: Thu May 9 10:45:44 2013 -0700
gles: Switch default framebuffer destinations properly
Make _cairo_gl_context_bind_framebuffer handle different types of GLES
surfaces properly Since, the multisampling setting of a surface never changes
in for GLES, so the first thing we do when setting the destination is to
ignore the requested multisampling setting. This simplifies all
following logic.
src/cairo-gl-device.c | 47 +++++++++++++++++++++++++++--------------------
1 file changed, 27 insertions(+), 20 deletions(-)
commit 1704292e493b3c635e115df59d07330d19b39514
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue May 7 12:01:17 2013 -0700
gl: Fix compiler warnings in the GL backend
src/cairo-gl-composite.c | 5 ++++-
src/cairo-gl-glyphs.c | 3 ++-
src/cairo-gl-msaa-compositor.c | 6 ++++--
3 files changed, 10 insertions(+), 4 deletions(-)
commit e83943ec9a06f20572e22105f4e6e44740893eb9
Author: Martin Robinson <mrobinson@igalia.com>
Date: Mon May 6 10:56:26 2013 -0700
gl: Bind the default framebuffer before calling gl{Read|Draw}Buffer
Fix more fallout from separating framebuffer binding from setting the
destination. In some cases it is sufficient to call
glDrawBuffer/glReadBuffer before binding the framebuffer, but the
masking-filling-stroking test of cairo-gl-smoke-tests fails if the order
is incorrect.
src/cairo-gl-device.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
commit 32bd6aa46dc77c497f06d2ab3bf0c2ec218d9e19
Author: Martin Robinson <mrobinson@igalia.com>
Date: Fri Apr 26 15:21:37 2013 -0700
gl: Update transformation when surface size changes
In my previous commit I mistakenly removed the transformation matrix
update when cairo_gl_surface_set_size is called. This change restores
it.
src/cairo-gl-device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 8da704ca7c43dda796657e86c5221736b1983122
Author: Martin Robinson <mrobinson@igalia.com>
Date: Wed Apr 10 22:25:49 2013 +0000
gl: Separate framebuffer bind from destination selection
Disentangle the action of binding the framebuffer from setting the
destination. This straightens up the code a bit and avoids some redundant
operations (such as reacquiring the context) when simply switching from
the multi-sample framebuffer to the single-sample framebuffer and vice
versa.
src/cairo-gl-device.c | 98 ++++++++++++++++++++++++++++--------------------
src/cairo-gl-private.h | 9 +++--
src/cairo-gl-surface.c | 2 +-
3 files changed, 63 insertions(+), 46 deletions(-)
commit 793f8223d4a71f3fc7e74722fb60659e7100a39d
Author: egag <ed44@xs4all.nl>
Date: Wed Apr 24 12:07:47 2013 +0200
xlib: Aquire display before using it in DEBUG message.
src/cairo-xlib-surface.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 498421bec90f68f3d7219b145860a71fd39f0c64
Author: Henry Song <henry.song@samsung.com>
Date: Wed Apr 17 10:23:27 2013 -0700
gl/msaa: Resolve multisampling on surface flush
When flushing a surface, we must resolve multisampling for desktop GL.
This allows use of the original surface texture in any following raw GL
operations. This fixes accelerated canvas with WebKitGTK+ using the MSAA
compositor.
src/cairo-gl-operand.c | 39 +++------------------------------------
src/cairo-gl-private.h | 3 +++
src/cairo-gl-surface.c | 35 +++++++++++++++++++++++++++++++++++
3 files changed, 41 insertions(+), 36 deletions(-)
commit 2dd2c826a5b367d32cf2d48ed69754795990c5db
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Apr 16 10:58:56 2013 +0100
png: Avoid marking the surface as in error after a png warning
It turns out that libpng will continue to load an image after throwing a
warning, and that libpng16 now throws warnings for images that libpng15
and earlier loaded without error. As we were happily loading those
images into cairo surfaces before, we are therefore being overzealous
in throwing an error now - so just squelch the warning.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-png.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
commit a64ce09715162c57d6e4b6a460d426af1d443cdc
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Apr 6 09:09:23 2013 +0100
xlib: Trim uploads for surfaces extended by PAD
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 3 +++
1 file changed, 3 insertions(+)
commit 04b9d5d9b1ab8544fc0918d8ced90dc70641e727
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Apr 6 09:07:24 2013 +0100
xlib: Wrap errors generating sources in an error surface
Once upon a time the wrapping was provided by the caller, but the
current requirement is that the error is propagated back as an error
surface.
Bugzilla: http://bugs.freedesktop.org/show_bug.cgi?id=63196
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit f6efecdfefa161c68fc5bf193a6487fc1a5047d5
Author: Martin Robinson <mrobinson@igalia.com>
Date: Fri Mar 29 11:09:48 2013 -0700
boilerplate/gl: Disable thread awareness
This dramatically speeds up testing on NVidia and actually makes it
possible to run traces within a reasonable amount of time.
cairo-perf-trace results for:
NVIDIA Corporation GeForce GTS 250/PCIe/SSE2 3.3.0 NVIDIA 310.14
Before:
test min(s) median(s) stddev. count
gvim 30.924 31.251 0.72% 5/6
firefox-fishbowl 168.751 201.017 12.46% 8/8
(exited early)
After:
test min(s) median(s) stddev. count
gvim 1.294 1.325 1.79% 6/6
firefox-fishbowl 18.540 19.104 1.54% 6/6
boilerplate/cairo-boilerplate-egl.c | 2 ++
boilerplate/cairo-boilerplate-glx.c | 3 +++
2 files changed, 5 insertions(+)
commit b00b9e82ab728eaf3b87dd1113387d8e8df0d7e3
Author: Martin Robinson <mrobinson@igalia.com>
Date: Thu Apr 4 12:03:19 2013 -0700
boilerplate: Add a mode for running threaded perf tests
This is useful because the GL backend runs much faster on some drivers
when thread awareness is disabled.
boilerplate/cairo-boilerplate.h | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
commit e66e9ac12e3e11af76f14e8de3cfee72d4299864
Author: Marc-André Lureau <marcandre.lureau@gmail.com>
Date: Tue Apr 2 00:32:56 2013 +0200
win32: fix corrupted drawing
Fix src bitmap coordinates, which origin is bottom-left. This is
apparently a bug in StretchDIBits(), according to some comments on
MSDN API documentation.
The backend used to have this coordinate change in the past:
if (!StretchDIBits (dst->dc,
/* dst x,y,w,h */
dst_r.x, dst_r.y + dst_r.height - 1,
dst_r.width, - (int) dst_r.height,
/* src x,y,w,h */
src_r.x, src_extents.height - src_r.y + 1,
src_r.width, - (int) src_r.height,
src_image->data,
&bi,
DIB_RGB_COLORS,
SRCCOPY))
https://bugs.freedesktop.org/show_bug.cgi?id=61876
src/win32/cairo-win32-gdi-compositor.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 0446fae26d35dc4e31aadc498f0f9b48b21d2c45
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Mar 23 11:19:14 2013 +0000
perf: Iteratively prune outliers
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-stats.c | 41 +++++++++++++++++++++++------------------
1 file changed, 23 insertions(+), 18 deletions(-)
commit fdec6b37596d8b064ff082326d7189daa8208052
Author: Michael Hutchinson <m.j.hutchinson@gmail.com>
Date: Fri Mar 29 02:37:33 2013 +0100
quartz: Don't release memory we don't own
This was causing crashes due to double frees.
https://bugs.freedesktop.org/show_bug.cgi?id=62885
Signed-off-by: Benjamin Otte <otte@redhat.com>
src/cairo-quartz-surface.c | 1 -
1 file changed, 1 deletion(-)
commit 9e0748e223cfb8c5557c73f3ab5068ec1323e7c2
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Wed Mar 27 08:08:32 2013 +1030
pdf: fix typo in bbox check
http://lists.cairographics.org/archives/cairo/2013-March/024186.html
src/cairo-pdf-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 59ccc3d72e839bd897111322765bb13696a97ef5
Author: Nicola Fontana <ntd@entidi.it>
Date: Fri Mar 1 14:16:45 2013 +0100
gobject: Add wrapper around cairo_matrix_t
Reviewed-By: Benjamin Otte <otte@redhat.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
util/cairo-gobject/cairo-gobject-structs.c | 4 +++-
util/cairo-gobject/cairo-gobject.h | 4 ++++
2 files changed, 7 insertions(+), 1 deletion(-)
commit be5eabb66a475720020211a6d37bfeb75fc3242c
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Mar 22 18:19:00 2013 +0100
xcb: Clear temporary replay image in recording playback
This gets rid of random noise that we got from the X11 server due to
uninitialized memory.
Fixes: pdf-surface-source, ps-surface-source, svg-surface-source
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
commit 41ef69a98c67a2cb8b64e8ef3bb986d57a0a2437
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Mar 22 14:14:29 2013 +0100
Fix "make check" standalone header check
This fixes the following error:
./cairo-fixed-private.h: In function ‘_slow_segment_intersection’:
./cairo-fixed-private.h:374:9: error: ‘FALSE’ undeclared (first use in this function)
./cairo-fixed-private.h:374:9: note: each undeclared identifier is reported only once for each function it appears in
./cairo-fixed-private.h:386:12: error: ‘TRUE’ undeclared (first use in this function)
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-fixed-private.h | 1 +
1 file changed, 1 insertion(+)
commit b7c06fff1f597ba74fa6618766ec297d3a4bf880
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Mar 22 14:04:44 2013 +0100
boilerplate: rename xcb-render-0.0 to xcb-render-0_0
The test suite uses dots to separate the backend name from the content type.
Thus, the backend name must not contain any dots.
The xlib backend already calls its RENDER 0.0 target xlib-render-0_0 for this
reason. This commit makes the xcb backend match this.
Reported-by: Darxus <darxus@chaosreigns.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
boilerplate/cairo-boilerplate-xcb.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit caf50c07e225ee3a3e149234601e7305b1437736
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Mar 22 13:58:04 2013 +0100
test: Fix handling of dots in CAIRO_TEST_TARGET
Before this, the following happened:
$ CAIRO_TEST_TARGET=image,xcb-render-0.0 make test
Cannot find target 'image'.
Known targets: image, [...]
The reason for this is that _cairo_boilerplate_target_matches_name() doesn't get
a null-terminated string, but instead has a pointer to the end of the string.
However, strpbrk() expects a null-terminated argument and thus could return a
result which points past the end of the input.
This commit fixes exactly this.
Reported-by: Darxus <darxus@chaosreigns.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
boilerplate/cairo-boilerplate.c | 2 ++
1 file changed, 2 insertions(+)
commit 13bd8d09b44e50649f6fc4d58d036bc32c1d5c5b
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Thu Mar 21 16:48:43 2013 -0400
[ft] I meant fabs(), not abs()
src/cairo-ft-font.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit ed6a293e3dd2e81c8e159bf685cce6ffbcd7c81c
Author: Henry Song <henry.song@samsung.com>
Date: Wed Mar 20 15:10:34 2013 +0000
gl: Fix typo in gles2 shader cache lookup
When comparing shader cache entries, it's important that we actually
compare the variable type hash.
src/cairo-gl-shaders.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit ff233fd706e62edf267bee66113e2cb35183bcd9
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Mar 18 14:17:29 2013 -0400
[test] Set font size
Previously this test was working because we were not scaling bitmap
fonts. We do now, so adjust test.
test/bitmap-font.c | 1 +
1 file changed, 1 insertion(+)
commit be347acd5a198b4280f2699a1abfca241e7e610b
Author: Matt Sealey <matt@genesi-usa.com>
Date: Mon Mar 11 10:24:52 2013 -0500
gitignore: negate gitignore for static pkgconfig files
Commit 781f253 adds a rule cairo-*.*.* to .gitignore in the root dir.
Unfortunately this matches several src/cairo-*.pc.in files in the
src directory.
The build system requires these files to be present, but the rule is
allowing them to be ignored. For example, when extracting a cgit
snapshot tarball and checking it into another git repository, these
files get left behind. Any accidental changes to these files will go
unnoticed by a 'git status' (possibly creating bad installs) and
any intentional changes could not be committed (git commit -a will
miss them, and every one will need to be forced). This is not really
desirable.
We don't want to unignore *.pc.in here since there are many, many
autogenerated files with this name, and the cairo-*.*.* rule is in
general quite useful and doesn't warrant modification (although it
could be made a little more specific), so we just make these 4 files
a special case and negate the match with full filenames in src/.
Signed-off-by: Matt Sealey <matt@genesi-usa.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/.gitignore | 4 ++++
1 file changed, 4 insertions(+)
commit 0e999edff869bc08522a6a56c69efa9b5e1c33b5
Author: Matthew Fischer <matthew.fischer@canonical.com>
Date: Sat Mar 9 15:42:59 2013 -0700
Adding a simple usage statement to cairo-perf-chart
Signed-off-by: Uli Schlachter <psychon@znc.in>
perf/cairo-perf-chart.c | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
commit 592f5944239debfa3dacc410f675261947156baf
Author: Uli Schlachter <psychon@znc.in>
Date: Fri Mar 15 16:53:28 2013 +0100
test: Fix CAIRO_REF_DIR
Ever since the test output was moved from test/ to test/output/, using
CAIRO_REF_DIR to make the test suite succeed no longer works. The test suite was
looking for the wrong file names.
This patch makes this work again. However, I am not sure that this really is the
correct fix. It just seems to work. :-)
Reported-by: Darxus <darxus@chaosreigns.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/README | 2 +-
test/cairo-test.c | 5 ++---
2 files changed, 3 insertions(+), 4 deletions(-)
commit c141615a7fa632a2435b49f3949ed1fc9962af1f
Author: Marek Kasik <mkasik@redhat.com>
Date: Fri Mar 15 14:46:19 2013 +0100
cff-subset: Fix allocation of width arrays
fd_default_width and fd_nominal_width
are arrays of doubles not arrays of ints.
src/cairo-cff-subset.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 01a8bf01c6508a4fea8d40371c3049e7a2f7908a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Mar 15 09:08:00 2013 +0000
mempool: Reduce an assert into an error return for get_buddy()
If we ask for a buddy that is outside of our allocation that is an
error that should not happen with a power-of-two allocated zone...
However, since it has been seen in the wild, we can safely return that
there is no buddy rather than die in a too-late assert.
Reported-by: Anton Eliasson <devel@antoneliasson.se>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-mempool.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 2c2dccf5a4d298c866f7c0faed2e10c65252c168
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue Mar 12 15:17:19 2013 -0700
stroke: Use round-joins near inflection points of splines
Similar to b7bd5ae4f3da44131261711bb236cd7aa24a3ae3, but applied to the
fallback stroke shaper.
src/cairo-path-stroke.c | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
commit aadece05fb1cf80f0a1138368f4664e878a59204
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue Mar 12 15:16:01 2013 -0700
stroke: Fix large line widths for fallback stroke shaper
Fix the test case line-width-tolerance for the fallback stroke shaper.
Instead of drawing quads between spline points, draw triangle based on
the actual spline edges. This roughly follows the approach of the
tristrip and polygonal shapers.
src/cairo-fixed-private.h | 34 +++++++++++++++++
src/cairo-path-stroke.c | 90 +++++++++++++++++++++++++++++++++++++++++----
2 files changed, 116 insertions(+), 8 deletions(-)
commit c60e23feb16a8745eaa6d213a89f61ded5707731
Author: Martin Robinson <mrobinson@igalia.com>
Date: Wed Mar 13 17:19:19 2013 -0700
path: Fix a bug in line intersection
Before the intersection code was not taking into account that both
quotients are required to be in the range (0,1) for the segments to
intersect or handling the case of negative numerators and denominators.
src/cairo-path-fixed.c | 39 +++++++++++++++++++++++++++------------
1 file changed, 27 insertions(+), 12 deletions(-)
commit 5ee136b2c067c92e85f04ba0c84966f7760f4556
Author: Martin Robinson <mrobinson@igalia.com>
Date: Fri Mar 8 10:29:55 2013 -0800
gl: Setup operands when the vertex size changes
Previously _cairo_gl_composite_setup_vbo was overwriting the old context
vertex_size, while _cairo_gl_context_setup_operand was relying on it to
determine if the vertex size changed. Instead of a fragile ordering of
statements, pass whether the vertex size changed as an argument to enforce
the calling order via method parameters.
src/cairo-gl-composite.c | 29 +++++++++++++++++------------
1 file changed, 17 insertions(+), 12 deletions(-)
commit f50ced2e7b4b2f4601dc9b9edf1a861401c302e4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Mar 8 14:25:26 2013 +0000
gl: Fix typo s/bool/cairo_bool_t/
One quickly gets used to having stdbool.h available.
src/cairo-egl-context.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 524e6fd3e82d952dfa850b832238a1f4f9ccb8bb
Author: Henry Song <henry.song@samsung.com>
Date: Thu Mar 7 16:33:27 2013 +0000
gl: Export query for EGLContext and EGLDisplay from device
Similar to glx, add query for the EGLContext and EGLDisplay to egl-based
cairo devices.
src/cairo-egl-context.c | 33 +++++++++++++++++++++++++++++++++
src/cairo-gl.h | 6 ++++++
2 files changed, 39 insertions(+)
commit a8f1b456db744e33a10b2301df03528787e5b1ca
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Fri Mar 8 06:21:59 2013 -0500
[FT] Prefer downscaling bitmap glyphs to upscaling
Say, you have bitmap strikes for sizes 50ppem and 100ppem.
To render at 60ppem, it's much better to downscale the 100ppem
bitmap than upscale 50ppem one. Prefer downscaling.
src/cairo-ft-font.c | 15 ++++++++++++---
1 file changed, 12 insertions(+), 3 deletions(-)
commit 4f00d2344c84a1017a1e7d76ccb2fa552c80a969
Author: Jana Saout <jana@saout.de>
Date: Fri Mar 1 20:10:28 2013 +1030
pdf: Fix crash
Bug 61451
src/cairo-pdf-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 7658eced9a45f42033c2b0b45cee70f6edb6ff20
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Feb 24 17:07:54 2013 +0000
xlib: Fix invocation of XRenderFindFormat()
The 'count' parameter is an indication to libXrender of the number of
matches to skip before reporting (rather than a limit on the number to
report). As we only want the first match, always pass 0.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-display.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 446a3dc5c0298e35b9a1e38460bc3804ab6e01ce
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Tue Feb 19 20:59:16 2013 +1030
pdf: add missing 'endobj' to shading dict
https://bugs.launchpad.net/ubuntu/+source/libcairo/+bug/1051939
src/cairo-pdf-surface.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
commit e7e1ac235ff94d184d88c8c206b81343822f6a4e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Feb 19 09:54:24 2013 +0000
image: Compare against the true size of the embedded buffer
When querying whether the run is small enough to fit inside the
pre-allocated temporary buffer, we need to avoid comparing against
sizeof(buf) as buf is a variable length array and so sizeof() is
meaningless.
Reported-by: Edward Zimmermann <Edward.Zimmermann@cib.de>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit fb1abbc4bc25c541cfb1084012a6a185c541c340
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Feb 15 14:04:21 2013 +0000
win32: Free the fallback upon finish
Zozó Teki pointed out that we leak the fallback surface upon finish in
case it was active at the time as the preceding flush would only clear
the damage and not decouple the fallback surface.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/win32/cairo-win32-display-surface.c | 3 +++
1 file changed, 3 insertions(+)
commit 41e646e019911f8e566e4f9963036117750f862f
Author: Henry Song <henry.song@samsung.com>
Date: Tue Jan 29 17:30:25 2013 +0000
gl: disable GL_DITHER
GL_DITHER is enabled by default by spec. Leaving GL_DITHER enabled
causes color pixel mismatch on some drivers by comparing uploading then
readPixels and original image.
src/cairo-gl-device.c | 2 ++
1 file changed, 2 insertions(+)
commit 02b467a28703a0bd68b92fb26f7905bf6a25bf7d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Feb 12 10:46:42 2013 +0000
test: Exercise replaying a recording surface through a flip matrix
test/Makefile.sources | 1 +
test/recordflip.c | 493 ++++++++++++++++++++
test/reference/recordflip-fill-alpha.ref.png | Bin 0 -> 2790 bytes
.../recordflip-paint-alpha-clip-mask.ref.png | Bin 0 -> 340 bytes
test/reference/recordflip-paint-alpha-clip.ref.png | Bin 0 -> 291 bytes
.../recordflip-paint-alpha-solid-clip.ref.png | Bin 0 -> 280 bytes
test/reference/recordflip-paint-alpha.ref.png | Bin 0 -> 242 bytes
test/reference/recordflip-paint.ref.png | Bin 0 -> 93 bytes
test/reference/recordflip-select-font-face.ref.png | Bin 0 -> 2229 bytes
.../reference/recordflip-self-intersecting.ref.png | Bin 0 -> 168 bytes
test/reference/recordflip-text-transform.ref.png | Bin 0 -> 5606 bytes
11 files changed, 494 insertions(+)
commit a09b7c79278465ee1ad916697e0153eae640d8df
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Feb 12 10:25:03 2013 +0000
path: Fix bbox computation for negative scale factors
The fast path for transforming a path by a simple scale factor, forgot
to fix up the orientation of the box if that scale factor was negative.
Reported-by: Edward Zimmermann <Edward.Zimmermann@cib.de>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-fixed.c | 11 +++++++++++
1 file changed, 11 insertions(+)
commit be1561dadece6e947a3ca78d1124197b4278ce96
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Feb 12 10:24:08 2013 +0000
recording: Avoid indirection through indices array if not reduced
If we don't discard any elements, then the index array is simply a 1:1
mapping of the element array, and we may as well bypass it.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-recording-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 14237f11439831377b59e8ea5717de5dd3e19e73
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Feb 12 10:11:12 2013 +0000
spans: Mark the surface as cleared in preparing for recording surface playback
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
commit 7f3cca458a7546f913533f693b581325228aba4e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Feb 10 14:18:47 2013 +0000
Post release version bump to 1.12.15
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 0dac37c41473deafa4a2f154187c5c3d08b07c91
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Feb 10 13:38:28 2013 +0000
1.12.14 release
NEWS | 32 ++++++++++++++++++++++++++++++++
cairo-version.h | 2 +-
2 files changed, 33 insertions(+), 1 deletion(-)
commit 93ddc3a28308bcd9e062178ceb453f26e9228fc4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Feb 10 13:13:31 2013 +0000
tests: Update reference images after adjustments to polygon line clipping
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/clip-nesting.rgb24.ref.png | Bin 937 -> 936 bytes
test/reference/record-fill-alpha.argb32.ref.png | Bin 2736 -> 0 bytes
test/reference/record-fill-alpha.ref.png | Bin 2839 -> 2812 bytes
test/reference/record-fill-alpha.rgb24.ref.png | Bin 2736 -> 0 bytes
.../record1414x-fill-alpha.argb32.ref.png | Bin 4129 -> 0 bytes
.../reference/record1414x-fill-alpha.rgb24.ref.png | Bin 4129 -> 0 bytes
test/reference/record2x-fill-alpha.argb32.ref.png | Bin 5715 -> 0 bytes
test/reference/record2x-fill-alpha.rgb24.ref.png | Bin 5715 -> 0 bytes
test/reference/record90-fill-alpha.argb32.ref.png | Bin 2651 -> 0 bytes
test/reference/record90-fill-alpha.rgb24.ref.png | Bin 2651 -> 0 bytes
test/reference/rel-path.rgb24.ref.png | Bin 216 -> 216 bytes
11 files changed, 0 insertions(+), 0 deletions(-)
commit d4651676e1496f0354acb0ef045e8b65601edf6d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Feb 8 22:17:13 2013 +0000
win32: Clear the similar-image before returning to the user
Our userspace API mandates that surfaces created for the user are
cleared before they are returned. Make it so for the win32 similar image
constructor.
Reported-by: Michael Henning <drawoc@darkrefraction.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=60519
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/win32/cairo-win32-display-surface.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
commit 2d7ac9e737f37daf8490c27e6a04c65bba642645
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Feb 8 15:19:14 2013 +0000
xlib: Only apply the dst offset to the glyph strings once
The elts offset is a delta from the previous glyph coordinate. So by
subtracting the dst origin everytime, we were accumulating a glyph
position error. Instead we just want to offset the starting coordinate
and then always use relative positions.
Reported-by: Theo Veenker <T.J.G.Veenker@uu.nl>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
commit ea16302e45ced56e6f12b8520e9f530e1ffc68c4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Feb 8 13:22:01 2013 +0000
polygon: Avoid computing the unused intersection coordinates
If we only ignore the result of the computed boundary intersection,
because the edge is inside that boundary, then we can simply forgo the
calculation.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-polygon.c | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
commit 8cfbdf2f02ba01d5638a91c9f3f7fc228b402caa
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Feb 8 13:10:25 2013 +0000
polygon: Only rely on the computed boundary intersections for crossing edges
If we need to extrapolate the edge to the boundary, then we run the risk
of an overflow for an immaterial result. So if the edge does not cross
the boundary, we can simply use the corresponding end-point and not emit
the boundary segment.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=60489
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-polygon.c | 35 +++++++++++++++++++++++++----------
1 file changed, 25 insertions(+), 10 deletions(-)
commit 607a15db5df04d10e5be6d06599ec4e9d98d2446
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Feb 7 21:40:30 2013 +0000
gl: Mark up _cairo_gl_composite_set_operator* as private
Add the cairo_private markup to hide the PLT entries and to keep make
check happy.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-private.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 562cc8227feb99b75fb53df7800df66887be129d
Author: Ravi Nanjundappa <ravi.nanjundappa@gmail.com>
Date: Mon Feb 6 10:56:55 2012 +0530
gl/spans: Handle SOURCE operations with opaque sources.
SOURCE operations with an opaque are equivalent to OVER.
This can prevent us from falling back in certain cases.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-spans-compositor.c | 7 +++++++
1 file changed, 7 insertions(+)
commit 4b6b28b5e8b9020c72a60b01ff3340a70dd59478
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Feb 7 10:00:47 2013 +0000
win32: Fix is_win98()
Since the translation into a separate function, its condition was
reversed: that is almost everybody thought they were on a win98 machine
and so had no working AlphaBlend().
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/win32/cairo-win32-device.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 4b54c09c056e5dee65f2cf4e87835eb9127e5b1c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Feb 6 22:16:12 2013 +0000
image: Substitute OVER spans for SOURCE with an opaque pattern
Based on an idea from Ravi Nanjundappa
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
commit 400ea9c2905461067df9e6d27c2e961d47f04676
Author: Martin Robinson <mrobinson@igalia.com>
Date: Wed Feb 6 12:53:14 2013 -0800
gl/msaa: Properly fall back when using CLEAR operator
There are some situations that the MSAA compositor doesn't support using
the CLEAR operator. We should properly fall back in those cases.
src/cairo-gl-msaa-compositor.c | 7 +++++++
1 file changed, 7 insertions(+)
commit 7bee1962f601009c507f987838de1a9dec3d9334
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Tue Feb 5 21:57:52 2013 +1030
type1-subset: in latin subsets replace glyph names with standard names
When using WinAnsiEncoding in PDF the glyphs are keyed by glyph
name. We need to ensure the correct names are used and can't assume
the glyph names in the font are correct.
Bug 60248
src/cairo-type1-subset.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
commit 4cb181d985adbbf79e80ff695adc908810b41544
Author: Henry Song <henry.song@samsung.com>
Date: Tue Jan 29 17:53:38 2013 +0000
gl: do not force flush everytime uploading a glyph image to glyph cache
In normal cases, we want to flush pending operations reading from the
texture before modifying its contents. However during uploading of
glyphs into the glyph cache, we repeatedly modify the texture as we
construct the vbo (whilst referencing it for that operation). We track
unused areas in the glyph cache so that if we run out of space, we can
explicitly flush the pending glyphs and start afresh and avoid having to
flush the operation in common case.
src/cairo-gl-glyphs.c | 2 +-
src/cairo-gl-private.h | 3 ++-
src/cairo-gl-spans-compositor.c | 2 +-
src/cairo-gl-surface-legacy.c | 7 ++++---
src/cairo-gl-surface.c | 16 ++++++++++------
src/cairo-gl-traps-compositor.c | 9 ++++++---
6 files changed, 24 insertions(+), 15 deletions(-)
commit 260c16331a2c7bedbcf35d7f2cbab2f1f4098c87
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Feb 4 10:43:13 2013 +0000
gl: Include the vertex ident in the shader cache hash
As we may specialise the vertex program depending upon details of the
fragment shader, and may have more than one program for the same
combination of fragment sources, we need to include the vertex tag in
the cache entry.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-shaders.c | 49 +++++++++++++++++++++++++++++-------------------
1 file changed, 30 insertions(+), 19 deletions(-)
commit 05ad89f91241b386f72f5b9bac3ebe62faff1d1b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Feb 3 16:51:35 2013 +0000
gl: Replace manual vertex transformation with VS computation of texcoords
Not only is our point transformation code is quite slow (well at least
compared to a real GPU), but by deriving the texture coordinates from
the vertex position we can elide the multiple arrays that we need to
construct and pass to GL - improving performance by eliminating CPU
overhead from needless transforms and data shovelling.
However, not all vertex emission is suitable. For instance, for glyphs
we need to emit discontiguous texture coordinates for each glyph, but
span generation is suitable - which fortuitously also has the largest
vertex density and so benefits the most.
The only real concern is for hardware without true vertex shader support
(e.g. i915) but there we are already invoking the VS to transform the
vertex into the viewport. We would need to eliminate that transform as
well as manually compute the texture coordinates in order to eliminate
the vertex recomputation pass.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-composite.c | 70 +++++++++++++++++++++++++++++----------
src/cairo-gl-msaa-compositor.c | 21 ++++++++----
src/cairo-gl-operand.c | 67 +++++++++++++++++++++++++++----------
src/cairo-gl-private.h | 24 +++++++++-----
src/cairo-gl-shaders.c | 31 ++++++++++++-----
src/cairo-gl-source.c | 3 +-
src/cairo-gl-spans-compositor.c | 6 ++--
src/cairo-gl-traps-compositor.c | 3 +-
8 files changed, 162 insertions(+), 63 deletions(-)
commit d15a71f128c73ce1da19e6ff5a4e2fe044b58749
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Feb 3 12:51:13 2013 +0000
qt: Update for fallback compositor
We now need to explicitly manage fallbacks and to provide an
implementation for map-to-image/unmap-image.
src/cairo-qt-surface.cpp | 210 ++++++++++++++++++++++++++++++----------------
1 file changed, 140 insertions(+), 70 deletions(-)
commit 10110d58cee179cded8e4c4ff8a8d02c477585bd
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Feb 2 08:47:26 2013 +0000
surface: Prevent reads from the user-data arrays during teardown
In a similar fashion to the previous commit, we also need to be wary of
users simply trying to read from a potentially freed user-data array.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-surface.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
commit 18cff63e3d288bf2d7773760f2ab25c80a4a2bc1
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Feb 2 08:47:26 2013 +0000
surface: Prevent writes to the user-data arrays during teardown
As we cleanup the user-data arrays, we call the user provided destroy
notifier callbacks. These callbacks are at liberty to write back into
the parent surface, and in particular try to write into the arrays that
we have just freed. This causes hard to control and fairly unpredictable
use-after-frees in the client, so lets just rule out the dangerous
behaviour.
References:https://bugzilla.mozilla.org/show_bug.cgi?id=722975
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-surface.c | 9 +++++++++
1 file changed, 9 insertions(+)
commit c391093f40472c2300f38d0e5857858f85586b60
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Feb 1 16:31:49 2013 +0000
image: Add a convenience function for creating an image from another's data
The GL backend would like to extract a rectangle from another surface
and convert it to a different pixel format. The
_cairo_image_surface_create_from_image() does that by returning a new
image that has the contents of the specified rectangle in the source
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface-private.h | 7 +++++
src/cairo-image-surface.c | 55 +++++++++++++++++++++++++++++++++++++
2 files changed, 62 insertions(+)
commit 15830fdb1087f18dcd6351de1034a5025b8ed343
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 31 18:50:39 2013 +0000
NEWS: fix a couple of typos
Reported-by: Thierry Vignaud
NEWS | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 28dbafd5643fcf637a556fc196b5b984d44d151d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 31 16:23:24 2013 +0000
Post release version bump to 1.12.13
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit a201a1169f472e822a66275b7dffe62f241d8ec0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 31 15:24:33 2013 +0000
1.12.12 release
NEWS | 24 ++++++++++++++++++++++++
cairo-version.h | 2 +-
2 files changed, 25 insertions(+), 1 deletion(-)
commit 350f9fb5366079113eb8bca947d480362c3ae6be
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 31 15:15:03 2013 +0000
test: Refresh refs for aa noise following reduction of the 2-stage compositing
A side effect of
commit c986a7310bb06582b7d8a566d5f007ba4e5e75bf
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 24 08:55:54 2013 +0000
image: Enable inplace compositing with opacities for general routines
is that we should in theory be reducing the rounding errors when
compositing coverage.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/bug-source-cu.rgb24.ref.png | Bin 3211 -> 3211 bytes
.../reference/clip-stroke-unbounded.argb32.ref.png | Bin 4128 -> 4127 bytes
test/reference/clip-stroke-unbounded.rgb24.ref.png | Bin 3546 -> 3566 bytes
test/reference/mask.argb32.ref.png | Bin 8579 -> 8565 bytes
test/reference/mask.rgb24.ref.png | Bin 7127 -> 7135 bytes
.../record-paint-alpha-clip-mask.argb32.ref.png | Bin 340 -> 0 bytes
.../reference/record-paint-alpha-clip-mask.ref.png | Bin 333 -> 318 bytes
.../record-paint-alpha-clip-mask.rgb24.ref.png | Bin 340 -> 0 bytes
.../reference/record-text-transform.argb32.ref.png | Bin 5579 -> 0 bytes
test/reference/record-text-transform.rgb24.ref.png | Bin 5579 -> 0 bytes
test/reference/record1414x-text-transform.ref.png | Bin 8706 -> 8365 bytes
test/reference/record2x-text-transform.ref.png | Bin 13476 -> 13072 bytes
.../record90-paint-alpha-clip-mask.argb32.ref.png | Bin 343 -> 0 bytes
.../record90-paint-alpha-clip-mask.ref.png | Bin 0 -> 316 bytes
.../record90-paint-alpha-clip-mask.rgb24.ref.png | Bin 343 -> 0 bytes
.../record90-paint-alpha-clip.argb32.ref.png | Bin 296 -> 0 bytes
test/reference/record90-paint-alpha-clip.ref.png | Bin 0 -> 320 bytes
.../record90-paint-alpha-clip.rgb24.ref.png | Bin 296 -> 0 bytes
.../record90-text-transform.argb32.ref.png | Bin 5811 -> 0 bytes
test/reference/record90-text-transform.ref.png | Bin 0 -> 5481 bytes
.../record90-text-transform.rgb24.ref.png | Bin 5811 -> 0 bytes
.../recording-surface-extend-none.argb32.ref.png | Bin 3051 -> 3153 bytes
.../recording-surface-extend-none.rgb24.ref.png | Bin 3128 -> 3145 bytes
.../recording-surface-extend-pad.argb32.ref.png | Bin 10822 -> 11200 bytes
.../recording-surface-extend-pad.rgb24.ref.png | Bin 12582 -> 12586 bytes
...recording-surface-extend-reflect.argb32.ref.png | Bin 23518 -> 23967 bytes
.../recording-surface-extend-reflect.rgb24.ref.png | Bin 23881 -> 23930 bytes
.../recording-surface-extend-repeat.argb32.ref.png | Bin 24047 -> 24091 bytes
.../recording-surface-extend-repeat.rgb24.ref.png | Bin 24038 -> 24075 bytes
.../recording-surface-over.argb32.ref.png | Bin 0 -> 3153 bytes
.../reference/recording-surface-over.rgb24.ref.png | Bin 3128 -> 3145 bytes
.../recording-surface-source.argb32.ref.png | Bin 3044 -> 3153 bytes
.../recording-surface-source.rgb24.ref.png | Bin 3133 -> 3146 bytes
test/reference/stroke-clipped.ref.png | Bin 5886 -> 5790 bytes
34 files changed, 0 insertions(+), 0 deletions(-)
commit 22b7fae0368ba6cff23b2ebdf58bd7d1bfdfbd6f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 31 14:19:53 2013 +0000
image: Add a reference for the clone's parent image
We use the parent as a flag during map-to-image/umap-image that the
resultant image came from a fallback rather than as direct call
to the backend's map_to_image(). Whilst we use it as a simple flag,
we need to make sure the parent surface obeys the reference counting
semantics and is consistent for all callers.
Unlike other users of the parent pointer, there is no resource sharing
between the two surfaces.
Reported-by: Henry Song <henry.song@samsung.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
commit ec58fde294afd52c89fa5ed21ba2611edfdbd550
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 31 14:06:48 2013 +0000
perf: Synchronize before stopping the timers
Fixes a regression from
commit 2855ff4666922f2c38505414270d47f659b0d499
Author: Andrea Canciani <ranma42@gmail.com>
Date: Wed Aug 31 16:42:03 2011 +0200
perf: Reuse cairo-time
which dropped the essential call to synchronize when refactoring the
code.
Reported-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf.c | 3 +++
1 file changed, 3 insertions(+)
commit 2560c0b6577a6380ef175cf18bb804913784632c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 23:51:44 2013 +0000
xlib/shm: More clarification of seqno required
Everytime I read the predicate wrong, but hopefully, this time I have it
right!
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 91834fbdee40f46e18d071fd2671a7a642e6aa86
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 22:12:00 2013 +0000
xlib/shm: Clarify testing of seqno
Rename the seqno tests into seqno_passed(), seqno_before() and
seqno_after() in order to clarify their semantics.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 2 +-
src/cairo-xlib-surface-shm.c | 20 ++++++++++++++++----
2 files changed, 17 insertions(+), 5 deletions(-)
commit 89092b97b50a7740058d0f72f94dfc6defe15ed6
Author: Henry Song <henry.song@samsung.com>
Date: Tue Jan 29 13:21:00 2013 -0800
gl/msaa: Don't emit alpha when emitting vertices
The color attribute is disabled when not in spans mode, so the emitted
alpha is simply overwritten by the next vertex. Additionally, this can
potentially cause the alpha to be written past the end of the buffer.
src/cairo-gl-composite.c | 24 +++++++++++-------------
1 file changed, 11 insertions(+), 13 deletions(-)
commit 74a19c527c1fa07ade2042a8d2acecbb5f6ccab1
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 10:31:05 2013 +0000
configure: Include X11.h before testing for usability of Xrender.h
On Solaris at least, the Xrender.h header is not standalone and requires
X11/X.h to be included first to define the essential types.
Reported-by: Andreas F. Borchert <bugzilla@andreas-borchert.de>
Bugzilla; https://bugs.freedesktop.org/show_bug.cgi?id=58199
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 41ae904461e344fbfa3be3d276a7102bb4304b19
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 03:52:02 2013 +0000
xlib/shm: Appease the compiler for a 'maybe used uninitialised' variable
Initialise shm during its declaration so that it is indeed initialised
for the cleanup after every path.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
commit 9b92625151ca75a6ee10f231f83b53f67a371947
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 03:49:56 2013 +0000
xlib/shm: Simplify uploading of SHM image data
Make sure that we simply copy from the SHM segment into the target
drawable, and not inadvertently stage it through another SHM buffer.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 22 ++++++++++++----------
1 file changed, 12 insertions(+), 10 deletions(-)
commit c006b886d28a772d7a62cec52ab7e0c8196c36f6
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 03:01:31 2013 +0000
xlib/shm: Force synchronisation for scratch SHM image buffers
The scratch image buffers are used for uploads to the xserver and so we
must be careful not to overwrite active SHM segments. Unfortunately we
told the core SHM allocator that we would sync before using the images,
which was a lie.
Reported-by: Michael Natterer <mitch@gimp.org>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit fd59e6d86a3a1fc6720316f20deb8a0bd6f7b767
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 03:00:46 2013 +0000
xlib/shm: Always request a CompletionEvent from ShmPutImage
...and treat is as an expected event for synchronisation.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 11 +++--------
src/cairo-xlib-surface.c | 3 +--
2 files changed, 4 insertions(+), 10 deletions(-)
commit a364a106b257c4493ba7b3badacc63599ba6064a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 02:52:10 2013 +0000
xlib/shm: Tidy up destroying the mempool for a shm block
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 02a2baa8dcf49ad2d9766d43578ba216fab0d464
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 02:51:25 2013 +0000
xlib/shm: Tidy creation of the proxy source for ShmPixmaps
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
commit 30e950515171b25d9bc3da8d535cfe05d8be69c8
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 02:49:26 2013 +0000
xlib/shm: Skip creating new SHM segments if the data is already in the xserver
If the image is already inside a SHM segment, but the image format does
not match the surface, fallback to the XRender paths in order to perform
colorspace conversion on the data already inside the Xserver.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 4 ++++
1 file changed, 4 insertions(+)
commit 1d1af825bb4fcfd7c4a54b65292734ba244e096d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 29 02:47:48 2013 +0000
xlib/shm: Tighten mark-active to the actual CopyArea on the ShmPixmap
Along the draw_image_boxes() upload path, we were actually marking the
ShmPixmap as still active for the subsequent drawing operation - which
could in theory never be submitted...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 3c18bae20ee2fea24d75f6986390ef8157d0207d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jan 28 10:03:54 2013 +0000
perf; Do not allow the backends to optimize away the clear before sync
The importance of writing to the scratch surface before retrieving an
image is that it makes that the write lands in the server queue, as well
as the GetImage, in order to serialise the timer against all the
operations.
Reported-by: Siarhei Siamashka <siarhei.siamashka@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf-trace.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
commit d9d5adec256b3935e4f261d81c37c77a2649248b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 27 16:51:52 2013 +0000
image: And more fallout from c986a73, restore the absent short runs
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 34 ++++++++++++++++------------------
1 file changed, 16 insertions(+), 18 deletions(-)
commit 1ba9fb6fadcc1cb619af0ef974dffb0ff8672244
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 27 16:15:35 2013 +0000
Mark _cairo_path_is_simple_quad as private
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-fixed-private.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 1d105f215a9c62f5b60541da209bf71182a2e9df
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 27 16:29:44 2013 +0000
image: Fix opaque span fills
I should have realised the previous result was too good to be true!
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit c986a7310bb06582b7d8a566d5f007ba4e5e75bf
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 24 08:55:54 2013 +0000
image: Enable inplace compositing with opacities for general routines
On a SNB i5-2500:
Speedups
========
firefox-chalkboard 34284.16 -> 19637.40: 1.74x speedup
swfdec-giant-steps 778.35 -> 665.37: 1.17x speedup
ocitysmap 485.64 -> 431.94: 1.12x speedup
Slowdowns
=========
firefox-fishbowl 46878.98 -> 54407.14: 1.16x slowdown
That slow down is due to overhead of the increased number of calls to
pixman_image_composite32() (pixman_transform_point for analyzing the
source extents in particular) outweighing any advantage gained by
performing the rasterisation in a single pass and eliding gaps. The
solution that has been floated in the past is for an interface into
pixman to only perform the analysis once and then to return a kernel to
use for all spans.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 190 ++++++++++++++++++++++++++++------
src/cairo-spans-compositor-private.h | 2 +-
2 files changed, 162 insertions(+), 30 deletions(-)
commit cfe0e59663c71a6ecd0c976797ac32339e363af2
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue Jan 22 20:09:01 2013 -0800
gl/msaa: Add a fast path for fills that are simple quads
Instead of invoking Bentley-Ottman for fills that are simple
quadrilaterals, just pass the geometry straight to OpenGL.
src/cairo-gl-msaa-compositor.c | 45 +++++++++++--
src/cairo-path-fixed-private.h | 17 +++++
src/cairo-path-fixed.c | 136 ++++++++++++++++++++++++++++++----------
3 files changed, 158 insertions(+), 40 deletions(-)
commit 1e3424cfd1fea3f9aa2b1c8af4bb72239a94f365
Author: Henry Song <henry.song@samsung.com>
Date: Tue Jan 22 14:54:38 2013 -0800
gl: Use GL_ALPHA textures for CAIRO_CONTENT_ALPHA glyph caching
It's safe to us GL_ALPHA for glyph caching surfaces, since Cairo only
uses them for texture uploading. This saves a little bit of memory.
src/cairo-gl-glyphs.c | 16 ++++++++--------
src/cairo-gl-private.h | 6 ++++++
src/cairo-gl-surface.c | 38 +++++++++++++++++++++++++++++++-------
3 files changed, 45 insertions(+), 15 deletions(-)
commit a44b8bd70683a92d862b11c2d7359ce2b0a6a968
Author: Henry Song <henry.song@samsung.com>
Date: Fri Jan 25 12:45:10 2013 -0800
gl: Fix typos in multisampling detection
Instead of looking for the EXT_framebuffer_multisample, this code should
look for GL_EXT_framebuffer_multisample. GL_ARB_framebuffer_object also
contains all necessary API for using multisampling, so we don't need to
check for both it and the GL_EXT_framebuffer_blit and
GL_EXT_framebuffer_multisample pair.
src/cairo-gl-device.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit bb4072046016610a510373df3b67cdeb2ac1b583
Author: Henry Song <henry.song@samsung.com>
Date: Fri Jan 25 11:55:10 2013 -0800
gl/msaa: Fix a memory leak in _clip_to_traps
We need to clean up the polygon we create when decomposing a path into
trapezoids.
src/cairo-gl-msaa-compositor.c | 2 ++
1 file changed, 2 insertions(+)
commit 7054c9969cb0e41845635d6658935da223899f08
Author: Henry Song <henry.song@samsung.com>
Date: Wed Jan 16 15:32:32 2013 +0100
gl: Don't query the display when checking if the context changed
If display has changed, the associated context must change. A
context is tied a display so we can avoid this check, eliminating
unnecessary work during context acquisition and release.
src/cairo-egl-context.c | 13 ++++---------
src/cairo-glx-context.c | 13 ++++---------
2 files changed, 8 insertions(+), 18 deletions(-)
commit fa4f48cccb6c7f4e1afb2ff4b98b906b7d8d4afc
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 23 15:04:26 2013 +0000
xlib: Do not upload the whole image just because we want an entire row
Fixes regression exposed by
commit a73e7ff0186176bc82cd3ae1432c054c1fd3aebd
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 6 11:29:27 2013 +0000
xlib: Simplify source creation by use of map-to-image
but ultimately from
commit 74941f822015cc50cd8477d0cf97f1a70dbff60b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 2 22:27:55 2013 +0000
xlib: Use SHM transport for ordinary image uploads
Reported-by: Gökçen Eraslan <gokcen.eraslan@gmail.com>
Reported-by: Guillaume Ayoub <guillaume.ayoub@kozea.fr>
Reported-by: Emmanuel Benisty <benisty.e@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59635
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 8 +++++++-
src/cairo-xlib-surface.c | 24 +++++++++++-------------
2 files changed, 18 insertions(+), 14 deletions(-)
commit ed2fa6b16b03fccc3e21598cdb9157cbcebd1d37
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 16 20:58:46 2013 +0000
version: Post-release bump to 1.12.11
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 2d6204c67d4d0d9c5d03087c4c1609a81ef1fdb7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 16 20:22:38 2013 +0000
1.12.10 release
NEWS | 49 +++++++++++++++++++++++++++++++++++++++++++++++++
cairo-version.h | 2 +-
2 files changed, 50 insertions(+), 1 deletion(-)
commit 1dfea39841fc6d545e45420b1999239f29556c05
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue Jan 15 17:12:23 2013 -0800
gl: Follow up fix for the previous commit
Handle "fake" surfaces created by _cairo_gl_pattern_to_source which just
embed a GL backend operand. These surfaces do not have a backend, so we
should not fall back if a surface without a backend is not a texture
surface.
src/cairo-gl-operand.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 769ea3b2c757adc9f8f348fdc93bb46f35c2f6b8
Author: Henry Song <henry.song@samsung.com>
Date: Wed May 2 21:54:55 2012 +0200
gl: Support for non-texture sources and masks
If a GL surface is not a texture and is used as source or mask,
fall back to using an image surface as an intermediary.
Fixes subsurface-image-repeat, subsurface-modify-child,
subsurface-modify-parent, subsurface-outside-target, subsurface-pad,
subsurface-reflect, subsurface-repeat, and subsurface-scale.
src/cairo-gl-operand.c | 3 +++
1 file changed, 3 insertions(+)
commit d01a502710296c9b15755f445f6fdda289a2df0b
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue Jan 15 12:07:33 2013 -0800
gl/msaa: Check for more extensions before using MSAA
The MSAA compositor is implicitly relying on the existence of several
OpenGL extensions. This change makes those dependencies explicit.
src/cairo-gl-device.c | 33 +++++++++++++++++----------------
1 file changed, 17 insertions(+), 16 deletions(-)
commit 768b81b78eabbebb1bb443355441cac567739035
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jan 14 03:27:11 2013 +0000
script: Set decompression length prior to calling decompressors
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59224
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-script/cairo-script-operators.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 6639c1231072d71d33eb0952bae5f95e7480cd0d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 13 22:48:30 2013 +0000
xlib: Initialise Pixmap for proxy sources
So that we do not try to tell X to free a garbage pixmap and promptly
kill us.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit fd34f420ec3ba02eb39f22f6551705ab23ebfc28
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 13 18:16:17 2013 +0000
compositor: Pass back the internal failure
In order to pass back a CAIRO_INT_STATUS_UNSUPPORTED, we need to use the
internal error surface creation functions as they do not assert on
private error codes.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-mask-compositor.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 14c32ee1cf6bfcaeb07d50a80b6d5a388a1f2885
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 13 18:11:31 2013 +0000
compositor: Convert image surface into backend source
Before passing a surface to the backend composite functions, they expect
them to be a native source. The copy'n'paste code for the mask
compositor forgot to perform the conversion upon the clip surfaces,
which originally were native to the backend and are now images.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-mask-compositor.c | 61 ++++++++++++++++++++++++++++++++-----------
1 file changed, 46 insertions(+), 15 deletions(-)
commit 7012334ebb424b619312e1fa397cc3b8a3ffd770
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 13 17:20:24 2013 +0000
xlib: Handle lack of XRenderFillRectangles
Remember to check for a supported render version before making a
FillRectangle request, and fallback to the core protocol where possible
instead.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-core-compositor.c | 79 +++++++++++++++++++++++++++---------
src/cairo-xlib-private.h | 15 ++++++-
src/cairo-xlib-render-compositor.c | 30 +++++++++++---
src/cairo-xlib-source.c | 70 +++++++++++++++++++++++++++-----
4 files changed, 157 insertions(+), 37 deletions(-)
commit 503b6b9e2ea65805a77d527c00cf242ec86d479b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jan 11 13:10:56 2013 +0000
xlib: Only fallback through the mask intermediate if we can composite the mask
Before rendering into the mask, we should first check whether the
subsequent call to composite the mask will trigger a fallback. In that
case, we should fallback earlier and do the operation in place.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-compositor-private.h | 3 +++
src/cairo-mask-compositor.c | 27 +++++++++++++++++++++++----
src/cairo-xlib-render-compositor.c | 24 ++++++++++++------------
3 files changed, 38 insertions(+), 16 deletions(-)
commit 1bcd59ef4c9dceaefa51ec6db1f5240d75940724
Author: Martin Robinson <mrobinson@igalia.com>
Date: Wed Jan 9 14:16:59 2013 -0800
gl/msaa: Rely on the stencil buffer to cache the clip
When using a texture surface the depth/stencil buffer is private to
cairo so we can rely on the fact that any previously painted clip is
still valid.
We also only scissor when there's a previously painted clip on the
stencil buffer, otherwise we disable the scissor test. This fixes a few
test cases.
src/cairo-gl-composite.c | 58 ++++++++++++++++++++++++++++------------
src/cairo-gl-msaa-compositor.c | 4 +++
src/cairo-gl-private.h | 1 +
3 files changed, 46 insertions(+), 17 deletions(-)
commit d524697ede85d36e4f88fa44d6a8b884685d804b
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue Jan 8 17:08:52 2013 -0800
gl/msaa: No need to set the clip when masking
After 5e9083f882859201c5df18fc870577a224f88cbb there's no need to set a
clip on the cairo_gl_composite_t when masking. Clips are converted to
traps and rendered directly when masking now.
src/cairo-gl-msaa-compositor.c | 1 -
1 file changed, 1 deletion(-)
commit 17418371b6755ef22b6d0c5787f71de3005e0730
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 9 15:06:28 2013 +0000
xcb: _cairo_scaled_font_reset_cache does it own locking
So we can drop ours.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xcb-surface-render.c | 2 --
1 file changed, 2 deletions(-)
commit dd20c1f4d6419238bbb37fb93a48986f83c6e6c2
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 9 12:38:09 2013 +0000
xlib: map-to-image requires an extents
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 351a9e756d0863ae7408c6d43a622620daa0c354
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 9 12:31:10 2013 +0000
stroke: Flip the dev slope as well for computing the cusp on a degeneracy
Otherwise, the join think it starts and end in exactly the same
direction and elimiates the round capping.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-traps.c | 2 ++
1 file changed, 2 insertions(+)
commit 14720cd0dbc325a2140fbd5b2a7ce4b257ae5f5e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 9 12:11:25 2013 +0000
gstate: Use the polygon intermediate for geometry queries
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gstate.c | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
commit a942938e90a219a0b88153f9fa96c606ce644ef1
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 9 00:36:13 2013 +0000
scaled-font: Fix use after free when clearing the glyph cache
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit c5b353c3725a1a8c116b790df4206f060d64eb5c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 22:56:28 2013 +0000
scaled-font: Make reset-font-cache threadsafe
Stop trying to workaround the destroy-callback requiring the font mutex
as we already hold the mutex whilst cleaning up the font caches.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 66 ++++++++++++++++++++++-------------------------
1 file changed, 31 insertions(+), 35 deletions(-)
commit d1184b69e8871180b7b357a02d1a0bed3e68d897
Author: Martin Robinson <mrobinson@igalia.com>
Date: Thu Feb 2 20:38:51 2012 -0800
gl: Do less work when acquiring and releasing devices
After acquiring a GL device and the same GL context, surface, and
display combination is already active outside of Cairo, do not ask EGL
or GLX to change the current context as that may cause a flush on some
drivers. Also do not unset the context when releasing the device for the
same reason.
src/cairo-egl-context.c | 64 +++++++++++++---
src/cairo-glx-context.c | 78 ++++++++++++++++----
test/Makefile.sources | 1 +
test/gl-device-release.c | 182 ++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 301 insertions(+), 24 deletions(-)
commit 7401455cb4136473521b9f33b09944aa0bc66971
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 17:52:04 2013 +0000
image: Allocate a temporary buffer for inline span composition
Allow the inpline span compositor to operate on wider images than its
temporary buffer by allocating a scanline mask.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 24 ++++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
commit 0d38518c38fec68a1fa8cf9d3ae946faa08d6c42
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 18:52:08 2013 +0000
scaled-font: Remove a non-threadsafe double-freeze assert
Sadly we cannot check ahead of acquiring the lock whether we hold the
lock. Just have to rely on lockdep.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 1 -
1 file changed, 1 deletion(-)
commit e4acba6d1ddfe1c6d27b5a77edccea9d69b178f8
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 16:38:11 2013 +0000
xlib/shm: Only destroy an existing damage
_cairo_damage_destroy() does not like to be passed a NULL.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
commit 2ed484817ef3a5084dc65a2ae1acdef551acd107
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 16:06:02 2013 +0000
xlib/shm: Discard damage upon shm finish
Both to make sure we do not leak the memory, but to also prevent
_cairo_xlib_surface_put_shm() from operating upon the finished shm
surface after the display is closed.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=58253
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-damage-private.h | 3 +++
src/cairo-damage.c | 7 +++++++
src/cairo-xlib-surface-shm.c | 3 +++
3 files changed, 13 insertions(+)
commit b5dcc8ce4450de1e48fd0586fddb5ed658719b28
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 11:20:08 2013 +0000
scaled-font: Hold the scaled font mutex whilst reaping from the global cache
If we need to reap the global cache, this will call back into the scaled
font to free the glyph page. We therefore need to be careful not to run
concurrently with a user adding to the glyph page, ergo we need locking.
To complicate matters we need to be wary of a lock-inversion as we hold
the scaled_font lock whilst thawing the global cache. We prevent the
deadlock by careful ordering of the thaw-unlock and by inspecting the
current frozen state of the scaled-font before releasing the glyph
page.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
commit c4ea7b13b406bf0ea1dc9b337010131d3704bc4a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 13:35:43 2013 +0000
scaled-font: Assert if attempting to finish a frozen font
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
commit 4d4bf8fddff49d349e03282ffa827f6f4659e3fe
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 14:56:07 2013 +0000
scaled-font: Free the cached glyphs from the font before taking the global lock
In the case of a recording surface we may recurse into the global glyph
cache so we need to be careful and stage the ordering of how we free the
glyphs. So first we finish any information and surfaces from the scaled
font glyph cache (and so triggering recursion into other scaled fonts)
and then take the global cache and remove our pages.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54950
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
commit 44a093eb95c950b0e8f2d7d1cdb9719cb8a550f7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 14:58:41 2013 +0000
scaled-font: Always hold the mutex even for single glyph probes
The freeze/thaw routines have a side-effect of managing the global glyph
cache in addition to taking the mutex on the font. If we don't call
them, we may end up indefinitely keeping the global glyph cache frozen
(effectively leaking glyphs to the maximum of all open fonts) and
triggering asserts.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 41 +++++++++++++++++++++--------------------
1 file changed, 21 insertions(+), 20 deletions(-)
commit 80cc532271d7e94ad02732841fbcdc811cce8754
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 13:47:23 2013 +0000
script: Thaw the scaled font cache on the error path
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-script-surface.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit e1307da8616027004dd6c901017a667b1503781d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 12:53:24 2013 +0000
script: Simply exchange source/dest images for _set_source_image
But note we can only do the exchange if they do indeed match and
there are no other references (the objects are only on the stack).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-script/cairo-script-operators.c | 19 ++++++++++++++-----
1 file changed, 14 insertions(+), 5 deletions(-)
commit 146da77d85b304651949a819bc8b0a74819f0416
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Jan 8 12:19:33 2013 +0000
script: Attempt to decompress images in place
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf-trace.c | 16 +-
util/cairo-script/cairo-script-interpreter.h | 7 +
util/cairo-script/cairo-script-operators.c | 391 +++++++++++++++-----------
3 files changed, 247 insertions(+), 167 deletions(-)
commit 5f2e89660d5e38d8e2682945962521958f150825
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jan 7 13:11:06 2013 +0000
image: Call pixman without a mask for opaque regions of inplace_spans
Speedups
========
firefox-paintball 59462.09 -> 40928.76: 1.45x speedup
firefox-fishtank 43687.33 -> 34627.78: 1.26x speedup
firefox-tron 52526.00 -> 45754.73: 1.15x speedup
However in order to avoid a regression with firefox-talos-svg we need to
prevent splitting up the scanline when using a gradient source.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 57 ++++++++++++++++++++++++++++++++++--------
1 file changed, 47 insertions(+), 10 deletions(-)
commit a73e7ff0186176bc82cd3ae1432c054c1fd3aebd
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 6 11:29:27 2013 +0000
xlib: Simplify source creation by use of map-to-image
We were open-coding the functionality of map-to-image inside the source
creation routines. so refactor to actually use map-to-image instead.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 92 +++++++++++++++++------------------------------
1 file changed, 33 insertions(+), 59 deletions(-)
commit 4f142f3a7bf24b659c5caccab3a1aedd6b680909
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jan 6 10:32:25 2013 +0000
xlib/shm: Only mark the shm pixmap as active if we upload into it
Be more strict with when we mark the pixmap as active so that we only
wait for the actual XCopyArea involving the pixmap to complete.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)
commit 45a4b42a361eb791c571b201e11c3505a0a1a396
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jan 4 17:32:46 2013 +0000
script: Recompress strings using LZO whilst binding traces
Try using the lighter-weight LZO decompressor in an effort to speed up
replays (at the cost of making the bound traces slightly larger).
Presuming that with the slight increase in file size (from -1% to +10%),
the file data remains in the readahead buffer cache, replays see a
performance improvement of between 5-10%.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 12 ++
util/cairo-script/Makefile.am | 2 +-
util/cairo-script/cairo-script-file.c | 32 ++++-
util/cairo-script/cairo-script-objects.c | 3 +
util/cairo-script/cairo-script-operators.c | 45 +++++--
util/cairo-script/cairo-script-private.h | 5 +
util/cairo-script/cairo-script-scanner.c | 184 +++++++++++++++++++++-------
7 files changed, 227 insertions(+), 56 deletions(-)
commit 9194904fa838a115b4dc58e5bff7a235cc2a9a7a
Author: Martin Robinson <mrobinson@igalia.com>
Date: Fri Jan 4 16:31:01 2013 -0800
gl: Better handling of clear surfaces
When clearing a GL surface, set is_clear to true, and when mapping to an
image, handle is_clear like surfaces without modification. Additionally,
explicitly clear surfaces created via cairo_surface_create_similar.
src/cairo-gl-surface.c | 43 +++++++++++++++++++++++++++++++++++++------
1 file changed, 37 insertions(+), 6 deletions(-)
commit 9bff4508443abe002fcb0ffdb9b1897272f1c588
Author: Martin Robinson <mrobinson@igalia.com>
Date: Fri Jan 4 15:47:13 2013 -0800
boilerplate/glx: Add a target with multisampling and stencil support
Add a gl-window target that supports multisampling. This is useful for
testing the MSAA backend on the default framebuffer.
boilerplate/cairo-boilerplate-glx.c | 170 ++++++++++++++++++++---------------
1 file changed, 96 insertions(+), 74 deletions(-)
commit 8cd604e18adc1dbe22303d5c57dae374d7e8cd2b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jan 4 14:03:40 2013 +0000
gobject: Fix my typo s/TEST/TEXT/ in the previous commit
Again reported by Kouhei Sutou, who I am grateful for his deligence.
util/cairo-gobject/cairo-gobject.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit a4f221498c20bd9bd6178fddc1ba481ff3fd6cb3
Author: Kouhei Sutou <kou@clear-code.com>
Date: Fri Jan 4 12:18:29 2013 +0000
gobject: Fix "text_cluster_flags_get_type" typo
The macro missed the text from the name, rendering it useless.
util/cairo-gobject/cairo-gobject.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 9dde964553f74ccbc037b13ca83d0abb46adb194
Author: Henry Song <henry.song@samsung.com>
Date: Thu Jan 3 16:03:55 2013 -0800
gl/msaa: Only clear parts of the stencil buffer we will use
Writing to the stencil buffer can be expensive, so when using the
stencil buffer for clipping only clear the clip extent. When using the
stencil buffer to prevent overlapping rendering during stroking, only
clear the approximate stroke extents.
src/cairo-gl-composite.c | 17 ++++++++++-------
src/cairo-gl-msaa-compositor.c | 34 ++++++++++++++++++++++++++++++----
src/cairo-gl-private.h | 4 ++++
3 files changed, 44 insertions(+), 11 deletions(-)
commit 5e9083f882859201c5df18fc870577a224f88cbb
Author: Alejandro G. Castro <alex@igalia.com>
Date: Wed Mar 7 14:38:52 2012 +0100
gl/msaa: Avoid the stencil buffer when possible during masking
In this case we can draw the clip path and avoid the stencil buffer,
which can be expensive.
src/cairo-gl-msaa-compositor.c | 68 +++++++++++++++++++++++++++++++---------
1 file changed, 53 insertions(+), 15 deletions(-)
commit dd850583a7f57a666da6af218841bb10b536df46
Author: Henry Song <henry.song@samsung.com>
Date: Tue Mar 13 08:43:24 2012 -0700
gl/msaa: Add full support for masking with the SOURCE operator
Since OpenGL does not have a means to represent a masking SOURCE
operation in one step, we use two steps combined with the ADD
operator.
src/cairo-gl-composite.c | 108 ++++++++++++++++++++++++----------------
src/cairo-gl-msaa-compositor.c | 84 ++++++++++++++++++++++++++++---
src/cairo-gl-private.h | 9 ++++
3 files changed, 152 insertions(+), 49 deletions(-)
commit c743e93451f467782b861c67a6894df26082d5c6
Author: Chuanbo Weng <chuanbo.weng@intel.com>
Date: Wed Jan 2 18:03:44 2013 +0100
gl: Support the GL_IMG_texture_npot extension
This extension, used by older PowerVR drivers, is functionally
equivalent to the GL_OES_TEXTURE_NPOT extension.
src/cairo-gl-device.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit ae1724ced98b86aaf97c7be9c4294fa3823d7350
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 3 13:46:20 2013 +0000
Add missing local slim proto for cairo_recording_surface_create
Dependency introduced in 749ef6be4d11b95d666b0e5fe06df926b828d655
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairoint.h | 1 +
1 file changed, 1 insertion(+)
commit 872a92b874270ac3b83b0e206fb5b15a7405502a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 3 13:30:13 2013 +0000
scaled-font: Mention ownership of returned object from get_font_face()
As suggested by Simon Sapin.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 734a541dc34565f40fe0ae4e93c81c4849198a79
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 3 13:01:34 2013 +0000
xlib: Avoid copying the source twice if it is an image
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 37 +++++++++++++++++++++++++++----------
1 file changed, 27 insertions(+), 10 deletions(-)
commit ecc8c28b24cb5fcd85aee5d4c82b9ad72c87fa69
Author: Kouhei Sutou <kou@clear-code.com>
Date: Thu Jan 3 12:37:43 2013 +0000
gobject: Add the correct macro name for the hint-metrics type
s/CAIRO_GOBJECT_TYPE_HNT_METRICS/CAIRO_GOBJECT_TYPE_HINT_METRICS/
However, as we have already released the broken headers, we need to
preserve that mistake in case applications are already using. Since it
is just a #define, there is little associated cost with carrying both
the incorrect spelling and the corrected define.
util/cairo-gobject/cairo-gobject.h | 2 ++
1 file changed, 2 insertions(+)
commit 5bc1b1f6aac108d9a3963352ad774bb4fcd69e28
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 24 17:22:34 2012 +0100
stroke: Make the incremental trapezoid stroker optionally available again
Whilst it cannot handle self-intersecting strokes (which includes the
antialias region of neighbouring lines and joints), it is about 3x
faster to use than the more robust algorithm. As some backends delegate
the rendering, the quality may still be preserved and so they should be
responsible for choosing the appropriate method for generation of the
stroke geometry.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-cogl-surface.c | 6 +-
src/cairo-path-stroke-traps.c | 1120 ++++++++++++++++++++++++++++++++++++
src/cairo-path-stroke.c | 12 +-
src/cairo-recording-surface.c | 12 +-
src/cairo-rectangle.c | 2 +-
src/cairo-stroke-style.c | 39 ++
src/cairo-traps-compositor.c | 37 +-
src/cairo-traps-private.h | 9 +
src/cairo-traps.c | 252 ++++++++
src/cairoint.h | 21 +-
src/test-base-compositor-surface.c | 8 +-
12 files changed, 1489 insertions(+), 30 deletions(-)
commit 74941f822015cc50cd8477d0cf97f1a70dbff60b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jan 2 22:27:55 2013 +0000
xlib: Use SHM transport for ordinary image uploads
In theory this should just save a single copy, however PutImage will
break up requests into a series of scanlines requests which is less
efficient than the single-shot transfer provided by ShmPutImage.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 100 +++++++++++++++++++++++++++++++++++-----------
1 file changed, 77 insertions(+), 23 deletions(-)
commit bf2a04c5ab91c93d4d188afd030b3004c67a180f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jan 3 12:24:14 2013 +0000
xlib/shm: Fix typo in creation of a SHM image
Pass along the size the caller requests, not the size of the related
drawable.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
commit c29ab389fb2b3b91c895f2df684b0e9af8225d12
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Dec 30 12:32:45 2012 +0000
gl: Provide a fast emitter for solid spans
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-composite.c | 55 +++++++++++++++++++++++++++++++++++++++++-----
1 file changed, 50 insertions(+), 5 deletions(-)
commit d3848521c497dbcd3d9ae0fab34fa70c72752e60
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Dec 30 12:32:45 2012 +0000
gl: Provide a fast emitter for solid glyphs
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-composite.c | 62 ++++++++++++++++++++++++++++++++++++----------
1 file changed, 49 insertions(+), 13 deletions(-)
commit 127dd466695dcb05e6178e4ed2471dba1b229d17
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Dec 30 12:21:11 2012 +0000
gl: Use vfunc for vertex emission
In order to overload the emitters in future to provide specialised
routines for the common types of operands, begin by switching the
current users over to a vfunc interface.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-composite.c | 107 +++++++++++++++++++++++++++---------
src/cairo-gl-glyphs.c | 11 ++--
src/cairo-gl-private.h | 48 +++++++++-------
src/cairo-gl-spans-compositor.c | 115 +++++++++++++++++++++------------------
src/cairo-gl-surface.c | 2 +-
src/cairo-gl-traps-compositor.c | 21 +++----
6 files changed, 190 insertions(+), 114 deletions(-)
commit 9558cb62c6a3ed59a53f00f740a261251b9b64b2
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Dec 29 18:30:48 2012 +0000
perf/chart: Contract the default output filenames
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf-chart.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
commit fbd4864995e261a4cfc5e53273b53ce8a22d72db
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Dec 29 18:30:48 2012 +0000
perf/chart: Show the geometric average as an extra column
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf-chart.c | 112 ++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 111 insertions(+), 1 deletion(-)
commit 71028865fae38bf26c45aae72e0a6773a19a640d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Dec 29 15:05:53 2012 +0000
Revert "xlib/shm: Do not trigger a surplus event from XShmPutImage"
This reverts commit c97f2d4acd5c4a1a4b839c72626f84e242e60b23.
Testing suggests that keeping that event is a win; so do so.
src/cairo-xlib-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit c97f2d4acd5c4a1a4b839c72626f84e242e60b23
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Dec 29 14:56:24 2012 +0000
xlib/shm: Do not trigger a surplus event from XShmPutImage
As our lazy event mechanism is sufficient for tracking when to reuse shm
memory, and the events are not necessary for ShmPut/ShmGetImage paths.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 0c84a5474d4e90fc9361ccbb0ebc3d0580bad82b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Dec 29 11:41:17 2012 +0000
xlib/shm: Rate-limit events and only use as necessary
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 4 +-
src/cairo-xlib-surface-shm.c | 110 +++++++++++++++++++++++++-----------
2 files changed, 79 insertions(+), 35 deletions(-)
commit 21db1c99108dc84166cbd9641f3256b22f571ee3
Author: Martin Robinson <mrobinson@igalia.com>
Date: Fri Dec 28 14:10:29 2012 -0800
gl: Cleanup selection of multisampling mode
Fold the choice of multisampling mode into the cairo_gl_composite_t
structure itself. This makes it more similar to other settings.
src/cairo-gl-composite.c | 20 +++++++++-----------
src/cairo-gl-msaa-compositor.c | 14 +++++++++-----
src/cairo-gl-private.h | 9 ++++-----
3 files changed, 22 insertions(+), 21 deletions(-)
commit 7d02e2d62d1d2d2852f256905af60f418216b9ea
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Dec 23 11:12:21 2012 +0000
xlib/shm: Populate send_event and serial
Hopefully this random choice is more meaningful than random junk.
Bugzilla; https://bugs.freedesktop.org/show_bug.cgi?id=58672
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 4 ++++
1 file changed, 4 insertions(+)
commit e748c122435c1047894f73c14266bc81ad2edecd
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Dec 22 18:34:43 2012 +1030
doc: Add CAIRO_MIME_TYPE_UNIQUE_ID to list of supported mime types
src/cairo-surface.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 4e751fcb031557e6ad720f5bf5f14e181564ab9b
Author: David Maxwell <damaxwell@alaska.edu>
Date: Thu Oct 11 08:52:36 2012 -0800
type1-subset: always include subroutine 4 (hint replacement idiom)
http://lists.cairographics.org/archives/cairo/2012-December/023846.html
src/cairo-type1-subset.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit b94a519aad3d5b50aa6de47ee16ee6a099de9791
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Fri Dec 21 18:40:08 2012 -0500
[ft] Fix resizing of bitmap fonts
Say, you were asking cairo for a font at 200px. For bitmap-only fonts,
cairo was finding the closes strike size and using it. If the strike
was at 20px, well, that's what you were getting. We now scale that 20px
strike by a factor of 10 to get the correct size rendering.
Note that by itself this patch doesn't change much on the Linux desktop.
The reason is that the size you are interested in (eg. 200px) is lost by
fontconfig. When you request a font at 200px, fontconfig returns a font
pattern that says 20px, and so the next layers thing you want a font at
20px. To address that, one also needs a piece of fontconfig config that
puts the 200 back into the pixelsize. Something like this:
<match target="font">
<test name="scalable" mode="eq">
<bool>false</bool>
</test>
<edit name="pixelsize" mode="assign">
<times>
<name>size</name>
<name>dpi</name>
<double>0.0138888888888</double> <!--1/72.-->
</times>
</edit>
</match>
I'm going to try to upstream this config so it will be enabled by
default. The config can be a bit smarter. For example, if
metricshinting is enabled and the size difference is small, we may as
well not scale.
The nice thing about this is that the configuration of whether and when
to scale bitmaps will be done in fontconfig, not cairo / Qt / ... code.
src/cairo-ft-font.c | 66 ++++++++++++++++++++++++++-------------------------
1 file changed, 34 insertions(+), 32 deletions(-)
commit 1404ed9692af1958b4090c46d1a27e0fe4a5616e
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Fri Dec 21 18:35:41 2012 -0500
[ft] Remove ancient check for FT_Bitmap_Size.y_ppem
That member is available in the version of FreeType we require.
configure.ac | 7 -------
src/cairo-ft-font.c | 11 +----------
2 files changed, 1 insertion(+), 17 deletions(-)
commit 867c876b0e7ce3dcc8afc7227ef6317701a6dda0
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Wed Nov 7 14:30:35 2012 -0800
[Minor] Improve logging
src/cairo-xlib-render-compositor.c | 2 ++
src/cairoint.h | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
commit 5d21c9e224617110678a5b854a6a41049a02fca2
Author: Adam Jackson <ajax@redhat.com>
Date: Tue Dec 18 13:33:13 2012 -0500
xlib/shm: Fix memory leak
Despite subclassing image surfaces, we never called down to the image
surface destructor, so we leaked a pixman_image_t every time.
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=882976
Signed-off-by: Adam Jackson <ajax@redhat.com>
src/cairo-xlib-surface-shm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 51435eeb0c4d9e53d76dae8b5af279ad518a05f8
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Dec 17 18:33:22 2012 +0100
xcb: Fix xcb-huge-subimage
This teaches the xcb backend how to split up a PutImage request for a subimage
into multiple requests. The backend already does the same for "normal" PutImage
where it doesn't have to assemble the image from various rows.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-connection-core.c | 72 +++++++++++++++++++++++++++++++--------
1 file changed, 58 insertions(+), 14 deletions(-)
commit 5fb364287f96e4457d8df107ba3d0dc3f99f6f04
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Dec 17 18:29:21 2012 +0100
test: Add xcb-huge-subimage
This creates an image surface with a non-natural stride and paints it to a
similar surface.
In the xcb backend, this causes a call to _cairo_xcb_connection_put_subimage()
which tries to send a huge PutImage request. As a result, xcb kills the X11
connection.
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/Makefile.sources | 1 +
test/reference/xcb-huge-subimage.ref.png | Bin 0 -> 97 bytes
test/xcb-huge-subimage.c | 81 ++++++++++++++++++++++++++++++
3 files changed, 82 insertions(+)
commit 749ef6be4d11b95d666b0e5fe06df926b828d655
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Dec 17 17:45:25 2012 +0100
context: Use recording surfaces for unbounded groups
The old code uses an uninitialized variable for the extents of the group that is
created. This patch makes it use an unbounded recording surface instead.
This has the implicit assumption that everything that is unbounded smells like a
recording surface. Let's see when this assumption breaks. :-)
http://lists.cairographics.org/archives/cairo/2012-October/023585.html
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-default-context.c | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)
commit 433a5829d7c38a9301346fc5a643e623565c1625
Author: Martin Robinson <mrobinson@igalia.com>
Date: Mon Dec 17 17:53:33 2012 +0100
Revert "gl/msaa: Share the depth/stencil buffer among all surfaces"
This was pushed mistakenly. Sorry.
This reverts commit a7d684e6fe4bbeea2262276aaa57bb2a47c401df.
src/cairo-gl-device.c | 118 ++++++++++++++----------------------------------
src/cairo-gl-private.h | 13 ------
src/cairo-gl-surface.c | 31 ++-----------
3 files changed, 38 insertions(+), 124 deletions(-)
commit 000a137a6554cfc350407f3b719fb4aa3a1c33c6
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Dec 17 17:12:59 2012 +0100
boilerplate-xcb: Ignore MappingNotify events
The boilerplate code makes sure that our tests didn't cause any X11 errors or
X11 events, because those might confuse API users.
However, when the keyboard layout changes, every connection gets a MappingNotify
event. This means that the test and performance test suites failed when the
keyboard layout was changed while they are running.
Fix this by ignoring MappingNotifies.
Reported by Arthur Huillet on IRC.
Signed-off-by: Uli Schlachter <psychon@znc.in>
boilerplate/cairo-boilerplate-xcb.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
commit 9d9aa04b60e24542b6b2a4c6bf87115db7736c2f
Author: Martin Robinson <mrobinson@igalia.com>
Date: Mon Dec 3 16:08:23 2012 -0800
gl: Add BGRA download support for GLES2
Some OpenGLES2 drivers support downloading BGRA data. On little-endian
systems BGRA and GL_UNSIGNED_BYTe is equivalent to the typical
cairo_image_t format, so this can prevent CPU bit swizzling for
operations that involve images.
src/cairo-gl-device.c | 18 +++++++++++++++++
src/cairo-gl-private.h | 1 +
src/cairo-gl-surface.c | 51 ++++++++++++++++++++++++------------------------
3 files changed, 44 insertions(+), 26 deletions(-)
commit a7d684e6fe4bbeea2262276aaa57bb2a47c401df
Author: Martin Robinson <mrobinson@igalia.com>
Date: Mon Mar 5 23:11:19 2012 -0800
gl/msaa: Share the depth/stencil buffer among all surfaces
Instead of allocating a depth/stencil buffer for all surfaces, share a
common buffer that's the size of the largest surface. This reduces
video memory usage when there are many GL surfaces.
src/cairo-gl-device.c | 118 ++++++++++++++++++++++++++++++++++--------------
src/cairo-gl-private.h | 13 ++++++
src/cairo-gl-surface.c | 31 +++++++++++--
3 files changed, 124 insertions(+), 38 deletions(-)
commit ba4a4eae051cd932e59e3092ef36d4f6cded0159
Author: Chuanbo Weng <chuanbo.weng@intel.com>
Date: Tue Oct 2 13:58:49 2012 +0200
gl/msaa: Use GL_IMG_multisampled_render_to_texture when available
Some OpenGLES platforms support GL_IMG_multisampled_render_to_texture
instead of GL_EXT_multisampled_render_to_texture.
src/cairo-gl-device.c | 8 ++++++++
src/cairo-gl-dispatch-private.h | 10 +++++++---
src/cairo-gl-dispatch.c | 26 ++++++++++++++++++++++++++
3 files changed, 41 insertions(+), 3 deletions(-)
commit 3bedff0c009e645fff2d6f40976b4483871e73e1
Author: Henry Song <henry.song@samsung.com>
Date: Tue May 15 20:32:44 2012 +0200
gl: Properly disable ctx->spans when necessary
When compositing starts, if we are not using the spans compositor, we
should set the spans member of the context to false.
src/cairo-gl-composite.c | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
commit 18e7234c7e56ca26d7d7a2e29b1da2bb6944bb34
Author: Henry Song <henry.song@samsung.com>
Date: Wed May 23 15:12:16 2012 +0200
gl/msaa: Also setmsaa_active to true for non-texture surfaces
This is important because there are places in the code where msaa_active
is used to decide whether or not to complete an operation with
multisampling or not.
src/cairo-gl-device.c | 1 +
1 file changed, 1 insertion(+)
commit 9f43f096b22a13f02d638b86b4460c7ed66d3c96
Author: Henry Song <henry.song@samsung.com>
Date: Sat Dec 1 17:08:56 2012 +0000
gl: Flush context upon evicting a gradient
As the random selection of a gradient can possible destroy the currently
active gradient, we need to flush the context in order to flush any
references to the texture before deletion.
src/cairo-gl-gradient.c | 2 ++
1 file changed, 2 insertions(+)
commit a0fb1391315033de54368715a8855aedea258e67
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Dec 1 09:21:15 2012 +0000
mempool: Reduce the assertion into an alignment adjustment for the base
Instead of asserting that the caller passed in a chunk-aligned base
pointer, just perform the fixup whilst initialising the mempool. This
means that the caller (xcb!) cannot assume that the mempool->base is
then the same base pointer as passed in and so needs to store it
separately for use in computing SHM offsets.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-mempool.c | 9 +++++++++
src/cairo-xcb-shm.c | 14 +++++++-------
2 files changed, 16 insertions(+), 7 deletions(-)
commit 153b11612f34294241429b53722839984f367f2e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Nov 28 09:57:29 2012 +0000
script: Fix map-to-image/unmap stack manipulations
The idiom (and expectation) for surface operators is that it leaves the
surface on the stack for the next operation. Also we need to hold onto a
surface reference for objects put onto the stack, yet for the
map-to-image return we did not own one.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-script/cairo-script-operators.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit dfbf80a57d161707d105d1b5711c85890fe18a6d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Nov 27 12:25:56 2012 +0000
trace: Do not forcibly add surfaces to the dictionary
Adjust the stack manipulation to avoid moving an unknown surface to
the dictionary.
Reported-by: Dongyeon Kim <dy5.kim@samsung.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-trace/trace.c | 50 +++++++++++++++++++++++++++++-----------------
1 file changed, 32 insertions(+), 18 deletions(-)
commit 376d39121c0d4eba8f0a22be71f782ce18e50923
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Nov 27 12:25:56 2012 +0000
trace: Fix operand emission for map-to-image and unmap-image
Reported-by: Dongyeon Kim <dy5.kim@samsung.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-trace/trace.c | 58 +++++++++++++++++++++++++++-------------------
1 file changed, 34 insertions(+), 24 deletions(-)
commit 62b795fe52c73ad58101c101aa77449f4b61a576
Author: Zozó Teki <teknos@gmail.com>
Date: Sat Nov 10 08:35:33 2012 +0000
recording: Append new elements to the end of the bbtree chain
I have noticed that some of my objects were lost when drawing them on
a recording surface and playing them back. Later elements with the same
extents as a prior one tend to disappear from the chain of headers
having similar extents. After doing some debugging, I found that they
are not properly added to the bbtree during playback, and were instead
clobbering the existing chain.
src/cairo-recording-surface.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
commit 6ed1da67b5814c5ff062831f17621a585f81d704
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Nov 4 15:34:34 2012 +0000
version: Post-release bump to 1.12.9
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit cc162915a55cc67587677352bd9e389f16117853
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Nov 4 14:23:09 2012 +0000
1.12.8 release
NEWS | 42 ++++++++++++++++++++++++++++++++++++++++++
cairo-version.h | 2 +-
2 files changed, 43 insertions(+), 1 deletion(-)
commit cf07bd866dc3fdbfaf3d7e7fdc83cc2a4ef5698c
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Nov 3 11:08:01 2012 +1030
type1-subset: remove unused variable
src/cairo-type1-subset.c | 4 ----
1 file changed, 4 deletions(-)
commit 9f537156adcab5e7a9b21cd2bb5cc7676db52713
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Nov 3 11:07:02 2012 +1030
type1-subset: fix memory leak
src/cairo-type1-subset.c | 52 +++++++++++++++++++++++++++++-----------------
1 file changed, 33 insertions(+), 19 deletions(-)
commit 724c6dfa9521e887682029add879c2fcdd518b14
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Nov 2 16:54:46 2012 +0000
xlib/shm: Need IncludeInferiors when creating the source fallback
Reported-by: Benjamin Otte <otte@redhat.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
commit 1f4d05b55c96347aa4240190fda27f951b00c539
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Nov 2 14:52:03 2012 +0000
stroke: Fix calling '_cairo_spline_intersect' for in-bounds checking of splines
Fixes stroke-clipped, within reason. There still remains some
antialiasing noise (between rendering the circle piecewise and wholly)
worth investigating - but that is probably an artefact of switching
between analytical rendering modes in the scanline
rasterisation.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-polygon.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 2dd4ff32064c3c564e0902ae07330272e6676c22
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Nov 2 14:48:40 2012 +0000
test: Add stroke-clipped
Exercise a bug in the determine of clip-bounds when stroking, as
reported by ed44.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/reference/stroke-clipped.ref.png | Bin 0 -> 5886 bytes
test/stroke-clipped.c | 54 +++++++++++++++++++++++++++++++++
3 files changed, 55 insertions(+)
commit e9d45705844f67f4c8342d68fe35ad08ea008e30
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Nov 1 11:42:46 2012 +0000
pen: Tighten checking for bevel (start==stop) joins
From commit d7f5a1bec421d6c7b92d16daae681fa31ac7c212
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Oct 31 09:27:52 2012 +0000
pen: First check whether the in/out edges lie within the single pen vertex
makes a couple of tests much happier.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pen.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 90860241bb8f8eff3c1ab40641b1bfca0798b238
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Nov 1 09:47:00 2012 +0000
gl: Tune the default VBO size to reduce overhead on embedded devices
Henry Song found that the 256k buffers were disadvantageous on his
embedded hardware. As there is no obvious right value for the default
VBO size, we can tune for the more obvious constraints.
Based on a patch by Henry Song <henry.song@samsung.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-private.h | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
commit 0c1ff1572f1fc4c11b429e39f7de798030530740
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Nov 1 08:45:37 2012 +0000
xlib: Fixup standalone header compilation for 'make check'
Missing include of string.h
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-private.h | 1 +
1 file changed, 1 insertion(+)
commit b6daf47fa08c74d9672040b2b98ac6dd1f841429
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Nov 1 08:39:01 2012 +0000
spans: Do not assume that we manage to perform the clip geometrically
Even for bounded masks, we may fail to perform the clipping
geometrically for a variety of reasons, the prime one being that the
clip has a mixture of antialias settings. So when compositing the
polygon, we need to check whether a clip path still remains and so
requires a clipmask.
Fixes regression from
commit cd1004ce19c7ea28c7fedb6464562a08416586c0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 21:20:35 2012 +0100
traps,spans-compositor: Avoid mistreating unaligned clips as aligned
and
commit 4ea3ace6c810ba090464e48795fac5456f6cdc24
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 21:51:44 2012 +0100
spans: Only fallback for a clipmask if unbounded
Reported-by: Dominik Röttsches <dominik.rottsches@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56574
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
commit 5844dead01db9ddab7f10a4d685bc5ee874d0eba
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Nov 1 08:37:58 2012 +0000
util/show-polygon: Show the limited range of each edge
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/show-polygon.c | 52 +++++++++++++++++++++++++++++++++++++++++++++++----
1 file changed, 48 insertions(+), 4 deletions(-)
commit 03adea2f50aa10d49ff578389927e7b37e265918
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Nov 1 08:37:01 2012 +0000
stroke: Precompute the line half-width
As we regularly recompute stroke->line_width/2 we may as compute it once
during initialisation.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
commit dbc0d83f2a7a0e6658f3b97b5f9921c44ef6a11f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Oct 31 15:18:21 2012 +0000
image: Add a couple of tracepoints for spans fallbacks
References: https://bugs.freedesktop.org/show_bug.cgi?id=56574
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 3 ++-
src/cairo-spans-compositor.c | 13 ++++++++++---
2 files changed, 12 insertions(+), 4 deletions(-)
commit 9b7ed9b2cd6c9ee4dfab71aed9b7d97b720fceb0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Oct 31 13:15:07 2012 +0000
xlib/shm: Fix bogus assertion without shm available
In particular note that _cairo_xlib_surface_put_shm is indeed called and
is expected to be a no-op when shm is not available.
Reported-by: Thomas Klausner <wiz@NetBSD.org>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit d7f5a1bec421d6c7b92d16daae681fa31ac7c212
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Oct 31 09:27:52 2012 +0000
pen: First check whether the in/out edges lie within the single pen vertex
In order to prevent underflow when searching for the closing pen vertex,
we first need to be sure that it does not simply lie next to the opening
pen vertex. As a result we were missing many cases that should have been
a bevel (in == out) and generating almost complete round caps instead.
Reported-by: Dominik Röttsches <dominik.rottsches@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56432
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pen.c | 60 ++++++++++++++++---------------
test/reference/arc-looping-dash.ref.png | Bin 502 -> 464 bytes
test/reference/caps-tails-curve.ref.png | Bin 54750 -> 54314 bytes
test/reference/reflected-stroke.ref.png | Bin 5139 -> 5116 bytes
4 files changed, 32 insertions(+), 28 deletions(-)
commit 66625cb46c985321c46b79d2163a4d676d6700ba
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Oct 30 12:40:41 2012 +0000
xlib: Apply the image offsets to the destination rather the source
So that we can specify the entire source surface as the region to copy
and not introduce clipping errors.
Fixes regression from
commit c068691ff57c2f6cd750a54db17393c0e132cb00
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 21:33:54 2012 +0100
xlib/shm: Use an impromptu upload ShmSegment
Reported-by: John Lindgren <john.lindgren@aol.com>
Reported-by: Kalev Lember <kalevlember@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56547
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 22 ++++++++++------------
1 file changed, 10 insertions(+), 12 deletions(-)
commit 65176b7380f0d633da514be1febe16f17b99d876
Author: Kevin Tardif <kiyoka@gmail.com>
Date: Tue Oct 30 00:27:27 2012 -0400
type1-subset, cff-subset: Plugged 2 memory leaks
- _cairo_type1_font_subset_fini doesn't free font->cleartext
- _cairo_cff_font_create can exit without freeing font->font_name and/or
font->data; _cairo_cff_font_load_opentype_cff is called to allocate
font_name, then _cairo_cff_font_load_cff is called to allocate
font->data, then _cairo_cff_font_load_cff's return status is checked
and if it failed, it jumps to fail1. This can cause font_name to leak
since the fail1 target only frees the font variable. In addition,
_cairo_cff_font_load_cff can fail -after- allocating data, and then
data won't be freed either.
Bug 56566
src/cairo-cff-subset.c | 6 +++---
src/cairo-type1-subset.c | 2 ++
2 files changed, 5 insertions(+), 3 deletions(-)
commit 0c800dc3f64ee030df1cd0a6a1dcd6df71502dea
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Tue Oct 30 19:23:30 2012 +1030
type1-subset: ensure subroutine numnber is an integer
src/cairo-type1-subset.c | 21 ++++++++++++---------
1 file changed, 12 insertions(+), 9 deletions(-)
commit 5a6e1d680a5bf1c4091e74f999abd611abd92334
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Oct 28 20:58:52 2012 +1030
type1-subset: restore correct callothersub behavior
that was removed in d57e652f. Without this subsetting of subroutines
won't work for some fonts.
src/cairo-type1-subset.c | 35 +++++++++++++++++++++++++++++------
1 file changed, 29 insertions(+), 6 deletions(-)
commit 0e2458697848cf8c89c9d57fa9b64f0ea7bd0877
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Oct 28 10:08:39 2012 +0000
xlib/shm: Use shmstr.h instead of shmproto.h if available
Before it was known as shmproto.h, the wire protocol definition was to
be found in shmstr.h, so if we don't have the current version of libXext
try to use the older includes.
Reported-by: Sebastian Haas <sehaas@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 2 +-
src/cairo-xlib-surface-shm.c | 6 +++++-
2 files changed, 6 insertions(+), 2 deletions(-)
commit f18199fcfb3b052c198041fc05156ae3d9e6aee7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Oct 28 10:04:12 2012 +0000
xlib/shm: Check for XShm headers
Not all version of libXext ship the same set of headers, so play safe
and check during configure that we have the headers we depend upon in
the code.
Reported-by: Sebastian Haas <sehaas@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 4 ++
src/cairo-xlib-surface-shm.c | 99 ++++++++++++++++++++++++++++++++++++++++--
2 files changed, 100 insertions(+), 3 deletions(-)
commit d57e652f08f5ff7c334d01bc071962e6a131928f
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Oct 26 23:00:01 2012 +1030
type1-subset: parse all operators
The PDF at bug 56265 contained a Type 1 font that used the "div"
operator to compute the glyph width. As the "div" operator was
not handled by the charstring parser this resulted in an incorrect
glyph width in the PDF output.
Fix this by upgrading the charstring parsing to handle all Type 1
operators.
src/cairo-type1-subset.c | 167 +++++++++++++++++++++++++++-------------------
1 file changed, 100 insertions(+), 67 deletions(-)
commit fdd2082f923012a1354be7086d03f78fb166695b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 26 10:51:31 2012 +0100
xlib: Check for both X.org and Xorg ServerVendors
Martin Husemann reported that on his NetBSD machine the vendor was being
reported as "The Xorg Foundation", a non-conformist separatist split of
the Peoples' Liberation Army^W^W^W "The X.Org Foundation". Simply check
for both during initialisation.
Reported-by: Martin Husemann <martin@duskware.de>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-display.c | 2 +-
src/cairo-xlib-private.h | 7 +++++++
src/cairo-xlib-surface-shm.c | 2 +-
3 files changed, 9 insertions(+), 2 deletions(-)
commit 00feb8ce530a472abbde445b52d9ae8c99ec97f0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 26 10:51:31 2012 +0100
xlib/shm: Sanity check that the server handles XSendEvent with ShmCompletion
Uli Schlachter suggested it would be wiser to complement our blacklist
of known broken X/libXext with an explicit roundtrip to check for a
BadValue error return when we try to use XSendEvent.
Suggested-by: Uli Schlachter <psychon@znc.in>
Reported-by: Martin Husemann <martin@duskware.de>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 77 +++++++++++++++++++++++++++++++++++++-----
1 file changed, 69 insertions(+), 8 deletions(-)
commit e43f53bf7f3d371116f31f22ab9754b08b5abe7f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Oct 22 13:47:11 2012 +0100
version: Post release bump to 1.12.7
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit fab6958eff35a94cf46e38f19a7e75e10aa2b182
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Oct 22 11:07:15 2012 +0100
1.12.6 release
NEWS | 35 +++++++++++++++++++++++++++++++++++
cairo-version.h | 2 +-
2 files changed, 36 insertions(+), 1 deletion(-)
commit d49b2284b505e93cd415af4da3cd2cc2d3d168d3
Author: Gilles Espinasse <g.esp@free.fr>
Date: Sat Oct 20 20:22:51 2012 +0200
configure: fix unrecognized -Wno option
gcc-4.4 and later accept every -Wno option. So we can test for the
option without no in the name to check if the option is supported.
Each time a warning is emitted and without this fix, on gcc-4.4 that will
add this warning:
cc1: warning: unrecognized command line option "-Wno-unused-but-set-variable"
bugs.freedesktop.org #51633, rediffed after 1.12.4
Of course this assumes that all compilers will behave like gcc, which is
reasonably implicit in the set of warning flags.
Signed-off-by: Gilles Espinasse <g.esp@free.fr>
[ickle: slight modification to test both -W and -Wno variants to ideally
preserve compatability with non-GCC compilers sharing GCC options!]
build/configure.ac.warnings | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
commit b12a94b98306d87689bad23dad4c0ec033037046
Author: Gilles Espinasse <g.esp@free.fr>
Date: Sat Oct 20 20:22:50 2012 +0200
configure: fix PKG_CHECK_MODULES tests displaying no no
Inside PKG_CHECK_MODULES, AC_MSG_RESULT(no) is already displayed, so the
caller should not use another AC_MSG_RESULT(no).
Add a comment that empty ACTION-IF-NOT-FOUND is not allowed for
PKG_CHECK_MODULES, but a simple : is enough.
This is bugs.freedesktop.org #51628, rediffed after 1.12.4
Signed-off-by: Gilles Espinasse <g.esp@free.fr>
build/aclocal.pkg.m4 | 2 ++
configure.ac | 41 +++++++++++++++++------------------------
2 files changed, 19 insertions(+), 24 deletions(-)
commit 813143c2205c12923519ce6dcf3c8e10f63f1085
Author: Gilles Espinasse <g.esp@free.fr>
Date: Sat Oct 20 23:06:44 2012 +0200
ft: Fix compilation on 1.12 without FT_Get_X11_Font_Format
Signed-off-by: Gilles Espinasse <g.esp@free.fr>
configure.ac | 2 +-
src/cairo-ft-font.c | 23 +++++++++++++++++------
2 files changed, 18 insertions(+), 7 deletions(-)
commit c565bad8901dbe66e1402cdc2418986e96e698e3
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 19 12:22:58 2012 +0100
pen: Relax invisibility criteria from half-tolerance to quarter-tolerance
Inkscape is one user who sets geometric tolerance to 1.25 pixels when
stroking sub-pixel lines. Whilst we wait for inkscape to set sensible
values for their tolerance, we have to allow through the current values
in order to prevent the fine strokes from disappearing.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=56099
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pen.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 5041b462d084de8552336275914d30c23bf5dd35
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 19 12:04:50 2012 +0100
xlib/shm: Sync the XShmAttach before removing the ShmSegment id
Whilst reading through other users of XShm, it became apparent that
IPC_RMID behaves differently across the platforms. Linux allows
processes to attach to an existing ShmSegment id after a IPC_RMID, but
for others the IPC_RMID takes immediate effect. On those platforms
without a "deferred" IPC_RMID, we then need to perform the XShmAttach
synchronously before perfomring the IPC_RMID.
Reported-by: Thomas Klausner <wiz@NetBSD.org>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 32 ++++++++++++++++++++++++++++++++
src/cairo-xlib-surface-shm.c | 3 +++
2 files changed, 35 insertions(+)
commit d5f9c694b9145f0464c8bd58d844bddedcb77d5e
Author: Uli Schlachter <psychon@znc.in>
Date: Tue Oct 16 17:09:42 2012 +0200
test: Define optional exception classes
According to musl libc author:
"C99 requires the FE_ macros to be defined if and only if the exception they
correspond to is supported"
So we define these macros to 0 if they are not supported. Support for these FPU
exceptions is not necessary for correct functionality, but makes some tests less
effective.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55771
Signed-off-by: Uli Schlachter <psychon@znc.in>
test/cairo-test.c | 3 ---
test/cairo-test.h | 20 ++++++++++++++++++++
test/invalid-matrix.c | 4 ----
3 files changed, 20 insertions(+), 7 deletions(-)
commit db488a1703d4ef3bcbd54138b51c01600a2f4d3a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 11 17:00:57 2012 +0100
recording: Copy across the is-clear? during snapshotting
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55799
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-recording-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit ed720007ba6be17434eb68b604fd36bd91c0d894
Author: Henry Song <henry.song@samsung.com>
Date: Thu Oct 11 16:57:57 2012 +0100
recording: copy reverses its dst and src parameters
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55799
src/cairo-recording-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 26c8accd41163d86711ba900bec7d9cd6591d8a3
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Oct 11 16:52:07 2012 +0100
xlib: Reorder CloseDisplay hooks
As we may utilize X extensions as we shutdown and release resources
during CloseDisplay, we need to run our own callback first. If we run
last, than we reinstantiate the extensions which often have the
unfortunate habit of then persisting with stale data across the next
Display connection, causing invalid requests to be generated and raise
XErrors.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-display.c | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
commit fbf528f46deaebc7d8cf38fc61be9e016f207575
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Oct 9 17:37:53 2012 +0100
compositor: Reduce glyph "overlap" if the inked pixels are opaque
We can ignore the issue of overdraw if when we paint the glyphs, the
result is opaque.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-composite-rectangles.c | 7 +++++++
1 file changed, 7 insertions(+)
commit 66500ef29fea41ccda554f85d82a6aa3de774903
Author: Henry Song <henry.song@samsung.com>
Date: Thu Sep 27 19:22:23 2012 +0000
gl/traps: ensure RGBA surface before upload image to texture for GLES2
As GLESv2 may only use an RGBA surface as its source for texture
uploads, we therefore need to perform a conversion.
src/cairo-gl-traps-compositor.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
commit 188c34b40d6f08851b4076ad11aefe69d4a78a25
Author: Henry Song <henry.song@samsung.com>
Date: Thu Sep 27 18:25:52 2012 +0000
gl: gles2 only supports GL_DEPTH24_STENCIL8_OES
Patch also provided by U. Artie Eoff <ullysses.a.eoff@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50355
src/cairo-gl-device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit f78a9269228f2f48e8eb496e341ef990db39c6c3
Author: Alexis Ballier <aballier@gentoo.org>
Date: Fri Sep 21 08:22:55 2012 -0300
cairo-sphinx: protect -ldl link with CAIRO_HAS_DL like in cairo-trace.
Signed-off-by: Uli Schlachter <psychon@znc.in>
util/cairo-sphinx/Makefile.am | 2 ++
1 file changed, 2 insertions(+)
commit 3d2712d56a22f2a86fb80da94c3e55be8d26a330
Author: Alexis Ballier <aballier@gentoo.org>
Date: Fri Sep 21 08:22:54 2012 -0300
cairo-fdr: protect -ldl link with CAIRO_HAS_DL like in cairo-trace.
Signed-off-by: Uli Schlachter <psychon@znc.in>
util/cairo-fdr/Makefile.am | 2 ++
1 file changed, 2 insertions(+)
commit 9ab9916114db9917108198111d3232a18ae505ed
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Oct 7 23:54:20 2012 +1030
remove debug code
src/cairo-type1-subset.c | 2 --
1 file changed, 2 deletions(-)
commit 9c2a92c70836b8534ef8c26d943fa17f891da105
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun Oct 7 23:50:54 2012 +1030
type1: convert '.' to locale specific decimal point before using sscanf
src/cairo-type1-subset.c | 31 +++++++++++++++++++++++++++----
1 file changed, 27 insertions(+), 4 deletions(-)
commit 0d5f63755e7ceb1bb5678fcf1f4661f3435470fb
Author: David Maxwell <damaxwell@alaska.edu>
Date: Sun Oct 7 00:01:53 2012 -0800
type1-subset: always subset subroutines 0-3 (Flex/hint replacement)
http://lists.cairographics.org/archives/cairo/2012-October/023576.html
src/cairo-type1-subset.c | 6 ++++++
1 file changed, 6 insertions(+)
commit 599e78ea2ee146c74fc7ffcee32a055dabbefdda
Author: David Maxwell <damaxwell@alaska.edu>
Date: Tue Oct 2 16:16:28 2012 -0800
type1: lenIV support
http://lists.cairographics.org/archives/cairo/2012-October/023557.html
src/cairo-type1-subset.c | 42 ++++++++++++++++++++++++++++++++++++++----
1 file changed, 38 insertions(+), 4 deletions(-)
commit cffbdf50ce0117d62d6e157369c60e4a8572fd21
Author: David Maxwell <damaxwell@alaska.edu>
Date: Tue Oct 2 16:16:28 2012 -0800
type1: buildchar stack fix
http://lists.cairographics.org/archives/cairo/2012-October/023557.html
src/cairo-type1-subset.c | 1 +
1 file changed, 1 insertion(+)
commit e29bb5f295d055068a24b629fa1bd5f06a93431b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Oct 6 18:53:41 2012 +0100
win32: Use the image surface below the fallback when unmapping an HDC
As for a native window, the surface does not have an image delegate
itself but instead installs a fallback surface during map_to_image. So
during unmap_image, we then need to unmap from the fallback surface
instead.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/win32/cairo-win32-display-surface.c | 1 +
1 file changed, 1 insertion(+)
commit 0251f0951d8dcdd198912326c11489823989a3eb
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Oct 6 15:00:51 2012 +0200
xcb: Clear the result of create_similar_image
The documentation of cairo_surface_create_similar_image() states that the
image's contents are initially all 0. However, the implementation didn't live up
to the documentation.
This was found via the corresponding assert in
cairo_surface_create_similar_image().
There are some cairo-xcb-internal users of this function which cleared the image
right after creating it. Obviously, this isn't needed anymore.
Fixes: Nothing. The existing call in the testsuite to
cairo_surface_create_similar_image() doesn't hit this issue, since it creates a
too small image to hit the SHM-case.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 14 --------------
src/cairo-xcb-surface.c | 5 +++++
2 files changed, 5 insertions(+), 14 deletions(-)
commit 15ef4a3248bbf32d05da7ed2480a2ce58c26d9bc
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 5 19:46:41 2012 +0100
xlib/shm: Note the bug is an interaction between libXext and xorg
Søren thought it was bit harsh to lay the blame solely on xorg for it
crashing due to an unexpected input value, and that we should mention
libXext was also partly to blame for incorrectly setting the SEND_EVENT
bit in the ShmCompletionEvent.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
commit b1532f465e05d566f6d160c5ca916a5a12614067
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 5 19:20:18 2012 +0100
xlib/shm: Avoid using XSendEvent with old versions of Xorg
Søren Sandmann Pedersen pointed out that all versions of Xorg prior to
and including xorg-1.11.0 contained a bug that would cause them to crash
if they ever processed an event sent by XSendEvent. This was fixed in
commit 2d2dce558d24eeea0eb011ec9ebaa6c5c2273c39
Author: Sam Spilsbury <sam.spilsbury@canonical.com>
Date: Wed Sep 14 09:58:34 2011 +0800
Remove the SendEvent bit (0x80) before doing range checks on event type.
so make sure we do not use XSendEvent prior to that commit, which
fortuitously is quite easy as we only do so along the ShmPixmap path.
Reported-by: Søren Sandmann Pedersen <ssp@redhat.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
commit dba46f4eab716c0148d278ba7cae0cb075b5df01
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 5 17:24:56 2012 +0100
version: Post release bump to 1.12.5
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 117abd85ac7ff41e484fe0d98f16704ec30abd09
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 5 16:44:00 2012 +0100
1.12.4 release
NEWS | 69 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
cairo-version.h | 2 +-
2 files changed, 70 insertions(+), 1 deletion(-)
commit 6c6a69761048cfad210160035ae32ccb49967d5d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 5 14:55:28 2012 +0100
win32: Compile fix for mismatched surface types
win32/cairo-win32-display-surface.c:472: error: structure has no member
named 'base'
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/win32/cairo-win32-display-surface.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit ccf694d060dd9ea41939fc1c5847d23d3a422b75
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 5 13:36:30 2012 +0100
xlib/shm: Discard SHM surfaces upon CloseDisplay
Fixes xlib-surface-source
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 14 ++++++++++++++
1 file changed, 14 insertions(+)
commit 8488ae022de45b441f29c3e90e16d5cca3082d20
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Oct 5 13:08:26 2012 +0100
test: Refresh reference images for slight alteration of curves
test/reference/a1-fill.base.ref.png | Bin 328 -> 0 bytes
test/reference/a1-tiger.traps.argb32.ref.png | Bin 20406 -> 20326 bytes
test/reference/a1-tiger.traps.rgb24.ref.png | Bin 20406 -> 20326 bytes
test/reference/arc-direction.base.ref.png | Bin 5864 -> 0 bytes
test/reference/arc-looping-dash.argb32.ref.png | Bin 464 -> 0 bytes
.../reference/arc-looping-dash.base.argb32.ref.png | Bin 470 -> 0 bytes
test/reference/arc-looping-dash.base.rgb24.ref.png | Bin 470 -> 0 bytes
test/reference/arc-looping-dash.ref.png | Bin 348 -> 502 bytes
test/reference/arc-looping-dash.rgb24.ref.png | Bin 464 -> 0 bytes
.../arc-looping-dash.traps.argb32.ref.png | Bin 470 -> 496 bytes
.../reference/arc-looping-dash.traps.rgb24.ref.png | Bin 470 -> 496 bytes
test/reference/bug-bo-ricotz.base.ref.png | Bin 2125 -> 0 bytes
test/reference/bug-bo-ricotz.traps.argb32.ref.png | Bin 2128 -> 2125 bytes
test/reference/bug-bo-ricotz.traps.rgb24.ref.png | Bin 2128 -> 2125 bytes
test/reference/bug-spline.ref.png | Bin 5476 -> 5577 bytes
test/reference/caps-joins-alpha.argb32.ref.png | Bin 2662 -> 0 bytes
.../reference/caps-joins-alpha.base.argb32.ref.png | Bin 2278 -> 0 bytes
test/reference/caps-joins-alpha.base.rgb24.ref.png | Bin 2278 -> 0 bytes
test/reference/caps-joins-alpha.ref.png | Bin 2345 -> 2643 bytes
test/reference/caps-joins-alpha.rgb24.ref.png | Bin 2662 -> 0 bytes
.../caps-joins-alpha.traps.argb32.ref.png | Bin 2278 -> 2265 bytes
.../reference/caps-joins-alpha.traps.rgb24.ref.png | Bin 2278 -> 2265 bytes
test/reference/caps-joins-curve.argb32.ref.png | Bin 6217 -> 0 bytes
.../reference/caps-joins-curve.base.argb32.ref.png | Bin 5368 -> 0 bytes
test/reference/caps-joins-curve.base.rgb24.ref.png | Bin 5368 -> 0 bytes
test/reference/caps-joins-curve.ref.png | Bin 4527 -> 6228 bytes
test/reference/caps-joins-curve.rgb24.ref.png | Bin 6217 -> 0 bytes
.../caps-joins-curve.traps.argb32.ref.png | Bin 5368 -> 5327 bytes
.../reference/caps-joins-curve.traps.rgb24.ref.png | Bin 5368 -> 5327 bytes
test/reference/caps-joins.base.argb32.ref.png | Bin 2374 -> 2363 bytes
test/reference/caps-joins.base.rgb24.ref.png | Bin 2374 -> 2363 bytes
test/reference/caps-joins.traps.argb32.ref.png | Bin 2374 -> 2363 bytes
test/reference/caps-joins.traps.rgb24.ref.png | Bin 2374 -> 2363 bytes
test/reference/caps-sub-paths.base.argb32.ref.png | Bin 166 -> 166 bytes
test/reference/caps-sub-paths.base.rgb24.ref.png | Bin 166 -> 166 bytes
test/reference/caps-sub-paths.traps.argb32.ref.png | Bin 166 -> 166 bytes
test/reference/caps-sub-paths.traps.rgb24.ref.png | Bin 166 -> 166 bytes
test/reference/caps-tails-curve.argb32.ref.png | Bin 53311 -> 0 bytes
.../reference/caps-tails-curve.base.argb32.ref.png | Bin 50228 -> 0 bytes
test/reference/caps-tails-curve.base.rgb24.ref.png | Bin 50228 -> 0 bytes
test/reference/caps-tails-curve.ref.png | Bin 41476 -> 54750 bytes
test/reference/caps-tails-curve.rgb24.ref.png | Bin 53311 -> 0 bytes
.../caps-tails-curve.traps.argb32.ref.png | Bin 50228 -> 50617 bytes
.../reference/caps-tails-curve.traps.rgb24.ref.png | Bin 50228 -> 50617 bytes
test/reference/caps.base.argb32.ref.png | Bin 1601 -> 1637 bytes
test/reference/caps.base.rgb24.ref.png | Bin 1601 -> 1637 bytes
test/reference/caps.traps.argb32.ref.png | Bin 1601 -> 1637 bytes
test/reference/caps.traps.rgb24.ref.png | Bin 1601 -> 1637 bytes
test/reference/clear-source.base.argb32.ref.png | Bin 882 -> 882 bytes
test/reference/clear-source.base.rgb24.ref.png | Bin 882 -> 882 bytes
test/reference/clear-source.traps.argb32.ref.png | Bin 882 -> 882 bytes
test/reference/clear-source.traps.rgb24.ref.png | Bin 882 -> 882 bytes
test/reference/clip-operator.base.argb32.ref.png | Bin 8182 -> 8136 bytes
test/reference/clip-operator.traps.argb32.ref.png | Bin 8160 -> 8114 bytes
test/reference/clip-polygons.base.ref.png | Bin 1296 -> 0 bytes
test/reference/clip-polygons.traps.argb32.ref.png | Bin 1336 -> 1268 bytes
test/reference/clip-polygons.traps.rgb24.ref.png | Bin 1336 -> 1268 bytes
test/reference/clip-rectilinear.base.ref.png | Bin 440 -> 0 bytes
test/reference/clip-stroke.ref.png | Bin 1445 -> 1419 bytes
.../close-path-current-point.base.argb32.ref.png | Bin 2008 -> 1904 bytes
.../close-path-current-point.base.rgb24.ref.png | Bin 2008 -> 1904 bytes
.../close-path-current-point.traps.argb32.ref.png | Bin 2008 -> 1904 bytes
.../close-path-current-point.traps.rgb24.ref.png | Bin 2008 -> 1904 bytes
test/reference/curve-to-as-line-to.argb32.ref.png | Bin 109 -> 0 bytes
.../curve-to-as-line-to.base.argb32.ref.png | Bin 107 -> 95 bytes
.../curve-to-as-line-to.base.rgb24.ref.png | Bin 107 -> 95 bytes
test/reference/curve-to-as-line-to.rgb24.ref.png | Bin 109 -> 0 bytes
.../curve-to-as-line-to.traps.argb32.ref.png | Bin 107 -> 95 bytes
.../curve-to-as-line-to.traps.rgb24.ref.png | Bin 107 -> 95 bytes
test/reference/dash-caps-joins.argb32.ref.png | Bin 5157 -> 0 bytes
test/reference/dash-caps-joins.base.argb32.ref.png | Bin 4521 -> 4483 bytes
test/reference/dash-caps-joins.base.rgb24.ref.png | Bin 4521 -> 4483 bytes
test/reference/dash-caps-joins.ref.png | Bin 4030 -> 5089 bytes
test/reference/dash-caps-joins.rgb24.ref.png | Bin 5157 -> 0 bytes
.../reference/dash-caps-joins.traps.argb32.ref.png | Bin 4521 -> 4483 bytes
test/reference/dash-caps-joins.traps.rgb24.ref.png | Bin 4521 -> 4483 bytes
test/reference/dash-curve.argb32.ref.png | Bin 41040 -> 0 bytes
test/reference/dash-curve.base.argb32.ref.png | Bin 40040 -> 0 bytes
test/reference/dash-curve.base.rgb24.ref.png | Bin 40040 -> 0 bytes
test/reference/dash-curve.ref.png | Bin 22615 -> 40945 bytes
test/reference/dash-curve.rgb24.ref.png | Bin 41040 -> 0 bytes
test/reference/dash-curve.traps.argb32.ref.png | Bin 40040 -> 39925 bytes
test/reference/dash-curve.traps.rgb24.ref.png | Bin 40040 -> 39925 bytes
.../dash-infinite-loop.base.argb32.ref.png | Bin 835 -> 642 bytes
.../dash-infinite-loop.base.rgb24.ref.png | Bin 835 -> 642 bytes
.../dash-infinite-loop.traps.argb32.ref.png | Bin 835 -> 642 bytes
.../dash-infinite-loop.traps.rgb24.ref.png | Bin 835 -> 642 bytes
test/reference/dash-scale.argb32.ref.png | Bin 8913 -> 0 bytes
test/reference/dash-scale.base.argb32.ref.png | Bin 7621 -> 0 bytes
test/reference/dash-scale.base.rgb24.ref.png | Bin 7621 -> 0 bytes
test/reference/dash-scale.ref.png | Bin 6314 -> 8831 bytes
test/reference/dash-scale.rgb24.ref.png | Bin 8913 -> 0 bytes
test/reference/dash-scale.traps.argb32.ref.png | Bin 7621 -> 7627 bytes
test/reference/dash-scale.traps.rgb24.ref.png | Bin 7621 -> 7627 bytes
test/reference/dash-state.base.argb32.ref.png | Bin 7628 -> 7509 bytes
test/reference/dash-state.base.rgb24.ref.png | Bin 7628 -> 7509 bytes
test/reference/dash-state.traps.argb32.ref.png | Bin 7628 -> 7509 bytes
test/reference/dash-state.traps.rgb24.ref.png | Bin 7628 -> 7509 bytes
.../reference/dash-zero-length.base.argb32.ref.png | Bin 219 -> 219 bytes
test/reference/dash-zero-length.base.rgb24.ref.png | Bin 199 -> 199 bytes
test/reference/dash-zero-length.rgb24.ref.png | Bin 210 -> 208 bytes
.../dash-zero-length.traps.argb32.ref.png | Bin 219 -> 219 bytes
.../reference/dash-zero-length.traps.rgb24.ref.png | Bin 199 -> 199 bytes
test/reference/degenerate-arc.base.argb32.ref.png | Bin 547 -> 574 bytes
test/reference/degenerate-arc.base.rgb24.ref.png | Bin 547 -> 574 bytes
test/reference/degenerate-arc.ref.png | Bin 646 -> 692 bytes
test/reference/degenerate-arc.traps.argb32.ref.png | Bin 547 -> 574 bytes
test/reference/degenerate-arc.traps.rgb24.ref.png | Bin 547 -> 574 bytes
test/reference/degenerate-curve-to.argb32.ref.png | Bin 280 -> 0 bytes
.../degenerate-curve-to.base.argb32.ref.png | Bin 283 -> 282 bytes
.../degenerate-curve-to.base.rgb24.ref.png | Bin 283 -> 282 bytes
test/reference/degenerate-curve-to.ref.png | Bin 227 -> 285 bytes
test/reference/degenerate-curve-to.rgb24.ref.png | Bin 280 -> 0 bytes
.../degenerate-curve-to.traps.argb32.ref.png | Bin 283 -> 282 bytes
.../degenerate-curve-to.traps.rgb24.ref.png | Bin 283 -> 282 bytes
test/reference/degenerate-dash.argb32.ref.png | Bin 2086 -> 0 bytes
test/reference/degenerate-dash.base.argb32.ref.png | Bin 1898 -> 1911 bytes
test/reference/degenerate-dash.base.rgb24.ref.png | Bin 1898 -> 1911 bytes
test/reference/degenerate-dash.ref.png | Bin 1845 -> 1985 bytes
test/reference/degenerate-dash.rgb24.ref.png | Bin 2086 -> 0 bytes
.../reference/degenerate-dash.traps.argb32.ref.png | Bin 1898 -> 1911 bytes
test/reference/degenerate-dash.traps.rgb24.ref.png | Bin 1898 -> 1911 bytes
test/reference/degenerate-path.argb32.ref.png | Bin 250 -> 251 bytes
test/reference/degenerate-path.base.argb32.ref.png | Bin 249 -> 237 bytes
test/reference/degenerate-path.base.rgb24.ref.png | Bin 217 -> 204 bytes
test/reference/degenerate-path.rgb24.ref.png | Bin 219 -> 219 bytes
.../reference/degenerate-path.traps.argb32.ref.png | Bin 249 -> 237 bytes
test/reference/degenerate-path.traps.rgb24.ref.png | Bin 217 -> 204 bytes
.../degenerate-rel-curve-to.argb32.ref.png | Bin 277 -> 0 bytes
.../degenerate-rel-curve-to.base.argb32.ref.png | Bin 278 -> 278 bytes
.../degenerate-rel-curve-to.base.rgb24.ref.png | Bin 278 -> 278 bytes
test/reference/degenerate-rel-curve-to.ref.png | Bin 227 -> 278 bytes
.../degenerate-rel-curve-to.rgb24.ref.png | Bin 277 -> 0 bytes
.../degenerate-rel-curve-to.traps.argb32.ref.png | Bin 278 -> 278 bytes
.../degenerate-rel-curve-to.traps.rgb24.ref.png | Bin 278 -> 278 bytes
test/reference/drunkard-tails.argb32.ref.png | Bin 6116 -> 0 bytes
test/reference/drunkard-tails.base.argb32.ref.png | Bin 6036 -> 6176 bytes
test/reference/drunkard-tails.base.rgb24.ref.png | Bin 6036 -> 6176 bytes
test/reference/drunkard-tails.ref.png | Bin 3853 -> 6261 bytes
test/reference/drunkard-tails.rgb24.ref.png | Bin 6116 -> 0 bytes
test/reference/drunkard-tails.traps.argb32.ref.png | Bin 6036 -> 6176 bytes
test/reference/drunkard-tails.traps.rgb24.ref.png | Bin 6036 -> 6176 bytes
.../ft-text-vertical-layout-type3.argb32.ref.png | Bin 3610 -> 0 bytes
.../ft-text-vertical-layout-type3.ref.png | Bin 3222 -> 3608 bytes
.../ft-text-vertical-layout-type3.rgb24.ref.png | Bin 3610 -> 0 bytes
test/reference/halo-transform.traps.argb32.ref.png | Bin 15063 -> 15122 bytes
test/reference/halo-transform.traps.rgb24.ref.png | Bin 15063 -> 15122 bytes
test/reference/joins-loop.base.argb32.ref.png | Bin 4202 -> 4191 bytes
test/reference/joins-loop.base.rgb24.ref.png | Bin 4202 -> 4191 bytes
test/reference/joins-loop.traps.argb32.ref.png | Bin 4202 -> 4191 bytes
test/reference/joins-loop.traps.rgb24.ref.png | Bin 4202 -> 4191 bytes
test/reference/joins-retrace.argb32.ref.png | Bin 4997 -> 0 bytes
test/reference/joins-retrace.base.argb32.ref.png | Bin 4667 -> 4566 bytes
test/reference/joins-retrace.base.rgb24.ref.png | Bin 4667 -> 4566 bytes
test/reference/joins-retrace.ref.png | Bin 3951 -> 4900 bytes
test/reference/joins-retrace.rgb24.ref.png | Bin 4997 -> 0 bytes
test/reference/joins-retrace.traps.argb32.ref.png | Bin 4667 -> 4566 bytes
test/reference/joins-retrace.traps.rgb24.ref.png | Bin 4667 -> 4566 bytes
test/reference/joins-star.base.argb32.ref.png | Bin 3583 -> 3542 bytes
test/reference/joins-star.base.rgb24.ref.png | Bin 3583 -> 3542 bytes
test/reference/joins-star.traps.argb32.ref.png | Bin 3583 -> 3542 bytes
test/reference/joins-star.traps.rgb24.ref.png | Bin 3583 -> 3542 bytes
test/reference/joins.argb32.ref.png | Bin 6970 -> 0 bytes
test/reference/joins.base.argb32.ref.png | Bin 5684 -> 5732 bytes
test/reference/joins.base.rgb24.ref.png | Bin 5684 -> 5732 bytes
test/reference/joins.ref.png | Bin 4880 -> 7153 bytes
test/reference/joins.rgb24.ref.png | Bin 6970 -> 0 bytes
test/reference/joins.traps.argb32.ref.png | Bin 5684 -> 5732 bytes
test/reference/joins.traps.rgb24.ref.png | Bin 5684 -> 5732 bytes
.../large-twin-antialias-mixed.base.argb32.ref.png | Bin 16660 -> 16630 bytes
.../large-twin-antialias-mixed.base.rgb24.ref.png | Bin 16660 -> 16630 bytes
...large-twin-antialias-mixed.traps.argb32.ref.png | Bin 16660 -> 16630 bytes
.../large-twin-antialias-mixed.traps.rgb24.ref.png | Bin 16660 -> 16630 bytes
.../leaky-dashed-rectangle.traps.argb32.ref.png | Bin 344 -> 345 bytes
.../leaky-dashed-rectangle.traps.rgb24.ref.png | Bin 344 -> 345 bytes
...width-large-overlap-dashed.traps.argb32.ref.png | Bin 343 -> 340 bytes
...-width-large-overlap-dashed.traps.rgb24.ref.png | Bin 343 -> 340 bytes
.../line-width-large-overlap-rotated.base.ref.png | Bin 404 -> 0 bytes
...idth-large-overlap-rotated.traps.argb32.ref.png | Bin 427 -> 404 bytes
...width-large-overlap-rotated.traps.rgb24.ref.png | Bin 427 -> 404 bytes
.../line-width-overlap-dashed.traps.argb32.ref.png | Bin 401 -> 407 bytes
.../line-width-overlap-dashed.traps.rgb24.ref.png | Bin 401 -> 407 bytes
.../long-dashed-lines.base.argb32.ref.png | Bin 2071 -> 2079 bytes
.../reference/long-dashed-lines.base.rgb24.ref.png | Bin 2071 -> 2079 bytes
.../long-dashed-lines.traps.argb32.ref.png | Bin 2071 -> 2079 bytes
.../long-dashed-lines.traps.rgb24.ref.png | Bin 2071 -> 2079 bytes
test/reference/miter-precision.base.argb32.ref.png | Bin 818 -> 823 bytes
test/reference/miter-precision.base.rgb24.ref.png | Bin 818 -> 823 bytes
.../reference/miter-precision.traps.argb32.ref.png | Bin 818 -> 823 bytes
test/reference/miter-precision.traps.rgb24.ref.png | Bin 818 -> 823 bytes
.../operator-alpha-alpha.base.argb32.ref.png | Bin 3441 -> 3402 bytes
.../operator-alpha-alpha.base.rgb24.ref.png | Bin 3441 -> 3402 bytes
.../operator-alpha-alpha.traps.argb32.ref.png | Bin 3441 -> 3402 bytes
.../operator-alpha-alpha.traps.rgb24.ref.png | Bin 3441 -> 3402 bytes
test/reference/operator-clear.rgb24.ref.png | Bin 947 -> 946 bytes
test/reference/operator-source.argb32.ref.png | Bin 5612 -> 5614 bytes
test/reference/operator-source.rgb24.ref.png | Bin 3975 -> 4012 bytes
.../reference/overlapping-dash-caps.argb32.ref.png | Bin 3986 -> 0 bytes
.../overlapping-dash-caps.base.argb32.ref.png | Bin 3952 -> 3967 bytes
.../overlapping-dash-caps.base.rgb24.ref.png | Bin 3952 -> 3967 bytes
test/reference/overlapping-dash-caps.ref.png | Bin 2424 -> 3979 bytes
test/reference/overlapping-dash-caps.rgb24.ref.png | Bin 3986 -> 0 bytes
.../overlapping-dash-caps.traps.argb32.ref.png | Bin 3952 -> 3967 bytes
.../overlapping-dash-caps.traps.rgb24.ref.png | Bin 3952 -> 3967 bytes
test/reference/random-clip.ref.png | Bin 525962 -> 526034 bytes
.../record-extend-none-similar.base.argb32.ref.png | Bin 293 -> 279 bytes
.../record-extend-none-similar.base.rgb24.ref.png | Bin 293 -> 279 bytes
...record-extend-none-similar.traps.argb32.ref.png | Bin 293 -> 279 bytes
.../record-extend-none-similar.traps.rgb24.ref.png | Bin 293 -> 279 bytes
.../record-extend-pad-similar.base.argb32.ref.png | Bin 298 -> 283 bytes
.../record-extend-pad-similar.base.rgb24.ref.png | Bin 298 -> 283 bytes
.../record-extend-pad-similar.traps.argb32.ref.png | Bin 298 -> 283 bytes
.../record-extend-pad-similar.traps.rgb24.ref.png | Bin 298 -> 283 bytes
...cord-extend-reflect-similar.base.argb32.ref.png | Bin 335 -> 283 bytes
...ecord-extend-reflect-similar.base.rgb24.ref.png | Bin 335 -> 283 bytes
...ord-extend-reflect-similar.traps.argb32.ref.png | Bin 335 -> 283 bytes
...cord-extend-reflect-similar.traps.rgb24.ref.png | Bin 335 -> 283 bytes
...ecord-extend-repeat-similar.base.argb32.ref.png | Bin 286 -> 283 bytes
...record-extend-repeat-similar.base.rgb24.ref.png | Bin 286 -> 283 bytes
...cord-extend-repeat-similar.traps.argb32.ref.png | Bin 286 -> 283 bytes
...ecord-extend-repeat-similar.traps.rgb24.ref.png | Bin 286 -> 283 bytes
.../record-fill-alpha.base.argb32.ref.png | Bin 2824 -> 2853 bytes
.../reference/record-fill-alpha.base.rgb24.ref.png | Bin 2824 -> 2853 bytes
...ecord-paint-alpha-clip-mask.base.argb32.ref.png | Bin 330 -> 337 bytes
...record-paint-alpha-clip-mask.base.rgb24.ref.png | Bin 330 -> 337 bytes
.../record-paint-alpha-clip.base.argb32.ref.png | Bin 269 -> 299 bytes
.../record-paint-alpha-clip.base.rgb24.ref.png | Bin 269 -> 299 bytes
.../record-select-font-face.base.argb32.ref.png | Bin 2250 -> 1417 bytes
.../record-select-font-face.base.rgb24.ref.png | Bin 2250 -> 1417 bytes
.../record-self-intersecting.base.argb32.ref.png | Bin 208 -> 168 bytes
.../record-self-intersecting.base.rgb24.ref.png | Bin 208 -> 168 bytes
.../record-text-transform.base.argb32.ref.png | Bin 5579 -> 5281 bytes
.../record-text-transform.base.rgb24.ref.png | Bin 5579 -> 5281 bytes
.../record1414x-fill-alpha.base.argb32.ref.png | Bin 4191 -> 4138 bytes
.../record1414x-fill-alpha.base.rgb24.ref.png | Bin 4191 -> 4138 bytes
...ecord1414x-paint-alpha-clip-mask.argb32.ref.png | Bin 473 -> 560 bytes
...1414x-paint-alpha-clip-mask.base.argb32.ref.png | Bin 466 -> 514 bytes
...d1414x-paint-alpha-clip-mask.base.rgb24.ref.png | Bin 466 -> 514 bytes
...record1414x-paint-alpha-clip-mask.rgb24.ref.png | Bin 473 -> 560 bytes
...ecord1414x-paint-alpha-clip.base.argb32.ref.png | Bin 380 -> 402 bytes
...record1414x-paint-alpha-clip.base.rgb24.ref.png | Bin 380 -> 402 bytes
...414x-paint-alpha-solid-clip.base.argb32.ref.png | Bin 317 -> 317 bytes
...1414x-paint-alpha-solid-clip.base.rgb24.ref.png | Bin 317 -> 317 bytes
...ecord1414x-select-font-face.base.argb32.ref.png | Bin 3177 -> 2018 bytes
...record1414x-select-font-face.base.rgb24.ref.png | Bin 3177 -> 2018 bytes
...cord1414x-self-intersecting.base.argb32.ref.png | Bin 353 -> 385 bytes
...ecord1414x-self-intersecting.base.rgb24.ref.png | Bin 353 -> 385 bytes
.../record1414x-text-transform.base.argb32.ref.png | Bin 8706 -> 8368 bytes
.../record1414x-text-transform.base.rgb24.ref.png | Bin 8706 -> 8368 bytes
.../record2x-fill-alpha.base.argb32.ref.png | Bin 5896 -> 5724 bytes
.../record2x-fill-alpha.base.rgb24.ref.png | Bin 5896 -> 5724 bytes
.../record2x-paint-alpha-clip-mask.argb32.ref.png | Bin 503 -> 534 bytes
...ord2x-paint-alpha-clip-mask.base.argb32.ref.png | Bin 488 -> 501 bytes
...cord2x-paint-alpha-clip-mask.base.rgb24.ref.png | Bin 488 -> 501 bytes
.../record2x-paint-alpha-clip-mask.rgb24.ref.png | Bin 503 -> 534 bytes
.../record2x-select-font-face.base.argb32.ref.png | Bin 4407 -> 3096 bytes
.../record2x-select-font-face.base.rgb24.ref.png | Bin 4407 -> 3096 bytes
.../record2x-text-transform.base.argb32.ref.png | Bin 13476 -> 13174 bytes
.../record2x-text-transform.base.rgb24.ref.png | Bin 13476 -> 13174 bytes
.../record90-fill-alpha.base.argb32.ref.png | Bin 2658 -> 2628 bytes
.../record90-fill-alpha.base.rgb24.ref.png | Bin 2658 -> 2628 bytes
...ord90-paint-alpha-clip-mask.base.argb32.ref.png | Bin 332 -> 343 bytes
...cord90-paint-alpha-clip-mask.base.rgb24.ref.png | Bin 332 -> 343 bytes
.../record90-paint-alpha-clip.base.argb32.ref.png | Bin 279 -> 327 bytes
.../record90-paint-alpha-clip.base.rgb24.ref.png | Bin 279 -> 327 bytes
...rd90-paint-alpha-solid-clip.base.argb32.ref.png | Bin 254 -> 279 bytes
...ord90-paint-alpha-solid-clip.base.rgb24.ref.png | Bin 254 -> 279 bytes
.../record90-select-font-face.base.argb32.ref.png | Bin 2272 -> 1480 bytes
.../record90-select-font-face.base.rgb24.ref.png | Bin 2272 -> 1480 bytes
.../record90-self-intersecting.base.argb32.ref.png | Bin 208 -> 208 bytes
.../record90-self-intersecting.base.rgb24.ref.png | Bin 208 -> 208 bytes
.../record90-text-transform.base.argb32.ref.png | Bin 5811 -> 5481 bytes
.../record90-text-transform.base.rgb24.ref.png | Bin 5811 -> 5481 bytes
test/reference/reflected-stroke.argb32.ref.png | Bin 5119 -> 0 bytes
.../reference/reflected-stroke.base.argb32.ref.png | Bin 4994 -> 5053 bytes
test/reference/reflected-stroke.base.rgb24.ref.png | Bin 4994 -> 5053 bytes
test/reference/reflected-stroke.ref.png | Bin 3410 -> 5139 bytes
test/reference/reflected-stroke.rgb24.ref.png | Bin 5119 -> 0 bytes
.../reflected-stroke.traps.argb32.ref.png | Bin 4994 -> 5053 bytes
.../reference/reflected-stroke.traps.rgb24.ref.png | Bin 4994 -> 5053 bytes
.../rounded-rectangle-stroke.base.argb32.ref.png | Bin 1060 -> 856 bytes
.../rounded-rectangle-stroke.base.rgb24.ref.png | Bin 1060 -> 856 bytes
.../rounded-rectangle-stroke.traps.argb32.ref.png | Bin 1060 -> 856 bytes
.../rounded-rectangle-stroke.traps.rgb24.ref.png | Bin 1060 -> 856 bytes
.../spline-decomposition.base.argb32.ref.png | Bin 19075 -> 19089 bytes
.../spline-decomposition.base.rgb24.ref.png | Bin 19075 -> 19089 bytes
.../spline-decomposition.traps.argb32.ref.png | Bin 19075 -> 19089 bytes
.../spline-decomposition.traps.rgb24.ref.png | Bin 19075 -> 19089 bytes
test/reference/stroke-ctm-caps.argb32.ref.png | Bin 942 -> 0 bytes
test/reference/stroke-ctm-caps.base.argb32.ref.png | Bin 873 -> 835 bytes
test/reference/stroke-ctm-caps.base.rgb24.ref.png | Bin 873 -> 835 bytes
test/reference/stroke-ctm-caps.ref.png | Bin 921 -> 896 bytes
test/reference/stroke-ctm-caps.rgb24.ref.png | Bin 942 -> 0 bytes
.../reference/stroke-ctm-caps.traps.argb32.ref.png | Bin 873 -> 835 bytes
test/reference/stroke-ctm-caps.traps.rgb24.ref.png | Bin 873 -> 835 bytes
.../reference/subsurface-scale.base.argb32.ref.png | Bin 5921 -> 5919 bytes
test/reference/subsurface-scale.base.ref.png | Bin 5216 -> 0 bytes
test/reference/subsurface-scale.base.rgb24.ref.png | Bin 5921 -> 5919 bytes
.../subsurface-scale.traps.argb32.ref.png | Bin 5921 -> 5919 bytes
.../reference/subsurface-scale.traps.rgb24.ref.png | Bin 5921 -> 5919 bytes
test/reference/subsurface.base.argb32.ref.png | Bin 1811 -> 1801 bytes
test/reference/subsurface.base.rgb24.ref.png | Bin 1811 -> 1801 bytes
test/reference/subsurface.traps.argb32.ref.png | Bin 1811 -> 1801 bytes
test/reference/subsurface.traps.rgb24.ref.png | Bin 1811 -> 1801 bytes
.../surface-pattern-operator.base.argb32.ref.png | Bin 5184 -> 5107 bytes
.../surface-pattern-operator.traps.argb32.ref.png | Bin 5184 -> 5107 bytes
test/reference/twin-antialias-gray.argb32.ref.png | Bin 3990 -> 0 bytes
.../twin-antialias-gray.base.argb32.ref.png | Bin 4392 -> 4320 bytes
.../twin-antialias-gray.base.rgb24.ref.png | Bin 4392 -> 4320 bytes
test/reference/twin-antialias-gray.ref.png | Bin 2292 -> 3948 bytes
test/reference/twin-antialias-gray.rgb24.ref.png | Bin 3990 -> 0 bytes
.../twin-antialias-gray.traps.argb32.ref.png | Bin 4392 -> 4320 bytes
.../twin-antialias-gray.traps.rgb24.ref.png | Bin 4392 -> 4320 bytes
.../twin-antialias-mixed.base.argb32.ref.png | Bin 2230 -> 2340 bytes
.../twin-antialias-mixed.base.rgb24.ref.png | Bin 2230 -> 2340 bytes
.../twin-antialias-mixed.traps.argb32.ref.png | Bin 2230 -> 2340 bytes
.../twin-antialias-mixed.traps.rgb24.ref.png | Bin 2230 -> 2340 bytes
.../twin-antialias-subpixel.argb32.ref.png | Bin 3990 -> 0 bytes
.../twin-antialias-subpixel.base.argb32.ref.png | Bin 4392 -> 4320 bytes
.../twin-antialias-subpixel.base.rgb24.ref.png | Bin 4392 -> 4320 bytes
test/reference/twin-antialias-subpixel.ref.png | Bin 2292 -> 3948 bytes
.../twin-antialias-subpixel.rgb24.ref.png | Bin 3990 -> 0 bytes
.../twin-antialias-subpixel.traps.argb32.ref.png | Bin 4392 -> 4320 bytes
.../twin-antialias-subpixel.traps.rgb24.ref.png | Bin 4392 -> 4320 bytes
test/reference/twin.argb32.ref.png | Bin 3990 -> 0 bytes
test/reference/twin.base.argb32.ref.png | Bin 4392 -> 4320 bytes
test/reference/twin.base.rgb24.ref.png | Bin 4392 -> 4320 bytes
test/reference/twin.ref.png | Bin 2292 -> 3948 bytes
test/reference/twin.rgb24.ref.png | Bin 3990 -> 0 bytes
test/reference/twin.traps.argb32.ref.png | Bin 4392 -> 4320 bytes
test/reference/twin.traps.rgb24.ref.png | Bin 4392 -> 4320 bytes
.../unantialiased-shapes.traps.argb32.ref.png | Bin 3977 -> 3932 bytes
.../unantialiased-shapes.traps.rgb24.ref.png | Bin 3977 -> 3932 bytes
test/reference/unbounded-operator.rgb24.ref.png | Bin 1333 -> 1333 bytes
.../unbounded-operator.traps.argb32.ref.png | Bin 2648 -> 2764 bytes
.../unbounded-operator.traps.rgb24.ref.png | Bin 1269 -> 1302 bytes
.../reference/unclosed-strokes.base.argb32.ref.png | Bin 1482 -> 1452 bytes
test/reference/unclosed-strokes.base.rgb24.ref.png | Bin 1482 -> 1452 bytes
.../unclosed-strokes.traps.argb32.ref.png | Bin 1482 -> 1452 bytes
.../reference/unclosed-strokes.traps.rgb24.ref.png | Bin 1482 -> 1452 bytes
test/reference/user-font.argb32.ref.png | Bin 6478 -> 0 bytes
test/reference/user-font.base.argb32.ref.png | Bin 6080 -> 5785 bytes
test/reference/user-font.base.rgb24.ref.png | Bin 6080 -> 5785 bytes
test/reference/user-font.ref.png | Bin 4939 -> 6209 bytes
test/reference/user-font.rgb24.ref.png | Bin 6478 -> 0 bytes
test/reference/user-font.traps.argb32.ref.png | Bin 6080 -> 5785 bytes
test/reference/user-font.traps.rgb24.ref.png | Bin 6080 -> 5785 bytes
347 files changed, 0 insertions(+), 0 deletions(-)
commit d6a05676849509049fc54eea2559803b6247a6fe
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Oct 3 17:38:21 2012 +0100
stroke: Remove redundant code for computing culling extents
Same code repeated!
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke.c | 91 +++++++++++++++++------------------------------
src/cairo-rectangle.c | 16 ++-------
2 files changed, 35 insertions(+), 72 deletions(-)
commit 8020e0bc8cbd3e5ac188eb305b74ae1c1f362a31
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Oct 3 17:01:41 2012 +0100
recording: Perform an explicit during snapshot
In order to avoid recursing upon our source mutex when doing a snapshot,
we can perform an explicit copy of the command array. This should also
be faster than performing a replay as well.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50443
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-recording-surface.c | 312 ++++++++++++++++++++++++++++++++++++++++-
1 file changed, 311 insertions(+), 1 deletion(-)
commit 797441093a8346003552e0cf89aef2a644ff53ab
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 27 15:21:42 2012 +0100
tor: Fudge the edge if it is projected into a point
If we generate an edge (through polygon-intersect) where its end-points
lie outside the line definition then it is possible for that line to be
degenerate under sample grid projection. Apply a fudge factor to prevent
explosions as otherwise we reject an edge whose height is not strictly
0.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54822
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-tor-scan-converter.c | 2 +-
src/cairo-tor22-scan-converter.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
commit cabb3c3bdf3153719b0ee538ea1b66137dc89085
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 27 12:21:00 2012 +0100
spans-compositor: Remove polygon limits after construction
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
commit c05147b215072f9bd5e951011f68d9e647cf001f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 27 11:41:58 2012 +0100
test: Refresh reference image for clip-disjoint-quad
Rather than using the traps reference for all target as this then
generates false negatives with the spans compositor.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/clip-disjoint-quad.ref.png | Bin 1542 -> 1592 bytes
test/reference/clip-disjoint-quad.traps.ref.png | Bin 0 -> 1542 bytes
2 files changed, 0 insertions(+), 0 deletions(-)
commit ef0b2e43ee299a1c2e7ecfbdf36a610c4ec53d0e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 27 11:35:40 2012 +0100
composite-rectangles: Update unbounded (clip extents) after reducing clip
So that the composite-rectangles remains consistent with the reduced
clip in case the individual compositors try to optimise their rendering
strategies based on the reduced clip and the overall extents.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-composite-rectangles.c | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
commit 36536d3eb83a8f942bcf1afba4d0815fbeaca10f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 27 11:14:18 2012 +0100
spans-compositor: Use the tight clip-boxes for polygon construction
If we will be reducing the clip intersection to a single clip box check
during construction, it helps if we use the tight clip box.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 29 +++++++++++++++++++----------
1 file changed, 19 insertions(+), 10 deletions(-)
commit 7e856071a27b06a6ae35b6445635da9276975c69
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 27 11:13:23 2012 +0100
polygon-intersect: Exclude non-overlapping clip boxes from consideration
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-polygon-intersect.c | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
commit 3969f2c687aa94721e02d50c2f9e1b4d62a546f7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 27 09:56:36 2012 +0100
test: Add clip-disjoint-quad
Exercises a bug in the polygon intersection code demonstrated by Søren
Sandmann.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/clip-disjoint-quad.c | 83 +++++++++++++++++++++++++++++
test/reference/clip-disjoint-quad.ref.png | Bin 0 -> 1542 bytes
3 files changed, 84 insertions(+)
commit 9735d1d716262a0c4f0a77363ce8c7d6064fa7d6
Author: Uli Schlachter <psychon@znc.in>
Date: Tue Sep 25 11:58:18 2012 +0200
mark_dirty: Check surface status
This problem was introduced in commit "xlib: Implement SHM fallbacks and fast
upload paths". Before, cairo_surface_mark_dirty() directly called
cairo_surface_mark_dirty_rectangle() with special "magical arguments" and thus
didn't need any checks on the surface status.
Fixes: api-special-cases
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-surface.c | 7 +++++++
1 file changed, 7 insertions(+)
commit 2be125817ade58ca25cc6cc6b23e2f4dbea722c6
Author: Uli Schlachter <psychon@znc.in>
Date: Tue Sep 25 11:40:22 2012 +0200
surface: Check reference count right before free
This makes sure that nothing took a reference during finishing and during
detaching user and mime-data.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-surface.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit f2720e2ba1f68e9ec8f8822e41f4045663e99ad8
Author: Uli Schlachter <psychon@znc.in>
Date: Tue Sep 25 11:39:42 2012 +0200
xcb: Add a missing check for FillRectangles
Fixes: big-empty-box big-little-box operator operator-alpha
surface-pattern-operator unbounded-operator
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 13 +++++++++----
1 file changed, 9 insertions(+), 4 deletions(-)
commit b264ae76bd2621363cbc1e2b5bcdc4b0583d4b1f
Author: Uli Schlachter <psychon@znc.in>
Date: Tue Sep 25 11:34:52 2012 +0200
xcb: Check if traps are supported before using them
This code tried to optimize the clip away by intersecting the boxes with the
clip polygon. However, it also did so when the server didn't support traps.
Fixes: clip-stroke-unbounded clip-fill-nz-unbounded clip-fill-eo-unbounded
clip-fill clip-fill-rule a1-clip-fill-rule clip-group-shapes-circles
clip-intersect clip-nesting clip-operator clip-push-group clip-polygons
clip-shape clip-text clip-twice inverted-clip mask random-clip
rotate-clip-image-surface-paint trap-clip unantialiased-shapes
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit 0ccbb83eb892aca51838aeb1da45070b385a6d88
Author: Uli Schlachter <psychon@znc.in>
Date: Tue Sep 25 11:31:04 2012 +0200
xcb: Check the right flag for FillRectangles
Fixes: operator-source
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit b33d83ad49343ce226f76ceb6c83659c72442e91
Author: Uli Schlachter <psychon@znc.in>
Date: Tue Sep 25 11:12:58 2012 +0200
xcb: Verify extension support before sending
This commit adds lots of asserts. These asserts verify for each extension
request that we send that the server really supports this.
Sadly, this causes 28 assertion failures in the test suite with xcb-render-0.0.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-connection-render.c | 20 ++++++++++++++++++++
src/cairo-xcb-connection-shm.c | 4 ++++
2 files changed, 24 insertions(+)
commit de31018bdd1cc78fd54cf9fd7b220117008c33a8
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Sep 15 15:43:16 2012 +0200
xcb: Switch to compositor architecture
This commit removes the hand-written code in cairo-xcb-surface.c and instead
makes use of cairo_compositor_t. Surprisingly, this doesn't break a single test
case. :-)
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-private.h | 59 ++++-----
src/cairo-xcb-surface-render.c | 75 ++++++-----
src/cairo-xcb-surface.c | 277 +++++++++++++++++++---------------------
3 files changed, 197 insertions(+), 214 deletions(-)
commit 6300579a8b2c0e38a0c1abae89675bf6cb769902
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Sep 15 14:56:51 2012 +0200
xcb: Remove unimplemented cairo compositor
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/Makefile.sources | 1 -
src/cairo-xcb-private.h | 44 -------------------
src/cairo-xcb-surface-cairo.c | 94 -----------------------------------------
src/cairo-xcb-surface.c | 32 --------------
4 files changed, 171 deletions(-)
commit 8d86ea4dcbefc982e4a694f1d8e90a90b3695c10
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Sep 15 14:37:51 2012 +0200
xcb: Fix a warn_unused_result warning
cairo-xcb-surface.c: In function '_drawable_changed':
cairo-xcb-surface.c:1434:39: warning: ignoring return value of '_cairo_surface_begin_modification', declared with attribute warn_unused_result [-Wunused-result]
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit d6253dd53127368797dfd43084450e70b4921f77
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Sep 15 14:36:06 2012 +0200
Remove an unimplemented function declaration
This was added in commit 2458120dee350cd1b49f999f64b17a895a4b6607.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-pattern-private.h | 3 ---
1 file changed, 3 deletions(-)
commit 08e3f4614b688331534d72f46c9c3e9f292d0216
Author: Uli Schlachter <psychon@znc.in>
Date: Sat Sep 15 14:33:54 2012 +0200
Fix make check
The inline functions in cairo-backend-private.h tried to dereference a cairo_t,
which wasn't defined. Fix this by including cairo-private.h.
In cairo-mempool-private.h, size_t is used but stddef.h is not included.
Fixes:
CHECK cairo-backend-private.h
In file included from headers-standalone-tmp.c:1:0:
./cairo-backend-private.h: In function ‘_cairo_backend_to_user’:
./cairo-backend-private.h:179:7: error: dereferencing pointer to incomplete type
./cairo-backend-private.h: In function ‘_cairo_backend_to_user_distance’:
./cairo-backend-private.h:185:7: error: dereferencing pointer to incomplete type
./cairo-backend-private.h: In function ‘_cairo_user_to_backend’:
./cairo-backend-private.h:191:7: error: dereferencing pointer to incomplete type
./cairo-backend-private.h: In function ‘_cairo_user_to_backend_distance’:
./cairo-backend-private.h:197:7: error: dereferencing pointer to incomplete type
CHECK cairo-mempool-private.h
In file included from headers-standalone-tmp.c:1:0:
./cairo-mempool-private.h:61:5: error: unknown type name ‘size_t’
./cairo-mempool-private.h:62:5: error: unknown type name ‘size_t’
./cairo-mempool-private.h:68:8: error: unknown type name ‘size_t’
./cairo-mempool-private.h:73:44: error: unknown type name ‘size_t’
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-backend-private.h | 1 +
src/cairo-mempool-private.h | 2 ++
2 files changed, 3 insertions(+)
commit 1054840d864da7efcac2ee02d43a526ed6a6760c
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Sat Sep 22 15:59:36 2012 -0400
Fix malloc-stats for newer glibc
util/malloc-stats.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 38c6084758b178177cff8a3b6a9e0b5be60c80a2
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Mon Sep 17 16:26:08 2012 -0400
[util/malloc-stats] Use tighter spacing.
util/malloc-stats.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 59248fb2628e86ff62abfbf122b88c2a299ec393
Author: Weng Xuetian <wengxt@gmail.com>
Date: Thu Sep 13 22:56:57 2012 +0100
xlib: Reset fallback counter when discarding the fallback
References: https://bugs.freedesktop.org/show_bug.cgi?id=54657
src/cairo-xlib-surface.c | 2 ++
1 file changed, 2 insertions(+)
commit 5c59d989f9037f94c80ccd7929dc05f4a95be4df
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 13 22:50:11 2012 +0100
xlib: Destroy the fallback damage along with the fallback surface
Whenever we discard the fallback surface, we need to destroy the
associated damage tracking, so move this into the common discard
routine.
This should fix the issue when trying to flush the fallback before
the user modifies any foreign Drawables. The current code issued the
flush and then explicitly discard the fallback, but unless it was idle
at the time of the flush the associated damage would not have also been
destroyed. Asserts followed.
References: https://bugs.freedesktop.org/show_bug.cgi?id=54657
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 13 +++++--------
1 file changed, 5 insertions(+), 8 deletions(-)
commit 97282ef51a01ae2ac3a7a8bf3ebce841a60dc907
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 13 17:00:24 2012 +0100
xlib: Do not call _cairo_xlib_surface_flush directly
Use the higher level layer to be sure we detach any snapshots and other
cached data that is invalidated along with the change of Drawable.
Pointed out by the eternally wise Uli Schlachter.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 69d97d97bea86e7f4223d857803fb7f0ec0d369f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 13 16:45:46 2012 +0100
xlib: Force the fallback flush before updating the external Drawable
_cairo_surface_begin_modification() performs an internal flush, for
which the xlib backend skips flushing the fallback surface as it will
continue to use it for the subsequent operation. In the case where we
are flushing prior to updating the Drawable, we need to perform an
external flush which will trigger the posting of the damage from the
fallback surface.
Reported-by: Weng Xuetian <wengxt@gmail.com>
References: https://bugs.freedesktop.org/show_bug.cgi?id=54657
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 6ee216000ae487492fceda0fb3fecb20bb9a41f6
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 13 15:25:49 2012 +0100
xlib: Explicitly discard the fallback shm pixmap upon user modification
If the user changes the size of the underlying drawable, we much make
sure that we discard the current ShmPixmap in order to create a new
fallback pixmap of the correct size next time.
Reported-by: Weng Xuetian <wengxt@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 38 +++++++++++++++++++++++++++++---------
1 file changed, 29 insertions(+), 9 deletions(-)
commit e2c4bb9465e6261eb79f24af52d339df0b563b55
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Sep 13 12:40:49 2012 +0100
xlib: Fix regression in cairo_xlib_surface_set_drawable()
In commit 0bfd2acd35547fc2bd0de99cc67d153f0170697d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 13 01:34:12 2012 +0100
xlib: Implement SHM fallbacks and fast upload paths
I made the mistake of inverting the logic for
cairo_xlib_surface_set_drawable() causing it then to never update.
Thanks to Uli Schlachter for spotting my error.
References: https://bugs.freedesktop.org/show_bug.cgi?id=54657
Reported-by: Weng Xuetian <wengxt@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 77330f6b841b6938e0da44b32692cd64b0f53cbd
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 11 18:20:45 2012 +0100
xcb: Always flush the fallback damage to foreign drawables
We need to flush any fallback to a foreign drawable upon finish.
However, we must be careful not to attach the snapshot in that case or
else we end up with an expected reference. This is similar to the
treatment of xlib/shm in commit f864e2d70.
Reported-by: Henry Song <henry.song@samsung.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xcb-surface.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit 93774ac0348df04c3fa84f5bc01fe35c87a62089
Author: Andrea Canciani <ranma42@gmail.com>
Date: Wed Sep 5 17:52:50 2012 +0200
test: Add degenerate closed path case to get-path-extents
This is a testcase to ensure that we do not regress
https://bugs.freedesktop.org/show_bug.cgi?id=54549 (which is already
fixed by b0c466e27afcec230b2c9436eeb924c05123a544).
test/get-path-extents.c | 8 ++++++++
1 file changed, 8 insertions(+)
commit f34b87f6d76cbea93acd4a8c73c8c6a6b412a302
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Sep 10 15:09:18 2012 +0100
path: Convert from backend coordinates back into user coordinates
Fixes regression from commit 83bfd85a1378e61b8bdc3f554f5e07900311f61f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Apr 23 19:45:26 2010 +0100
Implement cairo_backend_t
As there exists no public API to perform the operation we needed, and we
failed to create one, the constructed path failed to correctly remove
the device offset.
Fixes copy-path under device translation.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54732
Reported-by: Benjamin Berg <benjamin@sipsolutions.net>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path.c | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
commit df6780442feba5c0c9404353177f24913b58bd32
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Sep 10 15:03:47 2012 +0100
context: Add missing functions to transform between user and backend coordinates
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-backend-private.h | 29 ++++++++++++++++++++++++++
src/cairo-default-context.c | 44 +++++++++++++++++++++++++++++++++++++++
src/cairo-gstate-private.h | 10 +++++++++
src/cairo-gstate.c | 7 +++++++
src/skia/cairo-skia-context.cpp | 4 ++++
5 files changed, 94 insertions(+)
commit f864e2d70f53a1feeee5e32bf9724b1e544025a6
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Sep 8 16:39:05 2012 +0100
xlib/shm: Explicitly release shm surface if we do not own the pixmap
In this case we want to prevent the short-circuiting of the flush of the
ShmPixmap that is ordinarily performed during finish().
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
commit 558f0a5ab4a88937b8c212c13309d11cb1a101af
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Sep 8 15:12:58 2012 +0100
image: Check for an error surface before dereferencing the backend
As the surface->backend will be NULL in such an error surface, and we
may be legitimately doing boundary checks to reject the error surface.
The alternative would be to set an explicit error surface backend.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54664
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface-inline.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit b0c466e27afcec230b2c9436eeb924c05123a544
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Sep 5 14:55:55 2012 +0100
path: Update last_move_point after move-to
Reported-and-tested-by: Jussi Kukkonen <jku@linux.intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54549
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-fixed.c | 1 +
1 file changed, 1 insertion(+)
commit 83759e7d592c5d7b12b2341574fd584fe5e0fb5a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Sep 4 14:42:34 2012 +0100
default-context: Convert the relative path segments into the backend coordinates
When transforming the incoming paths, the goal is to transform them from
user space onto the target coordinate system. Currently for relative
paths we used user_to_device_distance as we presumed that there was no
backend scale factor. However, Alex Larsson noticed that these then
broke when playing around with such a device transform...
Reported-by: Alexander Larsson <alexl@redhat.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-default-context.c | 10 +++++-----
src/cairo-gstate-private.h | 10 ++++++++++
src/cairo-gstate.c | 7 +++++++
3 files changed, 22 insertions(+), 5 deletions(-)
commit c0b1b178184ccfba0fe60c2a49901cadef9df36b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 27 13:21:35 2012 +0100
xlib/shm: Masquerade as an ordinary ShmCompletionEvent
Needs a bit of extra work to create the extension event, but this leaves
the application with only a single spurious event to filter.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-private.h | 6 +--
src/cairo-xlib-surface-shm.c | 109 +++++++++++-------------------------------
2 files changed, 32 insertions(+), 83 deletions(-)
commit be2973e405764d4de4a44a01ff98db3e6495a361
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 26 11:59:46 2012 +0100
bentley-ottmann: Cache the most recent edge colinearity check
We frequently compare neighbouring edges for their colinearity (in case
we can skip over them in the active list) so we can record the last
comparison and reuse the result next time.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-bentley-ottmann.c | 42 ++++++++++++++++++++++++++++++++----------
1 file changed, 32 insertions(+), 10 deletions(-)
commit 637659fb511824eb8ac31ef85db10406295734e6
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 26 00:39:43 2012 +0100
bentley-ottmann: hint that the insertion compare function should be inlined
Albeit it too large for gcc to automatically inline, it is only used
from within a single function. Hopefully gcc can optimise better with
the hint.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-bentley-ottmann.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 3c6e4311fb3b9fe400555a8d97193fc87974899b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 26 00:35:52 2012 +0100
bentley-ottmann: Only check the pairs of coordinates for equality.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-bentley-ottmann.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 535b4e970cdbb459be621cecafd7f91ca4698396
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 26 00:16:33 2012 +0100
bentley-ottman: Remove a few superfluous status propagation
For the traps it is simpler if we report the status at the end, and
no-op the accumulation of the trap after hitting the error condition.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-bentley-ottmann.c | 69 +++++++++++++------------------------------
1 file changed, 21 insertions(+), 48 deletions(-)
commit b66065537cec5f03b33f7513f06e26630c28b5f1
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 26 10:21:22 2012 +0100
stroke: Compute bounds for fallback stroker (typically dashing)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke.c | 42 +++++++++++++++++++++++++++++++++++-------
1 file changed, 35 insertions(+), 7 deletions(-)
commit 99593538a9d054aa1bb9fa620fced8c8b8ccdc9d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 26 10:50:50 2012 +0100
stroke: Convert fallback stroker to new pen vertex finder
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke.c | 173 ++++++++++++++++++++++++++---------------------
1 file changed, 95 insertions(+), 78 deletions(-)
commit 4eb8e9f8618c5c5c002b7fd72c0370451ae1f511
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 25 23:57:56 2012 +0100
stroke: Convert a very small round-join into a miter
Avoid adding a bevel join if the miter point is within tolerance.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-polygon.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit fa93fc63b652f04bcf7d5340a13023819ecf2140
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 25 23:54:36 2012 +0100
stroke: Precompute the line half-width
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-polygon.c | 82 ++++++++++++++++++---------------------
1 file changed, 38 insertions(+), 44 deletions(-)
commit 3cf6551ac71bac4d0ae1d0938bc0205dfc03f65c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 25 23:42:45 2012 +0100
stroke: Use new pen vertex range finders
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-polygon.c | 93 ++++++++++++---------------------------
1 file changed, 27 insertions(+), 66 deletions(-)
commit 74e9ae8cdff31e9a039b17f7dbe6e80f98e2c047
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 25 23:29:21 2012 +0100
pen: Use bisection to speed up vertex finding
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pen.c | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/cairoint.h | 12 +++++++++
2 files changed, 93 insertions(+)
commit aeb039b16dc302192113a7f10c4b86e7d13eb221
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 25 12:57:01 2012 +0100
stroke: Skip spline evaluation when stroking to a polygon
If the spline is wholly outside the clip region, accounting for the
stroke width and additional rendering, then we can simplify that spline
with a straight line.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-polygon.c | 37 +++++++++++++++++++++++++++++++++++++
1 file changed, 37 insertions(+)
commit bdf83008f4b2c723fd8e65e2a92bc47a2e7bc442
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 25 08:39:30 2012 +0100
compositor: Skip invisible strokes
If the pen is reduced to a single point, it is effectively invisible
when rasterised, so skip the stroke composition.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-compositor.c | 4 ++++
src/cairo-pen.c | 34 +++++++++++++---------------------
src/cairoint.h | 5 +++++
3 files changed, 22 insertions(+), 21 deletions(-)
commit fc38d7375d4f0342ece91596d71f0ce56aa2c975
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 24 17:39:08 2012 +0100
xlib/shm: Add missing release of the display after GetImage
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
commit 5355eab17d026f5d5566e6de47c9dbffc5ece5d0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 24 10:34:05 2012 +0100
xlib/shm: Reduce the frequency at which we emit events
Flushing the shm operation is a fairly rare event, as it is typically
only involved with mixed rendering on a similar image, and should be
triggering its own events. Therefore we should be able to reduce our
event emission to the critical points in order to limit the amount of
extra overhead we generate.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-display.c | 4 ++--
src/cairo-xlib-surface-shm.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
commit 5c4087af810763ee98682b3bcc1c759ad8b4c27b
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue Feb 28 10:50:16 2012 -0800
gl: Add a non-thread-aware mode for GL devices
GLX and EGL devices are thread-aware currently. This
is safe, but on certain GPUs can be very expensive. In
this patch, we expose a new API which turns off the
safety feature in cases where performance is a priority.
src/cairo-egl-context.c | 2 ++
src/cairo-gl-device.c | 13 +++++++++++++
src/cairo-gl-private.h | 2 ++
src/cairo-gl.h | 4 ++++
src/cairo-glx-context.c | 7 ++++---
5 files changed, 25 insertions(+), 3 deletions(-)
commit 97410990935bb4baacbc1584362a87733c483583
Author: Martin Robinson <mrobinson@igalia.com>
Date: Fri Aug 17 16:00:51 2012 -0700
gl: Remove the shader language version abstraction
Cairo only needs to support one version of the shader language API,
thanks to the dispatch table. This seems unlikely to change any time
soon. This makes the addition of new features, such as a uniform
location cache, simpler.
src/cairo-gl-private.h | 6 +-
src/cairo-gl-shaders.c | 464 ++++++++++++++++--------------------------------
2 files changed, 159 insertions(+), 311 deletions(-)
commit 5c77b4df146796d8280a4f5b16949e3db4a1f84a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Aug 21 21:03:04 2012 +0100
xlib/shm: Only check if we are expecting an event
As the XCheckWindowEvent() has the unwanted side-effect of flushing the
output queue when there is no event available (libX11 seems to be
entirely anti-performant), we need to roll our own that only checks the
already available event queue.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-display.c | 2 --
src/cairo-xlib-private.h | 3 --
src/cairo-xlib-surface-shm.c | 62 +++++++++++++++++++++++++++++++-----------
3 files changed, 46 insertions(+), 21 deletions(-)
commit aa5c7123097c56e2c35bf88b8377bbdd1523fbce
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Aug 21 10:12:06 2012 +0100
xlib/shm: Use a genuine event rather than an open-ended request
Adding lots of requests without popping the replies causes xcb to
continually sort large lists of unprocessed data. Use an event instead
and regularly dequeue them.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-display.c | 4 ++-
src/cairo-xlib-private.h | 3 ++
src/cairo-xlib-surface-shm.c | 80 +++++++++++++++++++++++++++++++-----------
3 files changed, 66 insertions(+), 21 deletions(-)
commit 30d09cd33a582a2dd3f3a544366892c724f67592
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 20 17:20:08 2012 +0100
cairo-script: Attempt to fallback for unresolved patterns
If we fail to resolve a particular pattern, try removing a few features
from the pattern and see if we can resolve that fallback and continue on
with the trace with a close approximation.
This is then behaves very similar as if the pattern requested a specific
font that was not available on the system and so was substituted.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-script/cairo-script-operators.c | 19 +++++++++++++++++--
1 file changed, 17 insertions(+), 2 deletions(-)
commit a7d505d40f439208b30762be663f332c60bc0883
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 20 16:43:28 2012 +0100
ft: Report FILE_NOT_FOUND if creating a font with a specified nonexistent file
If the FcPattern used to create a font specifies an exact file to use
and it does not exist we will fail much later with an ambiguous
NO_MEMORY error. As suggested by Behdad Esfahbod we should report this
back to the user so that they can take the appropriate action rather
than providing an automatic fallback.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-ft-font.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit ee7f5607192a3341df45199b1c7c8996f2b7347d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 20 14:21:23 2012 +0100
stroker: Avoid emitting a miter join for across an elided degenerate segment
Given the criteria of the rectlinear stroker that it only handles
horizontal and vertical line segments, and eliminates degenerate
segments before stroking, we must be careful not to apply a join between
two horizontal segments (for example if the intervening vertical segment
was degenerate and so elided). A miter join between two colinear
segments is empty, yet we were blissfully extending the line caps to
cover the join.
Fixes: outline-tolerance
Bugzilla: https://bugzilla.mozilla.org/show_bug.cgi?id=407107
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-boxes.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
commit 2a0d81743270aaff29e8951c896cde644fd4e576
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 20 13:34:33 2012 +0100
tests: Add outline-tolerance
From https://bugs.freedesktop.org/show_bug.cgi?id=53841:
"Rectangle drawn incorrectly when it has zero height
and miter limit greater than 1.414"
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/outline-tolerance.c | 52 ++++++++++++++++++++++++++++++
test/reference/outline-tolerance.ref.png | Bin 0 -> 205 bytes
3 files changed, 53 insertions(+)
commit d6f8ce91dc449a29b0921a8787d9a3c9a687b429
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 19 23:55:28 2012 +0100
xlib: Move the shm cleanup from CloseDisplay to finish()
Make sure that we always detach the ShmSegments upon dispose, or else we
can trivially leak lots of memory when using serial Display connections.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-display.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 43c5387d1b251938eeba458a95d63e2dc7178c2d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 19 12:41:15 2012 +0100
ft: Only use a specified font filename if its accessible
If we try to use a non-existent path, FT_New_Face returns an error.
Instead, just use fontconfig to generate a fallback pattern.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-ft-font.c | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
commit b3448c3dff79d0eda2a921178c26eb87f1ba34ea
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 18 09:28:17 2012 +0100
xlib: Drop the false optimisation of using a potentially busy shm upload pixmap
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 2 --
1 file changed, 2 deletions(-)
commit 10ef077324bb4c23630dcdab5f281f6fca00b78e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 18 09:16:49 2012 +0100
xlib/shm: Mark the ShmPixmap as active following an upload flush
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 3 +++
1 file changed, 3 insertions(+)
commit 99a0d38a33a3dd311a4cf4481b7286db4e8ec775
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 18 09:10:07 2012 +0100
xlib/shm: Fix runtime checking of has-shm-pixmaps for !shm case
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 3 +++
1 file changed, 3 insertions(+)
commit ec01c71ecab46e0252d295f8d1f24f261b3f52af
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 18 08:02:42 2012 +0100
xlib/shm: Wrap the detection of shm with locking
As we access a global error variable, we need to hold a mutex against
simultaneous checking of multiple Displays. This should already be true
as we hold our display mutex to serialize initialisation, so just add an
assertion. As the client may mix use of cairo in one thread with X from
another, we need to hold the Display lock and serialise whilst
manipulating the low-level state of the Display.
Suggested-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 6 ++++++
1 file changed, 6 insertions(+)
commit 1bc9f673b61aa48369329606acc13aa5bce94a0a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 23:38:10 2012 +0100
xlib/shm: Avoid using a synchronous ShmCreatePixmap if evading the readback
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
commit 3da2d8a1e277ae76ea2ba2533850b1901c6b3b29
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 23:37:31 2012 +0100
xlib: Only use CopyArea if the ShmPixmap and destination are the same depth
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-render-compositor.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
commit 94815189a42e52a82c602e8f23e69e1826f51ce7
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 22:17:41 2012 +0100
xlib/shm: Clear the similar image surface
The upper layers check that the surface returned to userspace is
cleared; make it so.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
commit c068691ff57c2f6cd750a54db17393c0e132cb00
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 21:33:54 2012 +0100
xlib/shm: Use an impromptu upload ShmSegment
Reduce the number of copies required for uploading large image data.
Ultimately we want the client to allocate the similar-image itself to
acheive zero copy, this is just an intermediate step for legacy clients.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-private.h | 11 ++++--
src/cairo-xlib-render-compositor.c | 65 ++++++++++++++++++++++++++++++++++--
src/cairo-xlib-surface-shm.c | 39 ++++++++++++++--------
src/cairo-xlib-surface.c | 5 ++-
4 files changed, 98 insertions(+), 22 deletions(-)
commit bc38108947a684fb6e7af99a48ebc8f79d05856a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 20:57:04 2012 +0100
xlib/shm: Limit use of the impromptu fallback pixmap for uploads
We want to avoid unnecessary readback and so only want to use the
ShmPixmap when uploading the complete surface.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-fallback-compositor.c | 14 +++++++++-----
src/cairo-xlib-private.h | 3 ++-
src/cairo-xlib-render-compositor.c | 28 +++++++++++++++++++++++++++-
src/cairo-xlib-surface-shm.c | 8 +++++++-
src/cairo-xlib-surface.c | 4 ++--
5 files changed, 47 insertions(+), 10 deletions(-)
commit 4af7a1c8637f3008a2265e063ab990eec07e02dd
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 23:17:43 2012 +0100
xlib/shm: Propagate the last-request to the synchronous create
If we optimise away the pending frees we must be careful to propagate
the implied sync.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
commit 1a87c526bfb7c35f5f207ca4aca7cf50a3b96765
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 17:52:37 2012 +0100
xcb: Migrate to the common mempool implementation
Having extracted the code for use by the SHM allocator for xlib, remove
the now redundant copy from xcb.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xcb-shm.c | 385 +++------------------------------------------------
1 file changed, 21 insertions(+), 364 deletions(-)
commit e568e7c18b6aa631e4aedd44c44a14bbe6d72976
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 15:38:16 2012 +0100
xlib/shm: Fix up the shrinking of the priority queue
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface-shm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 7266d59ebc26c5ae80c04f0270fb88f33217ebd9
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Aug 17 15:31:07 2012 +0100
configure: Restore previous pixman required version of 0.22.0
With optional compile time support for pixman glyphs, our hard pixman
requirement is then just 0.22.0 for the radial fixes (iirc).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit f42c0dcf7b37c8daf80e8075aa5286d137062a88
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue Aug 14 21:50:37 2012 +0100
tor22: Add a simple method to quickly compute coverage (with saturation)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-tor22-scan-converter.c | 2 ++
1 file changed, 2 insertions(+)
commit 0bfd2acd35547fc2bd0de99cc67d153f0170697d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Aug 13 01:34:12 2012 +0100
xlib: Implement SHM fallbacks and fast upload paths
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 4 +-
src/Makefile.sources | 3 +
src/cairo-cogl-surface.c | 8 +-
src/cairo-damage.c | 1 -
src/cairo-directfb-surface.c | 6 +-
src/cairo-gl-surface.c | 9 +-
src/cairo-image-compositor.c | 26 +-
src/cairo-image-surface-inline.h | 2 +-
src/cairo-image-surface-private.h | 6 +
src/cairo-image-surface.c | 2 +-
src/cairo-mempool-private.h | 83 +++
src/cairo-mempool.c | 359 ++++++++++
src/cairo-quartz-image-surface.c | 6 +-
src/cairo-scaled-font.c | 2 +-
src/cairo-surface-backend-private.h | 3 +-
src/cairo-surface-inline.h | 4 +-
src/cairo-surface-observer.c | 6 +-
src/cairo-surface-private.h | 3 +
src/cairo-surface-snapshot.c | 5 +-
src/cairo-surface-subsurface.c | 6 +-
src/cairo-surface.c | 101 ++-
src/cairo-xcb-surface.c | 6 +-
src/cairo-xlib-display.c | 9 +-
src/cairo-xlib-fallback-compositor.c | 190 +++++-
src/cairo-xlib-private.h | 59 ++
src/cairo-xlib-render-compositor.c | 155 ++++-
src/cairo-xlib-source.c | 231 ++++---
src/cairo-xlib-surface-shm.c | 1119 +++++++++++++++++++++++++++++++
src/cairo-xlib-surface.c | 286 ++++++--
src/cairo-xlib-xcb-surface.c | 5 +-
src/cairoint.h | 2 +-
src/drm/cairo-drm-gallium-surface.c | 6 +-
src/drm/cairo-drm-i915-private.h | 2 +-
src/drm/cairo-drm-i915-surface.c | 8 +-
src/drm/cairo-drm-i965-shader.c | 4 +-
src/drm/cairo-drm-i965-surface.c | 5 +-
src/drm/cairo-drm-intel-private.h | 3 +-
src/drm/cairo-drm-intel-surface.c | 5 +-
src/drm/cairo-drm-radeon-surface.c | 6 +-
src/win32/cairo-win32-display-surface.c | 5 +-
src/win32/cairo-win32-gdi-compositor.c | 4 +-
41 files changed, 2517 insertions(+), 238 deletions(-)
commit 140fafed89508c4685f3a464c9dbe8df769f2411
Author: Daniel Stone <daniel@fooishbar.org>
Date: Thu Aug 16 18:23:41 2012 +0100
Fix broken XRender ARGB32 formats
46d79228 did indeed silence the compilation warning, but did so by never
creating an ARGB32 format, as PictStandardARGB32 is defined to 0. Fix
this by using PictStandardNUM as our canary value instead.
This fixes GEdit and Chromium for me, both of which were only rendering
backgrounds and text in their GTK+ sections.
Signed-off-by: Daniel Stone <daniel@fooishbar.org>
src/cairo-xlib-display.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
commit 95b7f4fe3a5deea6766538d843c75626e4bb68cf
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 12 19:10:04 2012 +0100
image: Temporarily resurrect the old non-pixman glyph compositor
As the easiest approach to making another snapshot that only depends
upon a stable pixman, make the new dependency a compile time option.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
configure.ac | 7 +-
src/cairo-image-compositor.c | 285 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 291 insertions(+), 1 deletion(-)
commit 16426dab486767cb16dfaf5158c5d4b3317546b0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Aug 12 16:12:47 2012 +0100
skia: Compile fix for changes to map-to-image
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/skia/cairo-skia-surface.cpp | 16 +++++-----------
1 file changed, 5 insertions(+), 11 deletions(-)
commit d647d4f7db1f9b65f5d7f64574b1989b830aaa7c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 11 19:28:21 2012 +0100
damage: Update tail pointer after allocating new chunk
Reported and based on a patch by fmot.fics
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=53384
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-damage.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
commit adfe9b7eb67f642cda93f80cf9c97f1eaded0317
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 11 17:55:49 2012 +0100
gl: Fudge gradient color generation to handle multiple stops at 0
In order to generate the correct left-hand border color, we need to
fudge the offsets of the color stops if multiple stops are defined at 0.
The reason is that pixman will generate our color ramp by using the
right-most color stop for the pixel centre, but in order to provide the
sample colour outside of the gradient we need pixel 0 to be have the
left-most color.
Reported by Henry Song.
src/cairo-gl-gradient.c | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
commit b0336e9aadbbface0a059887ac62b1398bc81e7b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 11 18:23:51 2012 +0100
gl: Use a wide texture ramp to emulate a linear step function
If the gradient contains a step function, we need an infinitely sharp
texture to emulate the correct output. Failing that, lets just use as
large a texture as can be reasonably handled by the hardware
src/cairo-gl-gradient.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
commit 46d79228df5c5fda114e68d3df02eaa33b5a41c9
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 11 17:48:17 2012 +0100
xlib: Silence compiler warning
cairo-xlib-display.c: In function '_cairo_xlib_display_get_xrender_format':
cairo-xlib-display.c:519:21: warning: 'pict_format' may be used
uninitialized in this function [-Wmaybe-uninitialized]
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-display.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
commit 40e6be327861397a821e92ab626269e31fd13979
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 11 17:43:46 2012 +0100
gl: Remove unused variable
cairo-gl-glyphs.c: In function '_cairo_gl_composite_glyphs_with_clip':
cairo-gl-glyphs.c:442:9: warning: unused variable 'i' [-Wunused-variable]
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-glyphs.c | 1 -
1 file changed, 1 deletion(-)
commit f59b0914f4ddbff0d116c918343a6726d5f4317b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 11 17:38:36 2012 +0100
egl: s/EGL_KHR_surfaceless_opengl/EGL_KHR_surfaceless_context/
Mesa changed the name of the extension it invented, so check for the
real name and the old name before falling back to pbuffers which are not
supported by most EGL implementations.
References: https://bugs.freedesktop.org/show_bug.cgi?id=53361
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-egl-context.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit b438e583089229d934df48e6fbf0edcd1b23dcd4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Aug 11 17:37:52 2012 +0100
trace: Fix propagation of CAIRO_TRACE_OUTDIR to children
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
util/cairo-trace/trace.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 65854a001529932c4f2c85a4ee32095443153319
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Aug 3 18:23:55 2012 +0930
type1 subset: ensure encoding includes all glyphs
Bug 53040
src/cairo-type1-subset.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 5dd0f2eb951f8fb1d50802c99c660de1de486154
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Tue Jul 31 22:52:09 2012 +0930
cff subsetting: widths can be floating point
Bug 52972
src/cairo-cff-subset.c | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
commit 1e9abd6e4e5d857c5e7a117d4e960b222a5f5578
Author: Henry Song <henry.song@samsung.com>
Date: Thu Jul 26 18:31:20 2012 +0100
gl: use absolute value for color difference between gradient stops
src/cairo-gl-gradient.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
commit 652c632fb211cede74cef3813c7d6e8099d02089
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jul 25 17:03:54 2012 +0100
gl: Fallback for copy_boxes if src/dst do not belong to the same device
If the source and destination are on difference devices (GL contexts) we
can not simply texture from one to the other, and must either import the
source into the destination context (which has not yet been done) or
fallback through an image copy.
This patch is based on the work by Henry Song, but moving the check from
the common compositor layer down into the GL backend. This should have
the same effect...
Fixes gl-surface-source
Suggested-by: Henry Song <henry.song@samsung.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-spans-compositor.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
commit f3abb1079a9766646dd0eda2f8a1633f8efff516
Author: Henry Song <henry.song@samsung.com>
Date: Wed Jul 25 16:12:22 2012 +0100
gl: translate proper matrix depending up type of gl_operand
Fixes radial-gradiant-mask-source.
src/cairo-gl-operand.c | 22 ++++++++++++++++++++--
1 file changed, 20 insertions(+), 2 deletions(-)
commit d00539ca13fbd36dea07b386211ad49ef744d5ee
Author: Andrea Canciani <ranma42@gmail.com>
Date: Tue Jul 24 10:21:08 2012 +0200
quartz: Use the correct transform when replaying recording surfaces
Recording surfaces should be replayed with the transform matrix used
in the pattern, otherwise the image surface will be transformed,
introducing artifacts.
Fixes record{1414x,2x}-paint-alpha-{,solid-clip,clip},
record2x-{self-intersecting,text-transform} and record90-paint-alpha.
src/cairo-quartz-surface.c | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
commit 44a07a66135c4f534c909bd84f24cf7c0275a914
Author: Henry (Yu) Song - SISA <hsong@sisa.samsung.com>
Date: Mon Jul 23 16:28:28 2012 +0000
quartz: Never acquire recording surfaces
We need to replay if the source/mask surface is a recording surface
otherwise, a crash happens if it is unbounded.
Fixes crashes in recordxx-xxx tests
src/cairo-quartz-surface.c | 86 ++++++++++++++++++++++++++++++++++----------
1 file changed, 67 insertions(+), 19 deletions(-)
commit 459c060b6fcc0a3b7e6f0e544fe83f954a5ca716
Author: Henry (Yu) Song - SISA <hsong@sisa.samsung.com>
Date: Tue Jul 24 02:05:15 2012 +0000
clip: Transform clip path in _cairo_clip_intersect_clip_path_transformed()
_cairo_clip_intersect_clip_path_transformed() completely ignored the
transformation matrix instead of transforming all the clip paths with
it.
This caused bugs when replaying recording surfaces.
Fixes record{2x,1414x,90}-paint-alpha-clip-mask.
src/cairo-clip.c | 2 ++
1 file changed, 2 insertions(+)
commit 5f1dd8b3684db5aed42f355fa41310639e7d395d
Author: Andrea Canciani <ranma42@gmail.com>
Date: Tue Jul 24 09:56:52 2012 +0200
xcb: Fix make check
The xcb private header uses the ASSERT_NOT_REACHED macro.
This macro is defined in cairoint.h, which needs to be included.
Fixes:
CHECK cairo-xcb-private.h
In file included from headers-standalone-tmp.c:1:
./cairo-xcb-private.h: In function ‘_cairo_xcb_connection_shm_put_image’:
./cairo-xcb-private.h:636: error: ‘ASSERT_NOT_REACHED’ undeclared (first use in this function)
./cairo-xcb-private.h:636: error: (Each undeclared identifier is reported only once
./cairo-xcb-private.h:636: error: for each function it appears in.)
src/cairo-xcb-private.h | 2 ++
1 file changed, 2 insertions(+)
commit 21e3f2e9034b64131075d82a4e34868dc72f2249
Author: Chuanbo Weng <strgnm@gmail.com>
Date: Thu Jul 12 18:08:51 2012 +0100
gl: copy_boxes() does not support copying from a non-texture source
So check for the appropriate surface type at the start and return
UNSUPPORTED if we cannot handle it directly. We will then fallback to
pushing the image instead.
Together with the previous patch, fixes 8 fails in cairo-test-suite.
src/cairo-gl-spans-compositor.c | 3 +++
1 file changed, 3 insertions(+)
commit 77f8bd3199b546b3ba039afc90337159636b63f6
Author: Chuanbo Weng <strgnm@gmail.com>
Date: Thu Jul 12 18:07:42 2012 +0100
gl: Create a new texture surface if the source surface type is gl-window
When the source surface type is gl-window, we should return unsupported
and then create a new texture surface for it. Based on the code of
Henry's tree.
src/cairo-gl-operand.c | 3 +++
1 file changed, 3 insertions(+)
commit ac2668dd087ce32d86d3bd44f7886638e76b5b8a
Author: Dongyeon Kim <dy5.kim@samsung.com>
Date: Thu Jul 12 18:13:43 2012 +0100
gl: Set is_clear flag to FALSE after map_to_image
In _cairo_gl_surface_map_to_image(), the image surface data has been
filled by glReadPixels, so is_clear flag should be set to FALSE.
Otherwise mapped image surface does not get drawn as it is presumed
clear and so returns true from nothing_to_do().
src/cairo-gl-surface.c | 1 +
1 file changed, 1 insertion(+)
commit 70c2125e2c968358a8c7ddaa4e356e9b0de9c323
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jul 12 18:11:21 2012 +0100
perf/chart: Render a solid bar if the column is too narrow for the gradient
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
perf/cairo-perf-chart.c | 53 +++++++++++++++++++++++++++--------------------
1 file changed, 31 insertions(+), 22 deletions(-)
commit 6aed048484801285ca7bd5afd825294f1ab7ce6d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jul 11 11:51:36 2012 +0100
gl: Add the compile fix that I forgot to add to the previous commit
src/cairo-gl-device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit bdb9c2cb4389d7bcbd3602f8ce8fb457fb1003bd
Author: Henry Song <henry.song@samsung.com>
Date: Wed Jul 11 10:05:51 2012 +0100
gl: Destroy glyph cache surface during finish
We must destroy glyph cache surface in device_finish instead of in
device_destroy because in device_destroy device status is
DEVICE_FINISHED and the operation is invalid.
src/cairo-gl-device.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 64a236246bf4276606ce69c79702f15373c5425d
Author: Henry Song <henry.song@samsung.com>
Date: Tue Jul 10 16:12:25 2012 +0100
gl: generate correct gradient color texture
Pixman generates gradient color at the center of pixel. We need to
adjust such accordingly in GL when generating gradient texture
src/cairo-gl-gradient.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit 6938592ec7e1a1b4cfccb11521ecdfdb8579f380
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jul 9 21:50:34 2012 +0100
xlib: If a sample accesses outside of a repeating image, upload it all
Fixes bug-51910
Reported-by: Albertas Vyšniauskas <thezbyg@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51910
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-source.c | 20 +++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
commit ff22ab4c10e169e457887fae4fbd5394d45b939e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jul 9 16:13:49 2012 +0100
test: Add example from bug-51910
The calculation of the required source extents blows up under xlib.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/bug-51910.c | 91 ++++++++++++++++++++++++++++++++++++++
test/reference/bug-51910.ref.png | Bin 0 -> 1987 bytes
3 files changed, 92 insertions(+)
commit 7b6f9fd14091d23a69b06c422262d293268035d0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 29 19:57:21 2012 +0100
test: Add a simple exercise for raster sampling of subpixel geometry
Test that the rasteriser doesn't incorrectly merge disjoint geometry at
the subpixel level.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/reference/sample-diagonal.ref.png | Bin 0 -> 272 bytes
test/reference/sample-horizontal.ref.png | Bin 0 -> 209 bytes
test/reference/sample-vertical.ref.png | Bin 0 -> 209 bytes
test/sample.c | 117 ++++++++++++++++++++++++++++++
5 files changed, 118 insertions(+)
commit 1cac6e7fcc88b8545a9c56bf3265f37418957bb7
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Thu Jul 5 22:41:28 2012 +0930
cff: initialise variable to prevent valgrind warning
src/cairo-cff-subset.c | 1 +
1 file changed, 1 insertion(+)
commit 49c8e1b6744aa9cd296fff07d5be0ba7dcc69ff7
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Thu Jul 5 21:59:33 2012 +0930
cff: use correct size for buffer
Bug 51443
src/cairo-cff-subset.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 77106a038bcd0dd503d383729f14134f76a664b2
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Wed Jul 4 19:54:18 2012 +0930
cff: convert '.' to locale specific decimal point before using sscanf
to fix bug when decoding cff real numbers.
Bug 51443
src/cairo-cff-subset.c | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
commit 64d65f72e5dbc1d9fa2cb4738d93eadc7fd5d7c0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 29 10:25:13 2012 +0100
boilerplate/gl: Round fractional window sizes up
A few test cases purposely create fractional surface sizes which can not
be natively supported by the raster backends such as GL. For these
backends we need to consistent in creating a surface that is large
enough to contain the test, so we need to use ceil() rather than
implicit truncation to integers.
A consequence of the misalignment between the Window size and the
surface size (where one was using ceil and the other not) is that the
first row of the cairo surface would not be visible on the output.
Based on a patch by Chuanbo Wen to fix 5 test cases, such as
group-unaligned.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
boilerplate/cairo-boilerplate-glx.c | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)
commit cb85631c63539f259d6a3c1c04db904cbbf01d93
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jun 25 14:07:33 2012 +0100
ft: Indentation fixup for _get_bitmap_surface()
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-ft-font.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
commit 1bdee6b1ad00a2e5916bffea71719977f37f1982
Author: Chuanbo Weng <strgnm@gmail.com>
Date: Tue Jun 26 08:02:35 2012 +0800
gl: Set correct operation extents.
The dst_x and dst_y should be considered when setting clip extents,
because they are not always be zero. (for example, in clip-operator.c)
src/cairo-gl-glyphs.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
commit 9f52261dd7941ec7b338b050479da25c2571f9ac
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Jun 3 19:35:37 2012 +0200
xcb: Correctly handle a recording surface's extents
The size of the target area doesn't really have much to do with the size of the
recording surface that we are painting from. Thus, let's use the recording
surface's size instead.
Since we apply the transformation before replaying the recording surface, we
need to transform the recording surface's size via the inverse of our pattern
matrix to get the size in the target surface. This makes this a little more
complex.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 48 +++++++++++++++++++++++++++++++---------
1 file changed, 37 insertions(+), 11 deletions(-)
commit e704f64d8fcceb220c8c99092c19c2cfd4bd9330
Author: Uli Schlachter <psychon@znc.in>
Date: Sun Jun 3 16:53:49 2012 +0200
xcb: Handle recording surfaces differently
Let's say we are painting recording surface 'source' to xcb surface 'target' by
replaying the source to a temporary surface 'tmp'.
Previously, the xcb backend replayed the recording surface to tmp with just a
translation and then used that as its source surface with the pattern's
transformation. That means 'tmp' used the same coordinate system as 'source'.
This patch changes this so that the transformation is applied during the replay
and painting from 'tmp' to 'target' is just a simple translation, so 'tmp' now
uses the same coordinate system as 'target'.
This should produce way less better results, because transforming a recording
surface should have less artifacts than transforming a raster surface.
Fixes: record1414x-* record2x-* record90-* ps-surface-source
Breaks (or rather, "exposes unrelated bug that I have not yet figured out in"):
record-extend-*-similar
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 10 +++-------
1 file changed, 3 insertions(+), 7 deletions(-)
commit 13d61d7bdb7ec37ebb7324187aca1b9b9b1600cf
Author: Chuanbo Weng <strgnm@gmail.com>
Date: Sun Jun 24 12:13:02 2012 +0100
gl: Set correct clip rectangle for non-texture destination surfaces
When the desintation surface is not a texture, it is flipped in the Y
axis. So we need to correct the Y coordinates when using glScissor to
the set the clip region.
Fixes 14 cases in cairo-test-suite, for example partial-clip-text-top
src/cairo-gl-composite.c | 27 ++++++++++++++++++++++-----
1 file changed, 22 insertions(+), 5 deletions(-)
commit 166e6f199e909d8aea13cdd4c858d48faad26247
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jun 24 11:33:47 2012 +0100
stroke: Skip inserting a round-join if within tolerance
If the angle between two segments is small we can simply replace the
round-join with a bevel-join. This is done automatically by the
insertion of the triangle fan as it will not be able to find a point
around the pen between the two vectors. However, we can make that search
cheaper by inspecting whether the bisection angle is small enough that
the bevel-join will be within geometric tolerance of the round-join.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-polygon.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
commit b7bd5ae4f3da44131261711bb236cd7aa24a3ae3
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jun 24 11:27:16 2012 +0100
stroke: Use round-joins near inflection points of splines
Near an inflection, the angle between two segments of a spline increases
rapidly (as the radius of curvature decreases for the cusp). The angle
may increase so much that a simple line connecting the two outside
points of the spline is not within the user specified geometric
tolerance (with the result that you can generate severe ugliness around
a cusp). Extend the current detection of the exact inflection to cover
the sharp joins near the cusp by inspecting whether the bisection angle
is larger than acceptable.
Fixes bug-spline.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-polygon.c | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)
commit 3d482e266febcf7da75f5662e518380460068ce1
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Jun 24 11:50:26 2012 +0100
test: Exercise bug in joining together spline segments around cusps
Carl Worth demonstrated a glaring bug in the new stroking code,
introduced in commit 545f30856aac98199 (stroke: Convert the outlines
into contour and then into a polygon), whereby only a bevel join was
being used to connect segments around a sharp inflection point.
This adds the two examples he reported to the test suite.
test/Makefile.sources | 1 +
test/bug-spline.c | 96 +++++++++++++++++++++++++++++++++++++
test/reference/bug-spline.ref.png | Bin 0 -> 5476 bytes
3 files changed, 97 insertions(+)
commit 185a3518968d5ca0babb798fe10f247171a1e001
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Jun 20 09:15:29 2012 +0100
gl: Trim the glyph mask to the operation extents
In the case we try to use an unbounded operation, passing a NULL clip
causes that operation to clear the rest of the surface. Instead we need
to trim the _cairo_surface_mask() to the operation extents.
Fixes overlapping-glyphs.
Suggested-by: Chuanbo Weng <strgnm@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-glyphs.c | 5 +++++
1 file changed, 5 insertions(+)
commit 35e4ffd91cc73fb17c47a12010f515941d6f4d3d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 15 10:52:25 2012 +0100
image: Fix up glyphs compositing
Jose Dapena Paz reported an assertion following the uninitialised status
value being returned. Also the function failed to free its allocations.
Based on a patch by Jose Dapena Paz <jdapena@igalia.com>.
Reported-by: Jose Dapena Paz <jdapena@igalia.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=51104
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 60 +++++++++++++++++-------------------------
1 file changed, 24 insertions(+), 36 deletions(-)
commit 9bc1ea44316d448110c1d128a9f74147f775943d
Author: Henry Song <henry.song@samsung.com>
Date: Thu Jun 14 23:07:34 2012 +0100
subsurface: Disable subsurface-set-snapshot as it creates a ref cycle
_cairo_surface_subsurface_set_snapshot () sets the subsurface as the
snapshot of its target. This creates a reference cycle (as the target
is already referenced by the surface) and thus a memory leak (assuming
the likely case that user doesn't call finish).
Test case: subsurface-similar-repeat.
So make this call as a no-op for the time being until the bug is fixed.
src/cairo-surface-subsurface.c | 6 ++++++
1 file changed, 6 insertions(+)
commit 13ba74a00d34b232f76ecb9efc96eea1227ce649
Author: Andrea Canciani <ranma42@gmail.com>
Date: Thu Jun 14 08:12:41 2012 +0200
quart-image: Fix compilation
quartz-image uses _cairo_surface_is_image(), which is now declared in
cairo-image-surface-inline.h.
Fixes:
cairo-quartz-image-surface.c: In function 'cairo_quartz_image_surface_create':
cairo-quartz-image-surface.c:312: error: implicit declaration of function '_cairo_surface_is_image'
cairo-quartz-image-surface.c:312: warning: nested extern declaration of '_cairo_surface_is_image'
src/cairo-quartz-image-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 615205cf072935401dac46813b597e70bc8f0a8c
Author: Søren Sandmann Pedersen <ssp@redhat.com>
Date: Mon Apr 30 09:41:44 2012 -0400
Use the new pixman_glyph_cache_t API that will be in pixman 0.28.0
This new pixman API allows glyphs to be cached and composited in one
go, which reduces overhead compared to individual calls to
pixman_image_composite_region32().
Notes:
- There is an explicit call to _cairo_image_scaled_glyph_fini(). This
could instead be done with a private, but I chose not to do that
since we don't need to store any actual data; we only need
notification when the glyph dies.
- The slowdown in poppler-reseau is real and stable across runs. I'm
not too concerned about it because this benchmark is only one run
and so it is dominated by glyph cache setup costs and FreeType
rasterizing.
Performance results, image backend:
Speedups
firefox-talos-gfx 5571.55 -> 4265.57: 1.31x speedup
gnome-terminal-vim 1875.82 -> 1715.14: 1.09x speedup
evolution 1128.24 -> 1047.68: 1.08x speedup
xfce4-terminal-a1 1364.38 -> 1277.48: 1.07x speedup
Slowdowns
poppler-reseau 374.42 -> 394.29: 1.05x slowdown
Performance results, image16 backend:
Speedups
firefox-talos-gfx 5387.25 -> 4065.39: 1.33x speedup
gnome-terminal-vim 2116.66 -> 1962.79: 1.08x speedup
evolution 987.50 -> 924.27: 1.07x speedup
xfce4-terminal-a1 1856.85 -> 1748.25: 1.06x speedup
gvim 1484.07 -> 1398.75: 1.06x speedup
Slowdowns
poppler-reseau 371.37 -> 393.99: 1.06x slowdown
Also bump pixman requirement to 0.27.1.
configure.ac | 2 +-
src/cairo-image-compositor.c | 361 +++++++++++++---------------------------
src/cairo-mutex-list-private.h | 1 +
src/cairo-scaled-font.c | 2 +
src/cairoint.h | 4 +
5 files changed, 121 insertions(+), 249 deletions(-)
commit f228769dfe5a8b5d73c49a41e95e31ed73a77fb3
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 8 17:22:41 2012 +0100
polygon-reduce: Reduce broken stopped-edge continuation
This is hopefully a lesser used path and the attempted optimisation to
continue a stopped edge with a colinear stopped edge highly unlikely and
lost in the noise of the general inefficiency of the routine. As it was
broken, rather than attempt to rectify the "optimisation" remove it.
Reported-by: Evangelos Foutras <evangelos@foutrelis.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50852
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-polygon-reduce.c | 157 +++++++++++++++-----------------------------
1 file changed, 52 insertions(+), 105 deletions(-)
commit fc501fd6b5c378006cd8970c1dd30ee753817b6d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 8 17:22:17 2012 +0100
tor-scan-converter: Always recompute min-height following edge removal
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-tor-scan-converter.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
commit 1bc696a8fda55ee75139f7d0123d348bbd96d2af
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 8 17:20:32 2012 +0100
spans-compositor: After polygon intersection the fill rule is always non-zero
As it turns out due to the rules of polygon intersection, there is never
any overlapping spans so the choice is arbitrary. However, lets be
consistent with the rest of the code.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 2 ++
1 file changed, 2 insertions(+)
commit 37532b47c0ef6528fb6696fe97be337d9ad0a900
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Jun 7 15:14:31 2012 +0100
scaled-font: Take lock around disposing of an empty page upon alloc failure
Spotted by code inspection whilst looking at #50705
References: https://bugs.freedesktop.org/show_bug.cgi?id=50705
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-scaled-font.c | 2 ++
1 file changed, 2 insertions(+)
commit 2f1d6b27e8b78c77346a5b603114b54400e57d83
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Thu Jun 7 19:18:52 2012 +0930
cff-subsetting: Ignore charset for non cid fonts
Fixes crash in https://bugzilla.gnome.org/show_bug.cgi?id=677422
src/cairo-cff-subset.c | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
commit 9fa047c0ea49d94f9f27947931fe21b70f6463d5
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Jun 4 20:16:12 2012 +0100
composite-rectangles,scaled-font: Use accurate extents if the font is broken
If the font metrics appear broken, i.e. key values are being reported as
zero, skip approximating the bbox of the glyph string.
References: https://bugs.freedesktop.org/show_bug.cgi?id=50688
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-composite-rectangles.c | 5 +++--
src/cairo-scaled-font.c | 11 ++++++++++-
src/cairoint.h | 2 +-
3 files changed, 14 insertions(+), 4 deletions(-)
commit 0210499578898ba5bab8dbd323455c6735419a5a
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sat Jun 2 10:48:34 2012 +0930
pdf: fix the offset of padded images
Bug 50598
src/cairo-pdf-surface-private.h | 2 --
src/cairo-pdf-surface.c | 16 ++++++++++++----
2 files changed, 12 insertions(+), 6 deletions(-)
commit f1b546b1a2b3c4a87ca00ce0d6fa6ce88c84d20c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 1 17:46:25 2012 +0100
Erradicate internal use of cairo_surface_get_type()
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pdf-surface.c | 4 ++--
src/cairo-ps-surface.c | 4 ++--
src/cairo-quartz-image-surface.c | 4 ++--
src/cairo-surface.c | 1 -
src/cairoint.h | 1 -
5 files changed, 6 insertions(+), 8 deletions(-)
commit e23d179e08367dc03c5c8f242bbc3af0749d4920
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Jun 1 17:46:25 2012 +0100
Erradicate internal use of cairo_surface_get_content()
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-pdf-surface.c | 9 ++++-----
src/cairo-ps-surface.c | 2 +-
src/cairo-surface.c | 1 -
src/cairo-svg-surface.c | 2 +-
src/cairoint.h | 1 -
5 files changed, 6 insertions(+), 9 deletions(-)
commit 4b5d3436a36e7a2fe29131dff58b50999cd972bb
Author: Søren Sandmann Pedersen <ssp@redhat.com>
Date: Fri Jun 1 08:13:17 2012 +0100
image: Fix bugs related to glyph mask creation
In addition to fixing a bug 7d8d98b91ccf7165be853c36e6d5ef releated to
expanding a8 glyphs into a8r8g8b8, this commit also added an
optimization where if the first glyph had format a8r8g8b8, the mask
was created in this format from the beginning instead of later
converting from a8 to a8r8g8b8.
However, the optimization had two bugs in it:
(1) The computed stride was 3 * width, not 4 * times width, and
(2) In the case where the mask was allocated on the stack, it was
allocated as PIXMAN_a8 and not a8r8g8b8.
The commit fixes both bugs.
src/cairo-image-compositor.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit c0a92bf8329c5a8aee76ac96034435d4fce043dc
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 31 18:30:58 2012 +0100
surface: replace map-to-image clone's use of user_data with parent pointer
Removes an another undeclared PLT entry and prevents mixing of user_data
with internal state.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface-inline.h | 6 ++++++
src/cairo-image-surface-private.h | 3 ---
src/cairo-image-surface.c | 12 +-----------
3 files changed, 7 insertions(+), 14 deletions(-)
commit 9e933d4b8790f0f8309bdd980f4558d51ccec168
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 31 18:25:09 2012 +0100
gl: Add missing cairo-private to _cairo_gl_composite_with_clip
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-private.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 9275b4d5aa45320bc3804980337c7aff6c34c029
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 31 18:22:11 2012 +0100
surface: Eliminate PLT entries for map-to-image
Use the internal symbols internally.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-surface.c | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)
commit 2c6ba9a8733044ad8685e6e8312e945a7a49ce3a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 31 18:08:05 2012 +0100
image: silence make check
The check for standalone headers requires that the
cairo-image-surface-inline.h include the cairo-surface-private.h
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface-inline.h | 1 +
src/cairo-surface-private.h | 3 +++
src/cairoint.h | 3 ---
3 files changed, 4 insertions(+), 3 deletions(-)
commit 98c3ed1dbd9036cb8d6f64d170d213a865e2094a
Author: Chuanbo Weng <strgnm@gmail.com>
Date: Wed May 30 22:51:03 2012 +0800
gl: Do correct translation and lerp in gl-traps-compositor.
Coordinate translation is necessary in composite_boxes(), composite()
and composite_traps(). The translation value should set to correct
value in traps_to_operand(). Also fix the bug in lerp().
src/cairo-gl-traps-compositor.c | 22 ++++++++++++++--------
1 file changed, 14 insertions(+), 8 deletions(-)
commit 7d8d98b91ccf7165be853c36e6d5ef0714f4a986
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 31 11:19:23 2012 +0100
image: Upconvert glyphs through a WHITE source when adding to the glyph mask
We need to scale the channels of the glyph into the destination (and
indeed expand a8 into a8r8g8b8) when adding into the mask. Normally we
have matching formats for the glyph surfaces and the temporary mask,
for which we can continue to take the faster path.
Reported-by: Søren Sandmann <sandmann@cs.au.dk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 74 +++++++++++++++++++++++++++++++-----------
1 file changed, 55 insertions(+), 19 deletions(-)
commit 3f325764e547713bb25aef56d8ffa624bfae75d1
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Thu May 31 17:46:31 2012 +0930
pdf: Don't use extents when acquiring a RASTER_SOURCE pattern
because the pdf surface reuses the image each time the pattern is used.
src/cairo-pdf-surface.c | 17 ++++-------------
1 file changed, 4 insertions(+), 13 deletions(-)
commit 43105a89d881a9f86f887c91c022ffc9477c6678
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 31 08:49:39 2012 +0100
test: Restore bug-seams reference
An overzealous update after converting antialiasing missed the object of
this test was exactly to point out an error due to the antialiasing. So
restore it back to the prestine reference and mark the image backend as
failing.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/bug-seams.argb32.ref.png | Bin 1647 -> 0 bytes
test/reference/bug-seams.rgb24.ref.png | Bin 1647 -> 0 bytes
2 files changed, 0 insertions(+), 0 deletions(-)
commit 25317dbd88e96bb49fa760b50fe705a6a79ee2ec
Author: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Date: Wed May 30 20:55:22 2012 +0800
configure.ac: remove annoying change of INSTALL file
Every time we run ./autogen.sh, the INSTALL file would be replace by
/usr/share/automake-1.11/INSTALL, which changes the file. This is very
annoying since it messes up the result of 'git diff' and git always
wants to commit it.
Declare it as foreign would fix this annoying issue. Since it's not a
GNU project, it makes sense to do so.
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit f3a1ee5edd1a46e3c316d8555262bce556bc1480
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed May 30 11:10:34 2012 +0100
gl: Do no access ctx after release during map-to-image
Based on a patch by Yuanhan Liu.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-surface.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
commit 9340fcd965dedf714f658c6ad441787d75c05e59
Author: Yuanhan Liu <yuanhan.liu@linux.intel.com>
Date: Wed May 30 15:13:46 2012 +0800
gl: use _cairo_gl_operand_copy to fix unblanced reference count
Use _cairo_gl_operand_copy to do the operand copy instead of by
something like *operand = surface->operand.
This would fix a crash introduced by operator-source test case, which
forgot to do reference while copying operand but did dereference while
destroying surface at combine_clip_as_traps().
Signed-off-by: Yuanhan Liu <yuanhan.liu@linux.intel.com>
[ickle: drop the extra reference for the owned surface]
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-operand.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit f3ae8302072dbcee38be4e0a9397e5aaa4084ecf
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun May 27 22:59:13 2012 +0930
pdf: merge _emit_recording_surface and _emit_recording_subsurface into the one function
src/cairo-pdf-surface.c | 112 +++++++++++------------------------------------
1 file changed, 26 insertions(+), 86 deletions(-)
commit 5dd119c1fef0c30bc71311ca9ccacf1f6e8017cf
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun May 27 22:32:41 2012 +0930
ps: check if EXTEND_PAD group can be painted with EXTEND_NONE
src/cairo-ps-surface.c | 31 +++++++++++++++++++++++++------
1 file changed, 25 insertions(+), 6 deletions(-)
commit fcfa45c9f79ccd855d0a16ee1b0f0fa3b4da7809
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Sun May 27 11:53:43 2012 +0930
pdf: fix smask gradient bbox
src/cairo-pdf-surface.c | 29 ++++++++++++++++++++++++++---
1 file changed, 26 insertions(+), 3 deletions(-)
commit 29a42ae6827dd17d002304aba552ffb83d3f8a2f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat May 26 15:16:13 2012 +0100
surface: Kill imagesurf temporary variable
The local alias to &image->base is more confusing that the code it
replaces.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-surface.c | 19 +++++--------------
1 file changed, 5 insertions(+), 14 deletions(-)
commit 11e276753f0d335027a7727bf17006d612b4e4c2
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat May 26 15:20:56 2012 +0100
image: Propagate errors from clone_subimage
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface.c | 26 +++++++++++++++++++-------
1 file changed, 19 insertions(+), 7 deletions(-)
commit fc33cc3c3af1fc616ae445a15d2b146a29090b0f
Author: Andrea Canciani <ranma42@gmail.com>
Date: Fri Jan 6 19:47:08 2012 +0100
quartz: Provide a valid implementation of map_to_image
and reuse it to implement acquire_source.
Fixes
cairo-quartz-surface.c: In function '_cairo_quartz_surface_map_to_image':
cairo-quartz-surface.c:1568: warning: return from incompatible pointer type
cairo-quartz-surface.c:1576: warning: return from incompatible pointer type
src/cairo-quartz-surface.c | 203 ++++++++++++++++----------------------------
1 file changed, 71 insertions(+), 132 deletions(-)
commit a8a4a8dfd450a8ce97998b5e5e09971d07a957f4
Author: Andrea Canciani <ranma42@gmail.com>
Date: Fri Jan 6 20:13:39 2012 +0100
quartz: Mark surfaces created clear as is_clear
This might provide a speedup when clearing an already clear surface
and is required by cairo_surface_create_similar().
Fixes zero-mask.
src/cairo-quartz-surface.c | 3 +++
1 file changed, 3 insertions(+)
commit 3735881e38d2bee941128725b8cdde6779d60a30
Author: Andrea Canciani <ranma42@gmail.com>
Date: Tue Apr 10 22:58:18 2012 +0200
quartz: Silence warning
cairo-quartz-surface.c:177: warning: enumeration value
'CAIRO_FORMAT_RGB30' not handled in switch
src/cairo-quartz-surface.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit 13b7364836e14b811bbeb3ba0849e6d6c0fb1dd3
Author: Andrea Canciani <ranma42@gmail.com>
Date: Wed Jan 11 17:17:29 2012 +0100
surface: Use the internal map/unmap
In many places Cairo maps/unmaps surfaces to perform operations on the
raw image, but it doesn't care about the format being invalid. All of
these are appropriate users of _cairo_surface_map_to_image().
src/cairo-fallback-compositor.c | 56 ++++++++++++++++++++++-----------------
src/cairo-gl-operand.c | 8 +++---
src/cairo-surface-observer.c | 6 ++---
src/cairo-surface.c | 2 --
src/cairo-xlib-source.c | 16 +++++------
src/cairoint.h | 2 --
6 files changed, 46 insertions(+), 44 deletions(-)
commit 37c5c2dbe55f64ee84ab248eb0072d5d7c5145cc
Author: Andrea Canciani <ranma42@gmail.com>
Date: Wed Jan 11 20:51:29 2012 +0100
surface: Only use non-NULL extents for internal mapping
_cairo_surface_map_to_image() requires the input extents to be
non-NULL.
src/cairo-gl-operand.c | 5 ++++-
src/cairo-xlib-source.c | 13 ++++++++++---
2 files changed, 14 insertions(+), 4 deletions(-)
commit d6fb8d2134c989d2ad455ec37ce4f623d4769c46
Author: Andrea Canciani <ranma42@gmail.com>
Date: Wed Jan 11 17:17:15 2012 +0100
surface: Make backend-specific map/unmap functions symmetric
Map allocates a surface. Symmetrically, unmap should destroy it.
src/cairo-gl-surface.c | 17 ++++++++++++-----
src/cairo-image-surface.c | 3 +++
src/cairo-os2-surface.c | 1 +
src/cairo-quartz-image-surface.c | 7 ++-----
src/cairo-quartz-surface.c | 1 +
src/cairo-surface-observer.c | 12 ++----------
src/cairo-surface-subsurface.c | 12 ++----------
src/cairo-surface.c | 2 +-
src/cairo-xcb-surface.c | 13 ++++++++++---
src/cairo-xlib-surface.c | 17 ++++++++++++-----
src/cairo-xlib-xcb-surface.c | 10 ++--------
11 files changed, 48 insertions(+), 47 deletions(-)
commit df7829e2cca07c3bfcddda1c66ca56280edceaf4
Author: Andrea Canciani <ranma42@gmail.com>
Date: Tue Apr 10 20:15:04 2012 +0200
surface: Make map_to_image return cairo_image_surface_t*
This makes it easier to check that the funciton is returning the
correct type of surfaces.
src/cairo-directfb-surface.c | 13 +++++++------
src/cairo-gl-surface.c | 16 ++++++++--------
src/cairo-image-surface-inline.h | 6 ++++++
src/cairo-image-surface-private.h | 2 +-
src/cairo-image-surface.c | 4 ++--
src/cairo-os2-surface.c | 2 +-
src/cairo-quartz-image-surface.c | 2 +-
src/cairo-quartz-surface.c | 2 +-
src/cairo-surface-backend-private.h | 2 +-
src/cairo-surface-observer.c | 2 +-
src/cairo-surface-subsurface.c | 2 +-
src/cairo-surface.c | 2 +-
src/cairo-xcb-surface.c | 18 +++++++++++-------
src/cairo-xlib-surface.c | 4 ++--
src/cairo-xlib-xcb-surface.c | 2 +-
src/skia/cairo-skia-surface.cpp | 3 ++-
src/win32/cairo-win32-display-surface.c | 8 ++++----
17 files changed, 51 insertions(+), 39 deletions(-)
commit 10c0a1c68c34677273d2f48c5d5a6c1c15a320c0
Author: Andrea Canciani <ranma42@gmail.com>
Date: Sun Jan 8 15:30:03 2012 +0100
surface: Define private map/unmap functions
Cairo backends often need to map/unmap to a raster surface but they
don't care about the pixel format, as Pixman will be doing the format
handling.
Cairo users cannot know how to access the raw data if the format is
invalid.
The two different scenarios call for different guarantees on the
returned surface.
The private map/unmap functions also makes it possible to simply
return the status upon unmapping.
src/cairo-image-surface-private.h | 7 ++
src/cairo-image-surface.c | 41 +++++++
src/cairo-surface.c | 239 ++++++++++++++++++++++++++-----------
src/cairoint.h | 8 ++
4 files changed, 222 insertions(+), 73 deletions(-)
commit 3e9895e95100ced3a6fcbedcba75e50ca450b4f0
Author: Andrea Canciani <ranma42@gmail.com>
Date: Mon May 7 19:05:05 2012 +0200
png: Implement conversion of CAIRO_FORMAT_RGB30 to string
Fixes
png.c:55: warning: enumeration value ‘CAIRO_FORMAT_RGB30’ not handled
in switch
test/png.c | 1 +
1 file changed, 1 insertion(+)
commit afcbb7a2c5c8a05d11e054e09c8c4e53b571a435
Author: Andrea Canciani <ranma42@gmail.com>
Date: Mon May 14 10:44:31 2012 +0200
build: Do not replace existing files
The existing INSTALL file is currently being replaced at every
autogen.sh run with the default one.
This is not desired, because INSTALL contains some cairo-specific
information.
autogen.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 38d03ea7488097f2b1194f546bd1331af189b809
Author: Andrea Canciani <ranma42@gmail.com>
Date: Mon May 14 10:40:49 2012 +0200
build: Allow autogen-eration on systems without GTK-doc
The autogen.sh script fails if it cannot run gtkdocize. The absence of
this command should not cause cairo builds to fail, it should only
prevent the build of its documentation.
Fixes:
*** No GTK-Doc found, please install it ***
on systems without gtkdoc tools.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=50356
autogen.sh | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 465319ce828f922edce46b6e7628da543b20d5e4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 24 20:39:34 2012 +0100
gl: Use core GL_STENCIL8_DEPTH24 for gl_flavor=desktop
Jesse complained that --enable-gl --enable-glesv2 wasn't pulling in the
right headers, and in particular GL_STENCIL8_DEPTH24_OES was undefined
but being used. In this case we can simply use the identical
GL_STENCIL8_DEPTH24 instead.
Reported-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 52b7622a6c28193e4259293591b0c78070839f6c
Author: Martin Robinson <mrobinson@igalia.com>
Date: Wed May 23 13:59:02 2012 -0700
gl: Fix compilation failure for flush cleanup.
src/cairo-gl-composite.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit bf9c295953fbe86434a8beefa6994c7a07e723fc
Author: Martin Robinson <mrobinson@igalia.com>
Date: Wed May 23 11:46:25 2012 -0700
gl: Simplify switching between primitive types
Simplify the code that switches between primitive types by adding
a new member to the context which tracks the currently active
primitive type.
src/cairo-gl-composite.c | 67 +++++++++++++++++++++++-----------------------
src/cairo-gl-device.c | 1 +
src/cairo-gl-private.h | 7 +++++
3 files changed, 41 insertions(+), 34 deletions(-)
commit f78696249f13c56a1a738b4645d8e2978d67d5ce
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed May 23 12:45:54 2012 +0100
test: Increase surface size for get-path-extents
Whilst generating a glyph run from a string, any glyphs that are far
outside the surface (including a substantial guard region) are culled.
This affects the path extents. Workaround this by increasing the surface
size.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/get-path-extents.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 3ae8bce832cbd21831a26aeb4ac0d808900711f5
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed May 23 12:26:50 2012 +0100
test/record90: Rotate the reference so that it is wholly visible
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/record90.c | 2 +-
.../record90-self-intersecting.argb32.ref.png | Bin 167 -> 0 bytes
test/reference/record90-self-intersecting.ref.png | Bin 0 -> 244 bytes
.../record90-self-intersecting.rgb24.ref.png | Bin 167 -> 0 bytes
4 files changed, 1 insertion(+), 1 deletion(-)
commit e73830915b508efa587c6b706d7501a674fdec94
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed May 23 12:20:50 2012 +0100
test: Refresh unbounded-operator
Apparently this too suffered from bug-bo-collins and is fixed by
(bo-rectangular: Emit subsummed boxes for overlapping edges).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/unbounded-operator.argb32.ref.png | Bin 2666 -> 2781 bytes
test/reference/unbounded-operator.rgb24.ref.png | Bin 1300 -> 1333 bytes
2 files changed, 0 insertions(+), 0 deletions(-)
commit c09be681123388d562822d677db631101a8faa07
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed May 23 11:38:07 2012 +0100
bo-rectangular: Emit subsummed boxes for overlapping edges
Fixes bug-bo-collins
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=49446
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-bentley-ottmann-rectangular.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
commit 7b2f787d1999bcc351b2e2904322020732939f5f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed May 23 11:48:30 2012 +0100
test: Exercise rectangular bo bug
Reported-by: S. Christian Collins <s_chriscollins@hotmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=49446
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/bug-bo-collins.c | 76 +++++++++++++++++++++++++++++++++
test/reference/bug-bo-collins.ref.png | Bin 0 -> 248 bytes
3 files changed, 77 insertions(+)
commit aed94a5bc650f579368b4b814a8729570c32147e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat May 19 10:20:20 2012 +0100
gl: Replace vbo with static allocation and immediate arrays
Some drivers have terrible latency issues when using VBO and for our
dynamic use-case (we never reuse a VBO currently) there is little
benefit from using a VBO and often a loss of performance from doing so.
And there is the benefit from reducing the number of our own code paths.
src/cairo-gl-composite.c | 29 +++++------------------------
src/cairo-gl-device.c | 9 +++------
src/cairo-gl-private.h | 8 +++-----
3 files changed, 11 insertions(+), 35 deletions(-)
commit a845ebe32d68a4701fd0645c576a2dc65c82ca8f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun May 20 12:11:27 2012 +0100
test: Fix leak from xcb-snapshort-assert
==12598== 1,344 (768 direct, 576 indirect) bytes in 2 blocks are
definitely lost in loss record 512 of 519
==12598== at 0x402894D: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==12598== by 0x4C76501: _cairo_image_surface_create_for_pixman_image (cairo-image-surface.c:176)
==12598== by 0x4C76953: _cairo_image_surface_create_with_pixman_format (cairo-image-surface.c:345)
==12598== by 0x44CFAC: draw (xcb-snapshot-assert.c:36)
==12598== by 0x40E14C: cairo_test_for_target (cairo-test.c:923)
==12598== by 0x40EEA7: _cairo_test_context_run_for_target (cairo-test.c:1545)
==12598== by 0x40BD53: main (cairo-test-runner.c:254)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/xcb-snapshot-assert.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
commit 2879e656b9b9283308ed4eaf3ad820460ac1df8b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun May 20 10:24:06 2012 +0100
wideint: Fix compilation failure for bare use of uint64_t for !HAVE_UINT64_T
Reported-by: Hakki Dogusan <dogusanh@tr.net>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-wideint-private.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
commit dad69ce4d5568f94621ae60ccdcc683d5bbd0efd
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun May 20 10:54:07 2012 +0100
win32: Fix return value for cairo_time_get
Without uint64_t we need to construct a cairo_int64_t from the struct of
smaller 32-bit types rather than just casting the larger 64-bit value.
Reported-by: Hakki Dogusan <dogusanh@tr.net>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-time.c | 21 ++++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)
commit 5a7a9c93e7f807ae8ee7504ff308e9676dbe8d25
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun May 20 10:33:17 2012 +0100
image: Tidy lerp8x4
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 13 ++++---------
1 file changed, 4 insertions(+), 9 deletions(-)
commit ced090871bbc4c052fd4ac627cdd8fc7e80f0d62
Author: Martin Robinson <mrobinson@igalia.com>
Date: Thu May 17 14:37:57 2012 -0700
gl/msaa: Improve fallback detection
Rename should_fall_back to can_use_msaa_compositor to make it
more comprehensible and also modify the logic to fall back
when the antialias mode is not "fast" or "default."
src/cairo-gl-msaa-compositor.c | 29 ++++++++++++++++-------------
1 file changed, 16 insertions(+), 13 deletions(-)
commit 707bb8663980e66e8406351b68c230b63a0265c6
Author: Martin Robinson <mrobinson@igalia.com>
Date: Mon Apr 2 13:45:15 2012 -0700
gl/msaa: Lazily flush the context
Instead of conservatively flushing after every single drawing
operation. Wait until we are certain we need to flush, which
in the case of the MSAA compositor is when we start compositing
with a different type of geometry.
src/cairo-gl-composite.c | 37 ++++++++++++++++++++++++-------------
src/cairo-gl-msaa-compositor.c | 4 ----
2 files changed, 24 insertions(+), 17 deletions(-)
commit 4b3ad4e8dacdfb84636f188b2dc7afe3ad6966c5
Author: Martin Robinson <mrobinson@igalia.com>
Date: Mon Mar 12 15:28:23 2012 -0700
gl/msaa: Implement glyph rendering
Instead of falling back to the traps compositor to do glyph
rendering, handle it in the MSAA compositor. This allows using
the stencil buffer or scissor to clip and simplifies the MSAA
code path.
src/cairo-gl-glyphs.c | 56 +++++++++++++++++++--------
src/cairo-gl-msaa-compositor.c | 83 +++++++++++++++++++++++++++++++++++++---
src/cairo-gl-private.h | 11 ++++++
3 files changed, 128 insertions(+), 22 deletions(-)
commit e3f5b14fbabba2128de4ee2d8513800aa145fb2f
Author: Martin Robinson <mrobinson@igalia.com>
Date: Tue Feb 21 09:36:52 2012 -0800
gl/msaa: Wait to clip until compositing begins
The MSAA compositors clips in a unique way We'd like to
share this method with the text rendering path, so we move
it to cairo-gl-composite so that it works in a way very
similar to clipping with the spans and traps compositors.
src/cairo-gl-composite.c | 164 ++++++++++++++++++++++++++++++++++------
src/cairo-gl-device.c | 1 +
src/cairo-gl-msaa-compositor.c | 155 +++++++------------------------------
src/cairo-gl-private.h | 12 +++
4 files changed, 181 insertions(+), 151 deletions(-)
commit 29b243325c0af760249a414bdce2e6afb64186a7
Author: Martin Robinson <mrobinson@igalia.com>
Date: Mon Jan 23 13:07:59 2012 -0800
gl/msaa: Support for non-texture surfaces
Add full support for non-texture surfaces, by correctly
querying primitives for stencil and multisample bits.
src/cairo-gl-device.c | 8 ++++++++
src/cairo-gl-msaa-compositor.c | 40 ++++++++++++++++++++++++++++++++++++++++
src/cairo-gl-operand.c | 3 +++
src/cairo-gl-private.h | 2 ++
src/cairo-gl-surface.c | 5 +----
5 files changed, 54 insertions(+), 4 deletions(-)
commit 9208dd6230aa3c236a91105f8dc5d5caf69fe591
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Fri Dec 16 15:56:45 2011 -0800
gl/msaa: Support the OpenGLES EXT multisampling extension
Add support for OpenGLES GPUs that support the EXT multisampling
extension.
src/cairo-gl-device.c | 165 ++++++++++++++++++++++++++++++---------
src/cairo-gl-dispatch-private.h | 7 +-
src/cairo-gl-msaa-compositor.c | 12 +++
src/cairo-gl-operand.c | 4 +
src/cairo-gl-private.h | 13 ++-
5 files changed, 152 insertions(+), 49 deletions(-)
commit ac8d50f04ca24fb24f354dea597513ec43f5ebb6
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Thu Dec 22 17:24:01 2011 -0800
gl/msaa: Use unsigned short to build the index array
Some GPUs have trouble accepting vertex index data as
integers. Using unsigned shorts expands support.
src/cairo-gl-composite.c | 10 +++++-----
src/cairo-gl-device.c | 2 +-
2 files changed, 6 insertions(+), 6 deletions(-)
commit 5ae53c933ae4baefdedb8ca795ee25dfcba9f5b0
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Fri Dec 23 08:44:16 2011 -0800
gl/msaa: Implement paint via masking
Instead of falling back to the spans compositor, let the msaa
compositor handle painting. This ensure clipping is handled
in a consistent way with the rest of the msaa compositor.
src/cairo-gl-msaa-compositor.c | 51 ++++++++++++++++++++++++++++++----------
1 file changed, 39 insertions(+), 12 deletions(-)
commit 4d9064d578434cadfae2b248ef29075a1a1be8b8
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Fri Dec 16 15:56:00 2011 -0800
gl/msaa: Add ARB multisampling support
This implementation is not very efficient at the moment and does not
work with platforms using the incompatible IMG extension (mobile
GPUs). Performance improvements and mobile GPU support will follow.
src/cairo-gl-composite.c | 14 ++-
src/cairo-gl-device.c | 236 +++++++++++++++++++++++++++++++++------
src/cairo-gl-dispatch-private.h | 4 +
src/cairo-gl-msaa-compositor.c | 28 ++++-
src/cairo-gl-operand.c | 40 +++++++
src/cairo-gl-private.h | 38 ++++++-
src/cairo-gl-surface.c | 21 +++-
7 files changed, 334 insertions(+), 47 deletions(-)
commit 50f08352f463d86022a0d7544d461fe2e5ac9076
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Wed May 16 20:55:17 2012 +0930
pdf: check if EXTEND_PAD group can be painted with EXTEND_NONE
to avoid the fallback
src/cairo-pdf-surface.c | 26 ++++++++++++++++++++++----
1 file changed, 22 insertions(+), 4 deletions(-)
commit e41dffb329e4a6fcb4e75fb501843838a499c4c8
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon May 14 17:46:32 2012 +0100
stroke: Don't drop clockwise==0 lines
If the join indicates the pair of edges are parallel, we may be
considering the final segment of the spline with a different tangent
vector than the slope of the final edge and so lead to false dropping of
an edge. This has the effect that the line segments between 'arc arc arc
arc' (a rounded rectangle) are no longer horizontal or vertical. As path
construction tries to eliminate joins between colinear segments, this
optimisation should not be required anyway.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-polygon.c | 14 +++-----------
test/reference/arc-direction.traps.argb32.ref.png | Bin 6380 -> 0 bytes
test/reference/arc-direction.traps.rgb24.ref.png | Bin 6380 -> 0 bytes
.../close-path-current-point.argb32.ref.png | Bin 2324 -> 0 bytes
test/reference/close-path-current-point.ref.png | Bin 1675 -> 2109 bytes
.../close-path-current-point.rgb24.ref.png | Bin 2324 -> 0 bytes
test/reference/fallback.traps.argb32.ref.png | Bin 4070 -> 4156 bytes
test/reference/fallback.traps.rgb24.ref.png | Bin 3141 -> 3332 bytes
test/reference/halo.argb32.ref.png | Bin 8726 -> 0 bytes
test/reference/halo.ref.png | Bin 7297 -> 8774 bytes
test/reference/halo.rgb24.ref.png | Bin 8726 -> 0 bytes
test/reference/halo.traps.argb32.ref.png | Bin 8726 -> 0 bytes
test/reference/halo.traps.rgb24.ref.png | Bin 8726 -> 0 bytes
.../rounded-rectangle-stroke.argb32.ref.png | Bin 951 -> 0 bytes
test/reference/rounded-rectangle-stroke.ref.png | Bin 569 -> 833 bytes
.../rounded-rectangle-stroke.rgb24.ref.png | Bin 951 -> 0 bytes
16 files changed, 3 insertions(+), 11 deletions(-)
commit 099420a07c33c66daf5392d4ca1df06585791751
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon May 14 17:50:54 2012 +0100
spans: Debug input paths and polygons
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 3 +++
src/cairoint.h | 2 ++
2 files changed, 5 insertions(+)
commit f7d937670c22db79e597cade89e84c840b58e25e
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon May 14 16:03:40 2012 +0100
arc: Use user endpoint for final step
Eliminate numerical inaccuracy from accumulating angle through
the floating point step value by using the exact end-value for the last
arc segment.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-arc.c | 29 +++++++++++++++++------------
1 file changed, 17 insertions(+), 12 deletions(-)
commit 6867383017fcea0b1d5a4671b32382037ba9be3f
Author: Alexandros Frantzis <alexandros.frantzis@linaro.org>
Date: Thu May 3 13:41:29 2012 +0300
gl: Provide a shader implementation of repeat wrap modes
In OpenGL ES 2.0, repeat wrap modes (GL_REPEAT and GL_MIRRORED REPEAT) are
only available for NPOT textures if the GL_OES_texture_npot is supported.
This commit adds a shader implementation of these wrap modes for use by
devices that do not support GL_OES_texture_npot.
src/cairo-gl-composite.c | 10 ++++--
src/cairo-gl-device.c | 16 +++++----
src/cairo-gl-private.h | 1 +
src/cairo-gl-shaders.c | 84 +++++++++++++++++++++++++++++++++++++++-------
4 files changed, 90 insertions(+), 21 deletions(-)
commit 82f69d1ef798c2ebff13ec2b548c4877bf5e0e5b
Author: Alexandros Frantzis <alexandros.frantzis@linaro.org>
Date: Thu May 3 13:03:26 2012 +0300
gl: Simplify GL wrap parameter setting code
src/cairo-gl-composite.c | 29 +++++++++++++++--------------
1 file changed, 15 insertions(+), 14 deletions(-)
commit 6cd1f5040fed1385c2990a68d6017a7ca6c37103
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 22:38:27 2012 +0100
clip: Apply clip boxes to the clip surface
As we convert the unaligned clip boxes to a region, we need to process
the intersection of the boxes with the clip surface as a separate step.
Fixes tighten-box for the base compositor.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-clip-surface.c | 86 ++++++++++++++++++---
test/reference/tighten-bounds.base.argb32.ref.png | Bin 8490 -> 8512 bytes
test/reference/tighten-bounds.base.rgb24.ref.png | Bin 7847 -> 7873 bytes
3 files changed, 77 insertions(+), 9 deletions(-)
commit 4ea3ace6c810ba090464e48795fac5456f6cdc24
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 21:51:44 2012 +0100
spans: Only fallback for a clipmask if unbounded
For a bounded operation with a clip we will already have performed the
clip geometrically.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 3 ++-
test/reference/clip-operator.argb32.ref.png | Bin 8216 -> 8257 bytes
test/reference/clip-operator.rgb24.ref.png | Bin 3293 -> 3288 bytes
test/reference/random-clip.ref.png | Bin 529871 -> 525962 bytes
test/reference/trap-clip.argb32.ref.png | Bin 5810 -> 5826 bytes
test/reference/trap-clip.rgb24.ref.png | Bin 5433 -> 5435 bytes
6 files changed, 2 insertions(+), 1 deletion(-)
commit cd1004ce19c7ea28c7fedb6464562a08416586c0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 21:20:35 2012 +0100
traps,spans-compositor: Avoid mistreating unaligned clips as aligned
An unaligned clip requires careful handling, and so exclude processing
along the fast paths.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 24 ++++++++++++++++++++++--
src/cairo-traps-compositor.c | 2 +-
2 files changed, 23 insertions(+), 3 deletions(-)
commit de1150cc0e1cb11710b196806335817255cb4abe
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 20:51:58 2012 +0100
spans-compositor: Add tracepoints for debugging
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 22 +++++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)
commit 197e5b7324c569d3e8cd652dbf5a281a57317cbe
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 20:25:29 2012 +0100
spans-compositor: Handle unaligned unbounded boxes
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-spans-compositor.c | 67 ++++++++++++++++++++++++++++++++----------
1 file changed, 51 insertions(+), 16 deletions(-)
commit 2d26f7da777b7ac01e5c469e52a17fa7d0cf4a8d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 21:26:33 2012 +0100
test: Fix tighten-bounds reference images
Uli Schlachter spotted that I had inadvertently committed (606e9e1c9) a
broken set of test images for the tighten-bounds case and so masked a
nasty bug with the mishandling of unaligned clips.
Reported-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/tighten-bounds.argb32.ref.png | Bin 9115 -> 9115 bytes
test/reference/tighten-bounds.rgb24.ref.png | Bin 8256 -> 8365 bytes
test/reference/tighten-bounds.traps.argb32.ref.png | Bin 8769 -> 8486 bytes
test/reference/tighten-bounds.traps.rgb24.ref.png | Bin 8179 -> 7856 bytes
4 files changed, 0 insertions(+), 0 deletions(-)
commit 117a44a33526a7738cac6643ea35fb73dc8a710f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri May 11 17:17:05 2012 +0100
gl: Reject SOURCE + mask in composite_boxes()
As SOURCE requires a bounded operation and the GL compositor only
implements a simple operation (i.e. it just blits from source to
destination instead of applying a linear interpolation as required), we
need to reject the operation and fallback. In the future, we should
make the linear interpolation available through a GL shader or as a
dual-source blend (better).
Spotted-by: Chuanbo Weng <strgnm@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-spans-compositor.c | 14 ++++++++++----
1 file changed, 10 insertions(+), 4 deletions(-)
commit 0196327b30dd01ce0169a7bc67024b932368af4e
Author: Chuanbo Weng <strgnm@gmail.com>
Date: Fri May 11 23:58:05 2012 +0800
gl: Convert CLEAR to DEST_OUT when there's a mask for composite_boxes.
As Cairo's CLEAR sematics are for a bounded operation, and GL's uses the
simple semantics for its CLEAR composite, we need to convert the
operation into an equivalent DEST_OUT when we have a mask.
src/cairo-gl-spans-compositor.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
commit 9ecf2f7c4f6451d4a2c145a82184ba185be0a421
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 10 21:01:36 2012 +0100
damage: Prevent reducing an error object
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-damage.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit f4631dca371865f9aa747c61937c09d495f165e0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 10 21:00:49 2012 +0100
damage: Prevent accumulating damage to an error object
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-damage.c | 3 +++
1 file changed, 3 insertions(+)
commit 50e51389bd4108942fdc7a5f029b3171b0c1f11a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu May 10 20:57:30 2012 +0100
damage: Avoid freeing the NIL error object
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-damage.c | 3 +++
1 file changed, 3 insertions(+)
commit 3bff546ebe0859c65ba608a956a55b5647bfd37f
Author: Uli Schlachter <psychon@znc.in>
Date: Sun May 6 21:48:42 2012 +0200
c_surface_set_mime_data: Remove duplicate "Since"
This fixes the following message from "make check":
./cairo-surface.c (1192): ERROR: cairo_surface_set_mime_data: Duplicate 'Since'
field
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-surface.c | 2 --
1 file changed, 2 deletions(-)
commit fcccb1a65aeab7b1bf199e728b58af9bf21e197b
Author: Uli Schlachter <psychon@znc.in>
Date: Sun May 6 21:45:32 2012 +0200
check-doc-syntax: Find duplicate "Since:" tags
It makes no sense to say more than one time when some symbol was introduced.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/check-doc-syntax.awk | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
commit a184de906490e743430919c55a2d5099987d4d69
Author: Uli Schlachter <psychon@znc.in>
Date: Sun May 6 21:41:28 2012 +0200
check-doc-syntax: Make this work again
Commit ed90616b77570 changed the way the awk script gets invoked. Due to a
missing "test", this resulted in the awk script never getting invoked at all.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/check-doc-syntax.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 3e02dccb97ad12a13db0b66aba3927c78f6d08e9
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Mon Dec 12 17:08:52 2011 -0800
gl/msaa: Add support for unbounded operators
When filling and stroking with an unbounded operator, first fill
and stroke to a temporary surface and then paint the entire surface
back to the original target.
src/cairo-gl-msaa-compositor.c | 100 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 100 insertions(+)
commit b099f8b0c70dc0208135cdeda76be9ab33e61d9b
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Fri Oct 14 14:32:28 2011 -0700
gl/msaa: Support for masking
Add support for masking in the OpenGL MSAA compositor. This is
accomplished simply by properly setting up the masking source,
emitting the entire bounded composite region, and unforking
vertex emission.
src/cairo-gl-composite.c | 53 +++++++++++++----------
src/cairo-gl-msaa-compositor.c | 92 +++++++++++++++++++++++++++++++++++++++-
2 files changed, 122 insertions(+), 23 deletions(-)
commit 929a96ed034b4e6f811da9b718a7b11e9d1b9d16
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Thu Oct 13 15:51:29 2011 -0700
gl/msaa: Support for texture sources
Add support for texture sources, by unforking _cairo_gl_composite_begin.
_cairo_gl_composite_begin_tristrip is now just a small wrapper. Also
properly emit the source texture coordinates when emitting tristrip
vertices.
src/cairo-gl-composite.c | 73 +++++++---------------------------------
src/cairo-gl-msaa-compositor.c | 4 +--
src/cairo-gl-private.h | 4 ---
3 files changed, 15 insertions(+), 66 deletions(-)
commit a60bb83f28a27c065f21f6a8466408df4565a0b1
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Tue Oct 11 09:08:38 2011 -0700
gl/msaa: Prevent stroke overlap
When stroking we do not send our polygon to the tessellator, so
it may have overlapping stroke components. Use the stencil buffer
to prevent stroke components from overlapping.
src/cairo-gl-msaa-compositor.c | 36 ++++++++++++++++++++++++++++++++++++
1 file changed, 36 insertions(+)
commit 138e595c1192c03ebc1b2c89851ce938b18abd2f
Author: Uli Schlachter <psychon@znc.in>
Date: Tue May 1 14:48:43 2012 +0200
Remove some dead code
This code could never be executed, because the status variable doesn't get set
since the last time it is checked and errors get returned to the caller.
This was noticed while looking into the build log provided by
http://lists.cairographics.org/archives/cairo/2012-April/022993.html
Reported-by: Ryan Schmidt <cairo-2012b@ryandesign.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-scaled-font-subsets.c | 5 -----
1 file changed, 5 deletions(-)
commit 494cfd7eb9d994a5e2024e299986e66a3ef9a562
Author: Uli Schlachter <psychon@znc.in>
Date: Tue May 1 14:38:51 2012 +0200
Remove some unused functions
All of these are unused since af9fbd176b145f0424 "Introduce a new compositor
architecture". Since no one complained yet, I guess that means that we don't
need these any more. :-)
This was noticed while looking into the build log provided by
http://lists.cairographics.org/archives/cairo/2012-April/022993.html
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-botor-scan-converter.c | 36 -------------------------------
src/cairo-path-stroke-polygon.c | 44 --------------------------------------
2 files changed, 80 deletions(-)
commit 748dcdef4b67097c079a3ff98f970451428c24f3
Author: Chuanbo Weng <strgnm@gmail.com>
Date: Fri May 4 08:53:20 2012 +0800
gl: fix the translate value in copy_boxes.
Fixes 36 test cases (such as push-group-color)
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48221
src/cairo-gl-spans-compositor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit db4ee947c3fc2c057dd8e84cdfcb779e7c62e5d5
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue May 1 14:41:25 2012 +0100
Split finish into multiple stages
In order to handle the snapshot copy-on-write losing a race with another
thread using the snapshot as a source, we may find the target acquires a
fresh reference as we attempt to finalize it.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-surface.c | 32 +++++++++++++++++++++++---------
1 file changed, 23 insertions(+), 9 deletions(-)
commit 52dfa038b9e0c106aa3f9f08abeb7f53e72a762a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue May 1 15:06:46 2012 +0100
snapshot: Avoid triggering assertion for grabbing the target during destroy
If the source wins the race to acquire the original surface as it is
being destroyed, it triggers an assertion.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-surface-inline.h | 8 ++++++++
src/cairo-surface-snapshot-inline.h | 3 ++-
2 files changed, 10 insertions(+), 1 deletion(-)
commit f62f8f907d14a7267f136f299208029c7b904eaa
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Tue May 1 14:57:18 2012 +0100
snapshot: Hold a reference to target whilst querying
Due to race with cow and accessing target from multiple threads, we need
to be careful that we always acquire a reference for our access to
the snapshot target.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-surface-snapshot.c | 51 +++++++++++++++++++++++++++++++++++-------
1 file changed, 43 insertions(+), 8 deletions(-)
commit af3c8abbce529b0928742cc219e5e8e21191eee7
Author: Søren Sandmann Pedersen <ssp@redhat.com>
Date: Mon Apr 30 12:02:38 2012 -0400
Revert "Use pixman glyphs"
This was pushed accidentally - apologies.
This reverts commit 752c3b69e008b7d219da8cc5c657cf995732d3b8.
src/cairo-image-compositor.c | 313 +++++++++++++++++++++++++++-------------
src/cairo-mutex-list-private.h | 1 -
src/cairo-scaled-font.c | 2 -
src/cairoint.h | 4 -
4 files changed, 212 insertions(+), 108 deletions(-)
commit 752c3b69e008b7d219da8cc5c657cf995732d3b8
Author: Søren Sandmann Pedersen <ssp@redhat.com>
Date: Mon Apr 30 09:41:44 2012 -0400
Use pixman glyphs
src/cairo-image-compositor.c | 313 +++++++++++++---------------------------
src/cairo-mutex-list-private.h | 1 +
src/cairo-scaled-font.c | 2 +
src/cairoint.h | 4 +
4 files changed, 108 insertions(+), 212 deletions(-)
commit 821a9af33cf43dc6a8266f4e677171f2b1ebacba
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 20:54:07 2012 +0100
version: Post release bump to 1.12.3
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit dbc0efad7e565558a3abf7f69d7675efddc4688d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 19:49:12 2012 +0100
version: bump for cairo-1.12.2 release
NEWS | 40 ++++++++++++++++++++++++++++++++++++++++
cairo-version.h | 2 +-
2 files changed, 41 insertions(+), 1 deletion(-)
commit ed90616b7757087154d1c191858444ecc9188935
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 13:21:36 2012 +0100
check-doc-syntax: Only parse the source files for incorrect tags
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/check-doc-syntax.sh | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
commit c16cdf0b4e2bada9b955111886eb7c9cb3878994
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 13:18:43 2012 +0100
check-doc-syntax: Fix handling of return value in make check
src/check-doc-syntax.sh | 2 ++
1 file changed, 2 insertions(+)
commit a1d4f416e403359b713f6d10d557a190458bbb16
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 15:49:40 2012 +0100
path-stroke-boxes: Fix degenerate end-caps for anti-clockwise paths
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-boxes.c | 60 +++++++++++++++++++----------------------
1 file changed, 28 insertions(+), 32 deletions(-)
commit 71df65f95a238c53fa0a64759b41af85c0b1b059
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 14:51:17 2012 +0100
test: Update degenerate-solid-dash reference
Looking at the base output for cairo-1.0 reveals we have an issue with
the placement of degenerate end-caps.
test/reference/degenerate-solid-dash.ref.png | Bin 405 -> 407 bytes
.../line-width-large-overlap-dashed.ref.png | Bin 338 -> 340 bytes
.../line-width-large-overlap-dashed.xfail.png | Bin 343 -> 0 bytes
test/reference/line-width-overlap-dashed.ref.png | Bin 0 -> 407 bytes
test/reference/rectilinear-dash.argb32.ref.png | Bin 291 -> 0 bytes
test/reference/rectilinear-dash.rgb24.ref.png | Bin 291 -> 0 bytes
6 files changed, 0 insertions(+), 0 deletions(-)
commit f5df96748e39d1f1a3fddf63712318377211b12b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 14:32:14 2012 +0100
gstate: Correctly compact degenerate dash segments
The danger of the incomplete test masking the failure to correctly skip
the degenerate elements in the final dash state.
Fixes the fixed degenerate-solid-dash.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gstate.c | 37 ++++++++++++++++++-------------------
1 file changed, 18 insertions(+), 19 deletions(-)
commit ba21231491dbed0252858ee8c2755db7b6f1c970
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 14:23:11 2012 +0100
test: Fix array lengths for degenerate-solid-dash
The latter arrays were meant to test compaction.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/degenerate-solid-dash.c | 4 ++--
test/reference/degenerate-solid-dash.ref.png | Bin 358 -> 405 bytes
2 files changed, 2 insertions(+), 2 deletions(-)
commit 9176e640d7cb5cae5d89722aa560fba19bc08a8c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 13:40:48 2012 +0100
gstate: Reduce degenerate dash to solid
If the dash specifies that the pen is always on (i.e. the total of the
off segments is zero), then we can eliminate the dash pattern.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gstate.c | 35 ++++++++++++++++++++++++++++++-----
1 file changed, 30 insertions(+), 5 deletions(-)
commit 47368d5e83f95dfed500f81068d7346a93145a20
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 14:01:11 2012 +0100
image: Add a little bit of debugging to show number of boxes being drawn
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit 0c14ce6dca3031320d2b9fb419aaf4e153d158d6
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 13:55:10 2012 +0100
test: Exercise degenerate dashes that are wholly solid
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/degenerate-solid-dash.c | 69 ++++++++++++++++++++++++++
test/reference/degenerate-solid-dash.ref.png | Bin 0 -> 358 bytes
3 files changed, 70 insertions(+)
commit d2f740ccbd9c5416a2590e3cca888eecf046c162
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 12:38:37 2012 +0100
test: Exercise clip inversion imperfections
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/inverted-clip.c | 56 ++++++++++++++++++++++++++
test/reference/inverted-clip.base.xfail.png | Bin 0 -> 1293 bytes
test/reference/inverted-clip.traps.xfail.png | Bin 0 -> 1283 bytes
test/reference/inverted-clip.xfail.png | Bin 0 -> 1293 bytes
5 files changed, 57 insertions(+)
commit 4a9a6b7efb4abb81b228db8c998a6c9e9f383ba0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 29 12:22:20 2012 +0100
Satisfy check-doc-syntax.awk for unimplemented functions
./cairo.c (634): ERROR: cairo_set_opacity: missing 'Since' field
./cairo.c (3578): ERROR: cairo_get_opacity: missing 'Since' field
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo.c | 4 ++++
1 file changed, 4 insertions(+)
commit ec400daf9ec3bbd8403324db7fcdaf175e185e7b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Apr 28 23:15:52 2012 +0100
image: Avoid overflow when computing lerp spans for a8
Reported-by: Benjamin Otte <otte@redhat.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
commit a18506acf0ca4a5b6f56cc9a8e0ffb3dd0eaabab
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Apr 27 22:13:01 2012 +0100
Update the remaining backends to handle a NULL extents for _cairo_surface_get_source
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-surface.c | 8 +++++---
src/cairo-image-surface.c | 8 +++++---
src/cairo-script-surface.c | 8 +++++---
src/cairo-xcb-surface.c | 8 +++++---
src/cairo-xlib-surface.c | 8 +++++---
5 files changed, 25 insertions(+), 15 deletions(-)
commit 7eb33099d34234dcccb8f96caba94b38fa385f16
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Apr 27 12:39:40 2012 +0100
snapshot: Perform the cow under a mutex
In order to prevent a race between concurrent destroy and use in another
thread, we need to acquire a reference to the snapshot->target under a
mutex. Whilst we hold that reference, it prevents the internal destroy
mechanism from freeing the memory we are using (if we have a pointer to
the original surface) and the client drops their final reference.
Oh boy, talk about opening a can of worms...
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-analysis-surface.c | 12 +++---------
src/cairo-image-source.c | 33 ++++++++++++++++++++++++++++-----
src/cairo-pattern.c | 4 +---
src/cairo-pdf-surface.c | 24 ++++++++++++++++--------
src/cairo-ps-surface.c | 33 +++++++++++++++++++++------------
src/cairo-script-surface.c | 5 +++--
src/cairo-surface-snapshot-inline.h | 9 ++++++++-
src/cairo-surface-snapshot-private.h | 2 ++
src/cairo-surface-snapshot.c | 7 ++++++-
src/cairo-surface-subsurface.c | 3 ++-
src/cairo-surface.c | 5 ++++-
src/cairo-traps-compositor.c | 11 ++---------
12 files changed, 96 insertions(+), 52 deletions(-)
commit 455b4de1fc6be05f985b43c2f8f83eeed2b2a191
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Apr 27 11:41:41 2012 +0100
image: Allow a snapshot to steal the original memory upon finish
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-surface.c | 18 ++++++++++++++++++
src/cairo-surface-private.h | 1 +
src/cairo-surface.c | 3 +++
3 files changed, 22 insertions(+)
commit 957a9cc619965178a8927d114fe852034fc2385c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 26 08:54:39 2012 +0100
image: Fix typo in _blit_spans()
The height is 'h' not 'y'!
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit fe428fc7f03316f2577b95f6a4f525bacca09948
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Apr 20 17:30:22 2012 +0100
xlib: Fix inline conversion for TrueColor PutImage
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
commit 9e81c5b737cda9dc539b2cf497c20ac48ddb91ac
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Apr 25 20:41:16 2012 +0100
xlib: Allow applications to create 0x0 surfaces
Although 0x0 is not a legimate surface size, we do allow applications
the flexibility to reset the size before drawing. As we previously never
checked the size against minimum legal constraints, applications expect
to be able to create seemingly illegal surfaces, and so we must continue
to provide backwards compatibility.
Many thanks to Pauli Nieminen for trawling through the protocol traces,
diving into the depths of libreoffice and identifying the regression.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=49118 (presentation
mode in loimpress is blank).
Reported-by: Eric Valette <eric.valette@free.fr>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-xlib-surface.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
commit f736cd144305f7c9147912f6ec081962b3191e3d
Author: Jeff Mahoney <jeffm@suse.com>
Date: Mon Apr 23 22:04:48 2012 +0100
pdf: Fix wrong allocation in _cairo_pdf_surface_add_source_surface
_cairo_pdf_surface_add_source_surface allocates unique_id with
size unique_id_length but then copies surface_key.unique_id_length into it.
This causes e.g. evince to crash predictably while trying to print with:
*** buffer overflow detected ***: evince terminated
We should be using surface_key.unique_id_length instead.
Reported-by: Dominique Leuenberger <dominique-freedesktop.org@leuenberger.net>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=49089
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
src/cairo-pdf-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit e6a04c2f6749756bb032e9beb6c2ad0a12f8093d
Author: Alexandros Frantzis <alexandros.frantzis@linaro.org>
Date: Mon Apr 23 17:15:31 2012 +0300
gl: Fix creation of gradient ramps for GLESv2
glTexImage2D is not allowed to perform an implicit format conversion
with GLESv2, so fixup the internal format to match the incoming pixel
format.
src/cairo-gl-gradient.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
commit 1ca8c049cad59fcf9355ff091e1eec0471afa444
Author: Dimiter Stanev <malkia@gmail.com>
Date: Mon Apr 23 19:10:44 2012 +0100
win32: compilation fix for recent private/inline header separation
src/win32/cairo-win32-display-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit abedc6b46ad283f896e078479174312cb87e6700
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Mon Apr 23 13:20:47 2012 +0930
ps: support all image types
If the image is not rgb24/argb32/a8/a1, create a new image with the
same CAIRO_CONTENT and paint image to the new image.
src/cairo-ps-surface.c | 41 +++++++++++++++++++++++++++++++++++++----
1 file changed, 37 insertions(+), 4 deletions(-)
commit 33f9e433eef13a2b39a8213c6997399f3a5896a8
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Mon Apr 23 13:07:18 2012 +0930
pdf: support all image types
If the image is not rgb24/argb32/a8/a1, create a new image with the
same CAIRO_CONTENT and paint image to the new image.
src/cairo-pdf-surface.c | 41 +++++++++++++++++++++++++++++++----------
1 file changed, 31 insertions(+), 10 deletions(-)
commit c0b523eb652b2c4ba41cb27132d46ad9211b5df4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Apr 21 10:16:30 2012 +0100
stroke(boxes): Convert the dash step back into device units before incrementing
Reported-by: Carlos Garcia Campos <carlosgc@gnome.org>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-boxes.c | 2 +-
.../rectilinear-dash-scale-unaligned.ref.png | Bin 5010 -> 3738 bytes
.../rectilinear-dash-scale-unaligned.traps.ref.png | Bin 4552 -> 3289 bytes
test/reference/rectilinear-dash-scale.ref.png | Bin 921 -> 651 bytes
4 files changed, 1 insertion(+), 1 deletion(-)
commit 99f3fea6d92fab684b145b2eb62fc7e6705aca73
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 17:53:11 2012 +0100
gl: Uses the inline clip function, so update its include
Fixes build from 0770dda52be9c1bf464a84cb5566ef46d7e9df5a.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-gl-msaa-compositor.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 0046967224640c0a390b4a7b376bbd631ed32a5c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 16:12:55 2012 +0100
dash: Increment dash_remain by the next segment to reduce accumulation errors
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-stroke-dash.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 5e39a8098b88b2e8d25eb46c6bbe8656c9e0260c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 15:48:01 2012 +0100
dash: Use a epsilon compare for stepping the dash
Due to rounding errors that may creep in comparing against 0.0 is
dangerous and may result in an infinite loop whilst generating dashes
that consumes all memory.
Reported-and-tested-by: Uli Schlachter <psychon@znc.in>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-fixed-private.h | 2 ++
src/cairo-stroke-dash.c | 2 +-
2 files changed, 3 insertions(+), 1 deletion(-)
commit 57cfdfd9796531a576060e9304715920e0fdb8fe
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-list into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-botor-scan-converter.c | 2 +-
src/cairo-gstate.c | 1 +
src/cairo-list-inline.h | 209 ++++++++++++++++++++++++++++++++++++
src/cairo-list-private.h | 167 ----------------------------
src/cairo-observer.c | 2 +
src/cairo-path-fixed.c | 1 +
src/cairo-pattern-inline.h | 2 +
src/cairo-pattern.c | 1 +
src/cairo-ps-surface.c | 1 +
src/cairo-rtree-private.h | 2 +-
src/cairo-scaled-font.c | 1 +
src/cairo-script-surface.c | 2 +-
src/cairo-surface-observer.c | 1 +
src/cairo-surface.c | 1 +
src/cairo-xcb-connection.c | 2 +-
src/cairo-xcb-screen.c | 1 +
src/cairo-xcb-shm.c | 1 +
src/cairo-xcb-surface-render.c | 1 +
src/cairo-xcb-surface.c | 1 +
src/cairo-xlib-display.c | 1 +
src/cairo-xlib-render-compositor.c | 1 +
src/cairo-xlib-screen.c | 1 +
src/cairo-xlib-surface.c | 1 +
src/cairo-xlib-xcb-surface.c | 1 +
25 files changed, 234 insertions(+), 171 deletions(-)
commit df62accbda19276c68753e799a32443b47d4e939
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-surface-subsurface-private into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-analysis-surface.c | 2 +-
src/cairo-cogl-surface.c | 2 +-
src/cairo-gl-operand.c | 2 +-
src/cairo-paginated-surface.c | 2 +-
src/cairo-surface-observer.c | 2 +-
src/cairo-surface-subsurface-inline.h | 72 ++++++++++++++++++++++++++++++++
src/cairo-surface-subsurface-private.h | 32 +-------------
src/cairo-xlib-source.c | 2 +-
9 files changed, 80 insertions(+), 37 deletions(-)
commit 590202dbfba709cfdd8ad3c241e7af06b3c542e9
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-error-private into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-error-inline.h | 52 +++++++++++++++++++++++++++++++++++++++++++++
src/cairo-error-private.h | 7 ------
3 files changed, 53 insertions(+), 7 deletions(-)
commit 2e7d60e0a29494d94a05205ec83f3dae2041811f
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-pattern-private into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-image-source.c | 2 +-
src/cairo-mask-compositor.c | 2 +-
src/cairo-pattern-inline.h | 63 ++++++++++++++++++++++++++++++++++++++++++
src/cairo-pattern-private.h | 20 --------------
src/cairo-spans-compositor.c | 2 +-
src/cairo-traps-compositor.c | 2 +-
src/cairo-xlib-source.c | 2 +-
8 files changed, 69 insertions(+), 25 deletions(-)
commit 306117ea7c69f9125fa062e4c5e5f9086b98d832
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-recording-surface-private into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-beos-surface.cpp | 1 +
src/cairo-cogl-surface.c | 2 +-
src/cairo-gl-surface-legacy.c | 1 +
src/cairo-image-surface-inline.h | 82 +++++++++++++++++++++++++++++++++++++
src/cairo-image-surface-private.h | 35 ----------------
src/cairo-image-surface.c | 10 ++---
src/cairo-skia-surface.cpp | 1 +
src/cairo-surface.c | 2 +-
src/cairo-tee-surface.c | 2 +-
src/drm/cairo-drm-surface.c | 1 +
src/skia/cairo-skia-context.cpp | 1 +
12 files changed, 96 insertions(+), 43 deletions(-)
commit 8653c2692e684a60370b99e545123ba2a7b00bc8
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-recording-surface-private into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 2 +
src/cairo-analysis-surface.c | 4 +-
src/cairo-image-source.c | 2 +-
src/cairo-pattern.c | 4 +-
src/cairo-pdf-surface.c | 2 +-
src/cairo-ps-surface.c | 2 +-
src/cairo-recording-surface-inline.h | 68 ++++++++++++++++++++++++++++++
src/cairo-recording-surface-private.h | 26 ------------
src/cairo-recording-surface.c | 2 +-
src/cairo-script-surface.c | 4 +-
src/cairo-spans-compositor.c | 2 +-
src/cairo-surface-snapshot-inline.h | 2 +-
src/cairo-surface-snapshot-private.h | 18 --------
src/cairo-surface-snapshot.c | 2 +-
src/cairo-svg-surface.c | 2 +-
src/cairo-tee-surface.c | 2 +-
src/cairo-traps-compositor.c | 4 +-
src/cairo-vg-surface.c | 2 +-
src/cairo-xcb-surface-render.c | 4 +-
src/cairo-xlib-source.c | 2 +-
src/cairo-xml-surface.c | 2 +-
src/win32/cairo-win32-printing-surface.c | 2 +-
22 files changed, 93 insertions(+), 67 deletions(-)
commit 3266f936dee59b7c3a990e518899a72d0e103f62
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-surface-snapshot-private into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-surface-snapshot-inline.h | 59 +++++++++++++++++++++++++++++++++++
1 file changed, 59 insertions(+)
commit 356c7cb2e3da8d95a4bc6c40d0b1895657fd59ce
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-surface-observer-private into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-surface-observer-inline.h | 59 ++++++++++++++++++++++++++++++++++
src/cairo-surface-observer-private.h | 21 +-----------
src/cairo-surface-observer.c | 1 +
4 files changed, 62 insertions(+), 20 deletions(-)
commit f3623cf0220aa32c12c3ba3988a5dfef6605d6b3
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-surface-private into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-surface-inline.h | 52 ++++++++++++++++++++++++++++++++
src/cairo-surface-private.h | 9 ------
src/win32/cairo-win32-gdi-compositor.c | 1 +
4 files changed, 54 insertions(+), 9 deletions(-)
commit 6736d0bf000a42ce426b45c923d7066bf0a27089
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-contour-privates into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-contour-inline.h | 80 +++++++++++++++++++++++++++++++++++++++
src/cairo-contour-private.h | 35 -----------------
src/cairo-contour.c | 1 +
src/cairo-path-stroke-polygon.c | 1 +
5 files changed, 83 insertions(+), 35 deletions(-)
commit afa180935bedb5c3db06706d893b2bcd89b2215b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-combsort-privates into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 2 +-
src/cairo-bentley-ottmann-rectangular.c | 2 +-
src/cairo-bentley-ottmann-rectilinear.c | 2 +-
src/cairo-bentley-ottmann.c | 2 +-
src/cairo-botor-scan-converter.c | 2 +-
src/cairo-boxes-intersect.c | 2 +-
src/cairo-combsort-inline.h | 94 +++++++++++++++++++++++++++++++
src/cairo-combsort-private.h | 94 -------------------------------
src/cairo-contour.c | 2 +-
src/cairo-polygon-intersect.c | 2 +-
src/cairo-polygon-reduce.c | 2 +-
src/cairo-recording-surface.c | 2 +-
src/cairo-rectangular-scan-converter.c | 2 +-
src/cairo-surface-observer.c | 2 +-
14 files changed, 106 insertions(+), 106 deletions(-)
commit 0770dda52be9c1bf464a84cb5566ef46d7e9df5a
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-clip-privates into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 1 +
src/cairo-clip-boxes.c | 1 +
src/cairo-clip-inline.h | 83 ++++++++++++++++++++++++++++++++
src/cairo-clip-polygon.c | 1 +
src/cairo-clip-private.h | 42 ----------------
src/cairo-clip.c | 1 +
src/cairo-composite-rectangles.c | 1 +
src/cairo-default-context.c | 1 +
src/cairo-gstate.c | 1 +
src/cairo-mask-compositor.c | 1 +
src/cairo-spans-compositor.c | 1 +
src/cairo-surface-clipper.c | 1 +
src/cairo-surface-offset.c | 1 +
src/cairo-surface-subsurface.c | 1 +
src/cairo-surface-wrapper.c | 1 +
src/cairo-surface.c | 1 +
src/cairo-traps-compositor.c | 1 +
src/cairo-xcb-surface-render.c | 1 +
src/cairo-xlib-core-compositor.c | 1 +
src/win32/cairo-win32-gdi-compositor.c | 1 +
20 files changed, 101 insertions(+), 42 deletions(-)
commit e9c9e28cd19df8a5875f62fc74087500182399f0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 11:59:54 2012 +0100
Split cairo-box-privates into struct+inlines
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/Makefile.sources | 2 +-
src/cairo-analysis-surface.c | 2 +-
src/cairo-box-inline.h | 121 ++++++++++++++++++++++++++++++++++++++
src/cairo-box-private.h | 121 --------------------------------------
src/cairo-boxes.c | 2 +-
src/cairo-clip-boxes.c | 2 +-
src/cairo-cogl-surface.c | 2 +-
src/cairo-path-bounds.c | 2 +-
src/cairo-path-fixed.c | 2 +-
src/cairo-path-stroke-boxes.c | 2 +-
src/cairo-path-stroke-polygon.c | 2 +-
src/cairo-path-stroke-tristrip.c | 2 +-
src/cairo-path-stroke.c | 2 +-
src/cairo-rectangle.c | 2 +-
src/cairo-spline.c | 2 +-
src/cairo-traps-compositor.c | 2 +-
16 files changed, 135 insertions(+), 135 deletions(-)
commit f830268b952ecd06bf3adf7bf62dc4b5c4139e5c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 19 12:04:01 2012 +0100
boxes: Remove unused inline function
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-boxes-private.h | 8 --------
1 file changed, 8 deletions(-)
commit 9417fec04a172a7c44be38c1b3d032c3fee4f0d6
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Apr 18 20:44:43 2012 +0100
image: Split inline SRC composition
Currently we construct a mask for the entire line and try to process it
in one call to pixman (two without the LERP operator). An alternative
approach is split the row into separate composite operations for the
clear (which we can skip), fully opaque and partial spans.
As the source operator is typically mostly opaque or clear, this is a
good win as we are able to utilise more fast paths. In the worst case,
it degrades to the old method of constructing a whole mask for a row.
It may reduce performance for having to process lots of spans though
(this is where the pixman spans interface should help). However, such
geometry is rare and typically handled elsewhere.
And the existing code has a bug where it was clearing the destination
for clear regions of the mask outside of the spans.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-image-compositor.c | 154 ++++++++++++++++++++++++++----------------
1 file changed, 96 insertions(+), 58 deletions(-)
commit 70fc52cb80f21fff0ba960236f24b997692cce64
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Apr 18 15:24:41 2012 +0100
stroke(boxes): Apply user scale factors to dash segments
Fixes tests/rectilinear-dash-scale*
Reported-by: Guillaume Ayoub <xovni@wanadoo.fr>
Reported-by: Carlos Garcia Campos <carlosgc@gnome.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48818
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-boxes.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
commit 5ff32f70c14d89cb776a1a9da91089c258dbbf68
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Wed Apr 18 15:20:57 2012 +0100
test: Add rectilinear-dash-scale
Exercise rectilinear dashes under a non-uniform scale factors.
References: https://bugs.freedesktop.org/show_bug.cgi?id=48818
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/Makefile.sources | 1 +
test/rectilinear-dash-scale.c | 196 ++++++++++++++++++++
.../rectilinear-dash-scale-unaligned.ref.png | Bin 0 -> 5010 bytes
.../rectilinear-dash-scale-unaligned.traps.ref.png | Bin 0 -> 4552 bytes
test/reference/rectilinear-dash-scale.ref.png | Bin 0 -> 921 bytes
5 files changed, 197 insertions(+)
commit 4f125a1bd069095f3a97f009e7d7af2681353fb1
Author: Nis Martensen <nis.martensen@web.de>
Date: Thu Apr 12 23:20:59 2012 +0200
typo
doc/public/check-doc-coverage.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 905a88bf517bdc1b110587551ea7f1739bd90627
Author: Nis Martensen <nis.martensen@web.de>
Date: Fri Apr 13 20:22:59 2012 +0200
doc: add missing chapters
Signed-off-by: Uli Schlachter <psychon@znc.in>
doc/public/cairo-docs.xml | 3 +++
1 file changed, 3 insertions(+)
commit 80d1e68bb31be030f8102f28545bb622fa2050d8
Author: Nis Martensen <nis.martensen@web.de>
Date: Fri Apr 13 20:36:03 2012 +0200
doc: do not use / in section title
The Title: field is used to determine the file name of the generated
html. Due to the slash a subdirectory is created and all relative links
in the generated file are broken.
Use a hyphen instead.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xlib-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 40d6c580cd029f3d330ba28a7728ff36498920cb
Author: Javier Jardón <jjardon@gnome.org>
Date: Tue Sep 13 16:30:10 2011 +0100
configure.ac: Do not generate template files when building docs
It's not needed as all the api documentation is inline
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 7b25b2eb4b83f411935e51ed398cebfb3a9c3c59
Author: Javier Jardón <jjardon@gnome.org>
Date: Tue Sep 13 16:20:12 2011 +0100
autogen.sh: User autoreconf instead custom script
autogen.sh | 194 +++++-------------------------------------------------------
1 file changed, 14 insertions(+), 180 deletions(-)
commit aa90a8f84f7dff67d57a8c0863331bf04e3b546e
Author: Javier Jardón <jjardon@gnome.org>
Date: Tue Sep 13 16:15:49 2011 +0100
configure.ac: generate xz tarballs by default
build/Makefile.am.releasing | 2 +-
configure.ac | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
commit 3616a5f992e6d12fc7f005b7b67ab2101d248470
Author: Javier Jardón <jjardon@gnome.org>
Date: Tue Sep 13 16:13:41 2011 +0100
configure.ac: Update autotools configuration
Do not use autoconf deprecated macros
Use new libtool syntax
honor aclocal flags
Makefile.am | 2 +-
configure.ac | 16 +++++++++++-----
2 files changed, 12 insertions(+), 6 deletions(-)
commit 93d42e82a43a0e2f531331b127ec82d8a3b6eded
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sat Apr 14 14:52:42 2012 +0100
Revert accidental push of ps debugging API.
This reverts commits
6ad8c96fd81e06cea6ada4a83e7c5614f150f914,
a3f97d1d2e77a0fee4ca03d5dc9968952a440561,
25abe582982caeb07d1e0af4acca53bb110a33bf
I should know better by now than to push without checking for outstanding
changes.
boilerplate/cairo-boilerplate-pdf.c | 19 +++++++++-----
boilerplate/cairo-boilerplate-ps.c | 40 ++++++++++++++++++++++++-----
src/cairo-pdf-surface.c | 21 ---------------
src/cairo-pdf.h | 5 ----
src/cairo-ps-surface.c | 48 -----------------------------------
src/cairo-ps.h | 10 --------
6 files changed, 46 insertions(+), 97 deletions(-)
commit d486ea30f1a58640a1178de74f705a73845b1cda
Author: Marcus Meissner <meissner@suse.de>
Date: Sat Apr 14 14:47:02 2012 +0100
configure: Conditionally include -flto
As some systems fail to create working binaries with when linked with
lto, perform a check during configure.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=39114
build/configure.ac.warnings | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
commit 25abe582982caeb07d1e0af4acca53bb110a33bf
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 12 10:51:38 2012 +0100
pdf (debug API): Export the ability to force fallbacks
We need to occasionally force fallbacks whilst testing the PDF
output, so export a debug interface to do so in order to avoid poking
around inside cairo internals.
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
boilerplate/cairo-boilerplate-pdf.c | 19 ++++++-------------
src/cairo-pdf-surface.c | 21 +++++++++++++++++++++
src/cairo-pdf.h | 5 +++++
3 files changed, 32 insertions(+), 13 deletions(-)
commit a3f97d1d2e77a0fee4ca03d5dc9968952a440561
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 12 10:51:38 2012 +0100
ps (debug API): Export the ability to force fallbacks
We need to occasionally force fallbacks whilst testing the PostScript
output, so export a debug interface to do so in order to avoid poking
around inside cairo internals.
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
boilerplate/cairo-boilerplate-ps.c | 20 ++++++--------------
src/cairo-ps-surface.c | 21 +++++++++++++++++++++
src/cairo-ps.h | 3 +++
3 files changed, 30 insertions(+), 14 deletions(-)
commit 6ad8c96fd81e06cea6ada4a83e7c5614f150f914
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Apr 12 10:51:38 2012 +0100
ps (API): Export the ability to set the creation date of the surface
A PostScript surface embeds a CreationDate comment into its document
description pre-amble. Normally this is set to the time the surface is
written out, except we set this to a constant value in the boilerplate
for the purposes of mimicking a reference file. It may also be useful
for external applications, so make it a public export.
References: https://bugs.freedesktop.org/show_bug.cgi?id=48577
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
boilerplate/cairo-boilerplate-ps.c | 20 +-------------------
src/cairo-ps-surface.c | 27 +++++++++++++++++++++++++++
src/cairo-ps.h | 7 +++++++
3 files changed, 35 insertions(+), 19 deletions(-)
commit bf5adaf3942388e58ad3bda30173e53b214df885
Author: Nis Martensen <nis.martensen@web.de>
Date: Tue Apr 10 22:09:23 2012 +0200
doc: add returns statement to cairo_surface_supports_mime_type
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-surface.c | 3 +++
1 file changed, 3 insertions(+)
commit a6a5b1fd0b0e32bc03e4742a0441d03e352ea8bc
Author: Nis Martensen <nis.martensen@web.de>
Date: Tue Apr 10 22:02:54 2012 +0200
doc: no separate cairo-xcb-xrender section
There is already a cairo-xcb section and there are no symbols that
should be documented in an extra -xrender section. It is not mentioned
in cairo-sections.txt either. So simply delete it.
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface-render.c | 13 -------------
1 file changed, 13 deletions(-)
commit c04f5a353f0b05326915f370b05480eeda27ebac
Author: Nis Martensen <nis.martensen@web.de>
Date: Sun Mar 11 00:36:58 2012 +0100
add unused symbols to sections doc
Signed-off-by: Uli Schlachter <psychon@znc.in>
doc/public/cairo-sections.txt | 32 +++++++++++++++++++++++++++++++-
1 file changed, 31 insertions(+), 1 deletion(-)
commit 07fc63676dfdaa57ed919ad7be8f59c97c615473
Author: Uli Schlachter <psychon@znc.in>
Date: Wed Apr 11 21:37:55 2012 +0200
xlib: Disable fallback compositor with xlib-xcb
When xlib-xcb is enabled, this is just dead code which is never used. Thus, this
shouldn't hurt. However, this does include cairo-xlib-private.h. Shouldn't be a
problem? Well, that header contains static inline functions which some compiler
on Solaris will emit even when they are unused.
This brings us to the real problem: That static inline function refers to a
function which isn't compiled with xlib-xcb and thus linking fails with
undefined symbols.
This can be reproduced with GCC by adding a call to
_cairo_xlib_screen_put_gc(NULL, NULL, 0, 0); to
_cairo_xlib_fallback_compositor_get.
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=48489
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xlib-fallback-compositor.c | 4 ++++
1 file changed, 4 insertions(+)
commit 09de481ce5f6ed1c38c0d5bf3af7c60642c4c947
Author: Gilles Espinasse <g.esp@free.fr>
Date: Sat Apr 7 23:09:51 2012 +0200
Cosmetic configure fix
'how to allow undefined symbols in shared libraries' test should use CAIRO_CC_TRY_FLAG_SILENT or configure display is a bit out of order like this
checking how to allow undefined symbols in shared libraries used by test suite... checking whether gcc supports -Wl,--allow-shlib-undefined... yes
-Wl,--allow-shlib-undefined
Signed-off-by: Gilles Espinasse <g.esp@free.fr>
Signed-off-by: Uli Schlachter <psychon@znc.in>
build/configure.ac.warnings | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit c7b86ab97be1d3d3ccf43b652832f148a2fcf290
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Tue Apr 10 22:34:05 2012 +0930
any2ppm: fix missing enumeration warning
test/any2ppm.c | 1 +
1 file changed, 1 insertion(+)
commit b74e8ebd50da443537a031132ebc86728f79e5f5
Author: Maarten Bosmans <mkbosmans@gmail.com>
Date: Mon Apr 9 21:33:52 2012 +0200
Add _cairo_win32_print_gdi_error to boilerplate code
This function is not exported in libcairo, so can't be used from the
library.
boilerplate/cairo-boilerplate-win32-printing.c | 30 ++++++++++++++++++++++--
1 file changed, 28 insertions(+), 2 deletions(-)
commit 0bb3e0769a49f639ae86a9577394fc51709441f5
Author: Maarten Bosmans <mkbosmans@gmail.com>
Date: Mon Apr 9 21:33:51 2012 +0200
test: Only use alarm() when SIGALRM is also defined
On some platforms (mingw) the alarm() configure check succeeds, but the
alarm function doesn't actually work.
test/cairo-test.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 9fcbe25c2dcf831783bb0fd20af9754c0b5c409b
Author: Maarten Bosmans <mkbosmans@gmail.com>
Date: Mon Apr 9 21:33:50 2012 +0200
Protect code using dlfcn.h with CAIRO_HAS_DLSYM
configure.ac | 1 +
util/Makefile.am | 4 ++++
2 files changed, 5 insertions(+)
commit 3f32419257bb2e380dd63a3b1a850b512a617776
Author: Maarten Bosmans <mkbosmans@gmail.com>
Date: Mon Apr 9 21:33:49 2012 +0200
test: Give some functions in any2ppm a prefix
The function name _write is too generic and can clash with already
defined functions.
test/any2ppm.c | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
commit 038e4991912656a3239ca82d60056ca129016ba6
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Mon Apr 9 18:01:44 2012 +0930
pdf: avoid unnecessary use of patterns in mask groups
src/cairo-pdf-surface.c | 188 ++++++++++++++++++++++++++---------------------
1 file changed, 106 insertions(+), 82 deletions(-)
commit 2007f0eccec5df72b7069fc43878fa0c1ce89527
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Mon Apr 9 20:03:15 2012 +0930
test: disable subsurface tests with vector backends
due to a subsurface snapshot bug causing recursion in the pdf backend.
test/subsurface-image-repeat.c | 2 +-
test/subsurface-modify-child.c | 2 +-
test/subsurface-modify-parent.c | 2 +-
test/subsurface-outside-target.c | 2 +-
test/subsurface-pad.c | 2 +-
test/subsurface-reflect.c | 2 +-
test/subsurface-repeat.c | 2 +-
test/subsurface-scale.c | 2 +-
test/subsurface-similar-repeat.c | 2 +-
test/subsurface.c | 2 +-
10 files changed, 10 insertions(+), 10 deletions(-)
commit 7cb5053c0694992320b5f7ea3b91ea497431813b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Apr 9 12:49:20 2012 +0100
analysis: Apply the integer translation to the bbox as well
The bbox is used to compute the ink extents (and so the pattern extents
of a recording surface) and if given an integer translation we failed to
transform the bbox into the target space.
Fixes mask (pdf).
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-analysis-surface.c | 8 ++++++++
1 file changed, 8 insertions(+)
commit de61681574eb7d6e0e497ea7f25797e3d9b20ac4
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Mon Apr 9 12:47:34 2012 +0100
build: Disable -Wset-but-unused-variable
This is too noisy in the current build, and masking more important
warnings.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
build/configure.ac.warnings | 5 +++++
1 file changed, 5 insertions(+)
commit 113ec6bf0c8ed1ff12293d1ed2a2de9bd5b9904b
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 8 17:58:13 2012 +0100
traps: Clip the trapezoid extents against the clip extents
Just in case the clip polygon turns out to be much larger than the
operation extents (silly us for not reducing it correctly) and lead to
catastrophe, such as:
Program received signal SIGSEGV, Segmentation fault.
pixman_fill_sse2 (bits=<optimized out>, stride=4, bpp=8, x=0, y=0,
width=3, height=-34811, data=0) at pixman-sse2.c:3369
3369 *(uint16_t *)d = data;
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-traps-compositor.c | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
commit 6f28f0b33cb12f3b2dd48c87da0018bd00c17107
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Sun Apr 8 11:28:59 2012 +0100
stroke: Fix misuse of half_line_x for vertical caps on dashes
A typo using half_line_x instead of half_line_y when emitting dashed
segments of the rectilinear stroke.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-path-stroke-boxes.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
commit 8657ca10e34b0034602680b4304d47ecf90ccbfd
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Apr 6 21:20:40 2012 +0930
fix _cairo_pattern_get_ink_extents to work with snapshot recording surfaces
It had caused pdf bbox sizes to regress to page size bboxes.
src/cairo-pattern.c | 4 ++++
1 file changed, 4 insertions(+)
commit 8886220b5027296f5b3b95e9c2f93509108d3b9e
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Apr 6 09:43:53 2012 +0930
type1-subset: if font name is prefixed with a subset tag, strip it off
src/cairo-type1-subset.c | 11 +++++++++++
1 file changed, 11 insertions(+)
commit a6d955fcc46ae2da8d6f3b2cadeae64c03066461
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Apr 6 09:23:50 2012 +0930
fix indentation in cairo_type1_font_subset_parse_charstring
src/cairo-type1-subset.c | 147 +++++++++++++++++++++++-----------------------
1 file changed, 74 insertions(+), 73 deletions(-)
commit 70b2856ed3d31b41e69b3d82fb9c5c11c2b3d3d4
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Fri Apr 6 09:13:35 2012 +0930
type1-subset: use fallback font if glyph widths are calculated
Bug 48349 has a pdf file with a Type 1 font where the glyph widths are
of the form:
34 9302 19 div hsbw
src/cairo-type1-subset.c | 6 ++++++
1 file changed, 6 insertions(+)
commit 7a262fd398c8a1f3c9052e8d9ec459e27ff91b4d
Author: Adrian Johnson <ajohnson@redneon.com>
Date: Wed Apr 4 19:53:09 2012 +0930
fix bug in _cairo_image_analyze_color
src/cairo-image-surface.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
commit cc247c346b75353f16ab40ac74c54cdd9663d16b
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Mon Apr 2 14:29:47 2012 -0700
gl: Remove an unused variable
src/cairo-gl-gradient.c | 1 -
1 file changed, 1 deletion(-)
commit c77112c5464d7ff21052527f82f4d729cc509291
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Apr 2 20:43:00 2012 +0200
xcb: Fix SHM in _get_image()
Commit 2283ab9 introduced a logic error. Instead of falling back to the non-SHM
path when getting the image via SHM failed, we now did the fallback when getting
the image via SHM worked (which means that the SHM operation was a waste of
time).
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-surface.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit d18542b735bb777b444152f0ef06de18993635bd
Author: Kalev Lember <kalevlember@gmail.com>
Date: Wed Mar 28 19:47:24 2012 +0300
win32: Avoid redefining ssize_t
... if it's already defined by system headers. mingw-w64 includes a
ssize_t definition, so we'll have to make sure not to redefine it in
that case.
util/cairo-missing/cairo-missing.h | 2 ++
1 file changed, 2 insertions(+)
commit a965b0f95fdeb567f7ccb51f7c8c47735a61e2d9
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Thu Mar 29 01:08:51 2012 +0000
gl: fix y-axis origin when map_to_image() for non texture GL surface
We need to fix y-axis origin when map a GL surface to image surface for
non-texture GL surface.
Test cases: extended-blend-alpha-mask, extended-blend-mask.
Although the image outputs is not right, but the image on the first grid
(upper-left corner) is correct comparing to image output.
src/cairo-gl-surface.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
commit af6e084dd78fcbb8ecce46c57f655f5e24343b8c
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Mar 29 14:48:24 2012 +0100
cairoint: Mark PDF surface as requiring the deflate stream output
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairoint.h | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
commit 169cc39dff6f49af6e39281912e577b0d6bda8ea
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Mar 29 11:58:35 2012 +0100
test: update two reference images highlighted to be wrong due to source extents
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
test/reference/operator-source.argb32.ref.png | Bin 5625 -> 5612 bytes
test/reference/operator-source.rgb24.ref.png | Bin 3967 -> 3975 bytes
test/reference/overlapping-boxes.argb32.ref.png | Bin 192 -> 179 bytes
test/reference/overlapping-boxes.rgb24.ref.png | Bin 185 -> 170 bytes
4 files changed, 0 insertions(+), 0 deletions(-)
commit f0e40af05b81bf26dcf36cb262c34603b6420d1c
Author: Andrea Canciani <ranma42@gmail.com>
Date: Tue Mar 27 11:32:55 2012 +0200
doc: Silence last 'missing Since field' errors
Some APIs are public but not yet supported, hence they might chenge
without notice. State their "Since" status as "to be determined".
src/cairo-beos-surface.cpp | 4 ++++
src/cairo-gl-surface.c | 2 ++
2 files changed, 6 insertions(+)
commit 5174c585def3e2ec06a4679644973a489f92bef2
Author: Andrea Canciani <ranma42@gmail.com>
Date: Sat Mar 24 17:58:57 2012 +0100
doc: Silence warnings about 'Since' field in private functions
A 'Since' field on non-public functions is not very meaningful,
because their signature, implementation and semantic is subject to
change without any visibility outside of cairo.
src/cairo-font-options.c | 8 --------
1 file changed, 8 deletions(-)
commit dc1f5f1b002dd61c4c7b27dbaadb9f52dd34ec14
Author: Andrea Canciani <ranma42@gmail.com>
Date: Thu Feb 16 14:30:08 2012 +0100
doc: Add since documentation for enumeration values
src/cairo-pdf.h | 4 +-
src/cairo-ps.h | 4 +-
src/cairo-region.c | 8 +-
src/cairo-script.h | 4 +-
src/cairo-svg.h | 4 +-
src/cairo.h | 265 ++++++++++++++++++++++++++--------------------------
6 files changed, 145 insertions(+), 144 deletions(-)
commit 2470065edf80fa3a41159990a5dac3e45ac80a09
Author: Andrea Canciani <ranma42@gmail.com>
Date: Tue Mar 27 11:47:11 2012 +0200
doc: Fix some wrong versions
The script from the previous commit reported that some 'Since' fields
indicate incorrect versions.
src/cairo-quartz-surface.c | 6 +++---
src/cairo-script-surface.c | 2 +-
src/cairo-script.h | 2 +-
3 files changed, 5 insertions(+), 5 deletions(-)
commit 1d3d64469f3ddac282860f66b24a35cf2253fa46
Author: Andrea Canciani <ranma42@gmail.com>
Date: Tue Mar 27 11:48:19 2012 +0200
doc: Add "since" tag to documentation
The following Python script was used to compute "Since: 1.X" tags,
based on the first version where a symbol became officially supported.
This script requires a concatenation of the the cairo public headers
for the officially supported beckends to be available as
"../../includes/1.X.0.h".
from sys import argv
import re
syms = {}
def stripcomments(text):
def replacer(match):
s = match.group(0)
if s.startswith('/'):
return ""
else:
return s
pattern = re.compile(
r'//.*?$|/\*.*?\*/|\'(?:\\.|[^\\\'])*\'|"(?:\\.|[^\\"])*"',
re.DOTALL | re.MULTILINE
)
return re.sub(pattern, replacer, text)
for minor in range(12,-2,-2):
version = "1.%d" % minor
names = re.split('([A-Za-z0-9_]+)', stripcomments(open("../../includes/%s.0.h" % version).read()))
for s in names: syms[s] = version
for filename in argv[1:]:
is_public = False
lines = open(filename, "r").read().split("\n")
newlines = []
for i in range(len(lines)):
if lines[i] == "/**":
last_sym = lines[i+1][2:].strip().replace(":", "")
is_public = last_sym.lower().startswith("cairo")
elif is_public and lines[i] == " **/":
if last_sym in syms:
v = syms[last_sym]
if re.search("Since", newlines[-1]): newlines = newlines[:-1]
if newlines[-1].strip() != "*": newlines.append(" *")
newlines.append(" * Since: %s" % v)
else:
print "%s (%d): Cannot determine the version in which '%s' was introduced" % (filename, i, last_sym)
newlines.append(lines[i])
out = open(filename, "w")
out.write("\n".join(newlines))
out.close()
src/cairo-debug.c | 2 +
src/cairo-font-face.c | 10 ++
src/cairo-font-options.c | 30 ++++++
src/cairo-ft-font.c | 14 +++
src/cairo-image-surface.c | 8 ++
src/cairo-matrix.c | 24 +++++
src/cairo-misc.c | 2 +
src/cairo-path.c | 2 +
src/cairo-pattern.c | 32 ++++++
src/cairo-pdf-surface.c | 2 +
src/cairo-pdf.h | 2 +-
src/cairo-png.c | 10 ++
src/cairo-ps-surface.c | 2 +
src/cairo-ps.h | 2 +
src/cairo-quartz-font.c | 2 +
src/cairo-quartz-surface.c | 2 +
src/cairo-region.c | 2 +
src/cairo-scaled-font.c | 12 +++
src/cairo-script-surface.c | 16 +++
src/cairo-surface.c | 26 +++++
src/cairo-svg-surface.c | 2 +
src/cairo-svg.h | 2 +
src/cairo-version.c | 16 +++
src/cairo-xlib-surface.c | 14 +++
src/cairo.c | 174 +++++++++++++++++++++++++++++++
src/cairo.h | 66 ++++++++++++
src/win32/cairo-win32-display-surface.c | 4 +
src/win32/cairo-win32-font.c | 14 +++
src/win32/cairo-win32-surface.c | 2 +
29 files changed, 495 insertions(+), 1 deletion(-)
commit 79740139e05375c4ce3542b571bc6a1e9d9137a7
Author: Andrea Canciani <ranma42@gmail.com>
Date: Thu Feb 16 18:52:16 2012 +0100
doc: Do not use the '@' prefix on some tags
Make the 'Since' and 'Returns' tags consistent by removing the '@'
prefix.
Fixes some "missing 'Since' field" warnings.
src/cairo-image-surface.c | 2 +-
src/cairo-script-surface.c | 2 +-
src/cairo-surface.c | 10 +++++-----
src/cairo-user-font.c | 2 +-
src/cairo-version.c | 8 ++++----
5 files changed, 12 insertions(+), 12 deletions(-)
commit bbafcb3de8c01e2946e565f6ec7e31a3b325dbad
Author: Andrea Canciani <ranma42@gmail.com>
Date: Thu Feb 16 18:53:14 2012 +0100
doc: Make the documentation name match the function name
Fixes the 'symbol not found' errors caused by mismatches between the
documentation name and the name in the code.
src/cairo-scaled-font-subsets-private.h | 8 ++++----
src/cairo-traps.c | 2 +-
src/cairo-xlib-display.c | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
commit 7f635e4ead0c5bc689438a3c52742feba92c09ed
Author: Andrea Canciani <ranma42@gmail.com>
Date: Sat Mar 24 17:48:07 2012 +0100
doc: Make doc ids more consistent my always putting ':' after them
This makes the documentations comments more consistent and fixes many
reports of 'invalid doc id'.
src/cairo-arc.c | 2 +-
src/cairo-gstate.c | 2 +-
src/cairo-path-stroke.c | 2 +-
src/cairo-pattern.c | 36 ++++++++++++++++++------------------
src/cairo-quartz-font.c | 4 ++--
src/cairo-quartz-surface.c | 6 +++---
src/cairo-recording-surface.c | 2 +-
src/cairo-surface-snapshot.c | 2 +-
src/cairo-surface.c | 2 +-
src/cairo.c | 8 ++++----
src/win32/cairo-win32-surface.c | 4 ++--
11 files changed, 35 insertions(+), 35 deletions(-)
commit eaac0fa87e588c3e29c177baa016e754588ad6c2
Author: Andrea Canciani <ranma42@gmail.com>
Date: Fri Mar 23 11:57:38 2012 +0100
doc: Manually fix remaining warnings about symmetry
The Python script is unable to fix all of the warnings, because some
point to comments that are not actually documentation.
Fixes the remaining 'documentation comment not closed with **/'
warnings.
src/cairo-gl-surface-legacy.c | 2 +-
src/cairo-qt-surface.cpp | 2 +-
src/cairo-skia-surface.cpp | 4 ++--
src/cairo-wideint.c | 3 ++-
4 files changed, 6 insertions(+), 5 deletions(-)
commit f717341ab9fec1f4a72fe18f5e712272c831d978
Author: Andrea Canciani <ranma42@gmail.com>
Date: Thu Feb 16 00:31:47 2012 +0100
doc: Make documentation comments symmetric
Documentation comments should always start with "/**" and end with
"**/". This is not required by gtk-doc, but it makes the
documentations formatting more consistent and simplifies the checking
of documentation comments.
The following Python script tries to enforce this.
from sys import argv
from sre import search
for filename in argv[1:]:
in_doc = False
lines = open(filename, "r").read().split("\n")
for i in range(len(lines)):
ls = lines[i].strip()
if ls == "/**":
in_doc = True
elif in_doc and ls == "*/":
lines[i] = " **/"
if ls.endswith("*/"):
in_doc = False
out = open(filename, "w")
out.write("\n".join(lines))
out.close()
This fixes most 'documentation comment not closed with **/' warnings
by check-doc-syntax.awk.
src/cairo-beos-surface.cpp | 2 +-
src/cairo-device.c | 2 +-
src/cairo-font-face.c | 2 +-
src/cairo-font-options.c | 2 +-
src/cairo-ft-font.c | 6 +++---
src/cairo-gl.h | 2 +-
src/cairo-gstate.c | 2 +-
src/cairo-image-surface.c | 4 ++--
src/cairo-malloc-private.h | 10 +++++-----
src/cairo-matrix.c | 2 +-
src/cairo-misc.c | 14 +++++++-------
src/cairo-path-stroke.c | 2 +-
src/cairo-path.c | 2 +-
src/cairo-pattern.c | 12 ++++++------
src/cairo-pdf-surface.c | 8 ++++----
src/cairo-pdf.h | 2 +-
src/cairo-png.c | 4 ++--
src/cairo-ps-surface.c | 6 +++---
src/cairo-ps.h | 2 +-
src/cairo-quartz-font.c | 6 +++---
src/cairo-quartz-image-surface.c | 2 +-
src/cairo-quartz-surface.c | 4 ++--
src/cairo-recording-surface.c | 4 ++--
src/cairo-region.c | 4 ++--
src/cairo-scaled-font.c | 2 +-
src/cairo-script-surface.c | 4 ++--
src/cairo-surface.c | 22 +++++++++++-----------
src/cairo-svg-surface.c | 6 +++---
src/cairo-svg.h | 2 +-
src/cairo-types-private.h | 2 +-
src/cairo-user-font.c | 4 ++--
src/cairo-version.c | 16 ++++++++--------
src/cairo-xcb-surface-render.c | 2 +-
src/cairo-xcb-surface.c | 4 ++--
src/cairo-xlib-surface.c | 8 ++++----
src/cairo.c | 16 ++++++++--------
src/cairo.h | 2 +-
src/win32/cairo-win32-display-surface.c | 4 ++--
src/win32/cairo-win32-font.c | 4 ++--
src/win32/cairo-win32-surface.c | 6 +++---
40 files changed, 105 insertions(+), 105 deletions(-)
commit c0fc24c889b09b734383c9250a3663d83510479e
Author: Andrea Canciani <ranma42@gmail.com>
Date: Sat Mar 24 17:53:23 2012 +0100
doc: Make informational comments syntactically different from docs
This avoids confusion with the documentation comments and fixes some
malformed docs reports.
src/cairo-qt-surface.cpp | 30 +++++++++++++++---------------
1 file changed, 15 insertions(+), 15 deletions(-)
commit 71123cffe0d10c71d1c7069a125024609ba60f1d
Author: Andrea Canciani <ranma42@gmail.com>
Date: Fri Mar 23 11:45:15 2012 +0100
doc: Add script to enforce stricter validation of documentation comments
src/Makefile.am | 4 +-
src/check-doc-syntax.awk | 105 ++++++++++++++++++++++++++++++++++++++++++++++
src/check-doc-syntax.sh | 4 ++
3 files changed, 111 insertions(+), 2 deletions(-)
commit d304f0e57be8036719c3709e2419487326369105
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Mar 29 00:32:36 2012 +0100
composite-rectangles: Trim extents for SOURCE and CLEAR to the mask
The SOURCE and CLEAR are the odd pair in Cairo's range of operators that
are bound by the shape/mask, but are unbound by the source. This
regularly leads to bugs as only track the bound/unbound rectangles and
confuse the meaning when bound only by the mask.
What is required is that the unbound extents in this case is only
trimmed by the mask (the bounded extents are still the intersection of
all).
Fixes bug-source-cu
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/cairo-composite-rectangles.c | 18 +++++++++++++++---
1 file changed, 15 insertions(+), 3 deletions(-)
commit 5b3d878c82fc862038c8e6730f34de317d734bd0
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Thu Mar 29 00:47:37 2012 +0100
test: Add test case for tracking source operator extents
test/Makefile.sources | 1 +
test/bug-source-cu.c | 81 +++++++++++++++++++++
test/reference/bug-source-cu.argb32.ref.png | Bin 0 -> 3815 bytes
test/reference/bug-source-cu.rgb24.ref.png | Bin 0 -> 3211 bytes
test/reference/bug-source-cu.traps.argb32.ref.png | Bin 0 -> 3816 bytes
test/reference/bug-source-cu.traps.rgb24.ref.png | Bin 0 -> 3212 bytes
6 files changed, 82 insertions(+)
commit fba21ef2a4c4eb343668267fda713aedbb6af2a4
Author: Henry (Yu) Song <hsong@sisa.samsung.com>
Date: Tue Mar 27 21:25:37 2012 +0000
gl: use font's antialias option to check whether it needs mask
There is need to loop over number of glyphs to check wether the glyph
image is a ARGB32 as the font's antialias option can be used for checking.
If antialias is SUBPIXEL or BEST, the glyph surface will be ARGB32,
otherwise it will be A8 format. Therefore we will only be using
component-alpha at SUBPIXEL (or better) font quality and only then need
a mask for multiple pass glyph composition.
src/cairo-gl-glyphs.c | 24 ++++++++----------------
1 file changed, 8 insertions(+), 16 deletions(-)
commit 06ffa0199c483e1e637f436079b1f2ed4c9e7baf
Author: Uli Schlachter <psychon@znc.in>
Date: Tue Mar 27 21:23:30 2012 +0200
README: Note that xcb is no longer experimental
Signed-off-by: Uli Schlachter <psychon@znc.in>
README | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
commit c4d1063e0310fa1b0c3ab749ed1b4e15431c450b
Author: Uli Schlachter <psychon@znc.in>
Date: Mon Mar 26 20:17:10 2012 +0200
xcb/xlib: Add missing "Since: 1.12"
Signed-off-by: Uli Schlachter <psychon@znc.in>
src/cairo-xcb-connection.c | 4 ++++
src/cairo-xcb-surface.c | 12 ++++++++++++
src/cairo-xlib-display.c | 2 ++
3 files changed, 18 insertions(+)
commit f5f8915df25112ad895d85cb6255d0bf01e24c63
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Sun Mar 25 15:11:57 2012 -0400
Fix another typo
src/cairo-gl.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 81c848c83945c19c8cf769daeaa831c086c264f2
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Sun Mar 25 15:02:36 2012 -0400
More typo fixes
src/cairo-malloc-private.h | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
commit 73cde7a0f6d86f1e72d080757f863caddb0530e6
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Sun Mar 25 15:00:44 2012 -0400
Fix typos
src/cairo-malloc-private.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
commit ede11b2954db19e3ca9d31cef7d04a7bf0e42ddc
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Sun Mar 25 14:37:14 2012 -0400
Fix math in comments
src/cairo-arc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 2721d05d69e42eef592ea0394df89cdc91414330
Author: Behdad Esfahbod <behdad@behdad.org>
Date: Thu Sep 22 13:02:44 2011 -0400
Typo
src/cairo-arc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 841b4057bc7afdc9fbac36b178dd5f15bbfc0f90
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date: Fri Mar 23 20:16:44 2012 +0000
version: Post release bump to 1.12.1
cairo-version.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|