Commit graph

1232 commits

Author SHA1 Message Date
Billy Biggs
fdb5e2aa47 Optimize away calls to cairo_paint_with_alpha() if the alpha value given is <= 0.
Add a new macro CAIRO_ALPHA_IS_ZERO.
2005-08-21 21:04:52 +00:00
Billy Biggs
89a4e13d73 Fix a typo in the last change. 2005-08-21 21:02:32 +00:00
Billy Biggs
16ce285251 Remove warning about fbCompositeTrans_0888xnx0888 not being tested on big-endian, it's not helpful at this point.
Only define _cairo_pixman_have_mmx for fbHaveMMX when the symbol will actually exist.
2005-08-21 20:49:47 +00:00
Billy Biggs
33599bc6b6 Fix for bug #4172:
Use _cairo_fixed_to_double and _cairo_double_to_fixed when converting between double and 16.16 fixed point. These functions round nicely, and solve some inconsistencies in rendering between my PPC and x86 machines. Thanks to Owen Taylor for suggesting the fix.
The above change does affect linear gradients slightly, but it seems worth it. Update the reference images to follow.
2005-08-21 14:10:39 +00:00
Owen Taylor
e3e7046cd7 Remove stray doc sentence that wasn't meant to be committed. 2005-08-21 12:13:17 +00:00
Billy Biggs
17845df95b Fix for bug #4165:
Use pointer comparison for coincident points to ensure a well-defined ordering, and avoid setting discard on both points. This fixes problems with my Mac's implementation of qsort. Final patch by Bertram Felgenhauer.
Update reference images after the change.
2005-08-21 11:41:44 +00:00
Owen Taylor
d93d56caef Check automake-<ver> if automake isn't sufficiently new. (#3593, Philip Van Hoof) 2005-08-21 11:23:58 +00:00
Owen Taylor
2396b502a5 When invoked as, say, ../autogen.sh, switch to the sourcedir to run the auto*. Based on corresponding code in GTK+'s autogen.sh. (#3402, Thomas Fitzsimmons)
Update from gtk-doc CVS, bringing in some minor output changes. (Eliminate the *** from the messages that don't indicate errors.)
Use += for EXTRA_DIST, since gtk-doc.make already defines it.
2005-08-21 09:57:19 +00:00
Owen Taylor
5462c8a585 Check for FT_Load_Sfnt_Table and disable the PDF/PS backends if not found. (#4144, Billy Biggs) 2005-08-21 09:27:52 +00:00
Owen Taylor
1ce62becd1 Fix the handling of backend->clone_similar == NULL. (#4161, Christian Biesinger) 2005-08-21 08:53:56 +00:00
Owen Taylor
8e9e40d752 Improve the documentation of internal functions. (Based on a patch from Christian Biesinger, #4162) 2005-08-21 08:24:41 +00:00
Owen Taylor
65f90287bb Recognize gentoo's (and maybe other distro's) modified server vendor string, where extra text is added to the upstream value. (#4068, reported by Doug Goldstein, others. Patch from Mart Raudsepp) 2005-08-21 08:11:24 +00:00
Owen Taylor
af614d2de6 Don't try to transform val->image when it is NULL. (#4163, Mathias Hasselmann) 2005-08-21 08:06:06 +00:00
Billy Biggs
f823dfd932 Fix for bug #4140:
Dereference the pixel value correctly on big endian systems.
2005-08-20 21:28:57 +00:00
Carl Worth
d1bdd1313e Fix for bug #4142:
Disable xlib tests on X servers without the Render, since they currently just crash there. A better long-term fix would be to do some useful tests in this case. Thanks to Tim Mooney.
2005-08-20 07:56:05 +00:00
Owen Taylor
4a7a09b4ab Include Xfree86-4.5 in the blacklist. (Reported by Andrew Benton) 2005-08-20 05:23:52 +00:00
Billy Biggs
b9da101879 Fix for bug #4096:
Improve the performance of png reading by adding special cases for fully transparent and fully opaque alpha, and using the standard optimization for 8-bit division by 255.
Add an INLINE macro for gcc.
2005-08-19 23:05:13 +00:00
Carl Worth
465ff18786 From Bertram Felgenhauer <int-e@gmx.de>:
Add regression test for bug #4137 (fixed earlier).
2005-08-19 16:37:56 +00:00
Billy Biggs
33b45c1572 No need to include cairo-pdf.h. 2005-08-19 14:42:57 +00:00
Carl Worth
3ec312f728 Fix for bug #4137:
Fix to round properly.
2005-08-19 14:37:42 +00:00
Owen Taylor
1f68f77a10 Ignore really small fonts, since size zero fonts give xpdf fits. (#2938) 2005-08-19 14:05:14 +00:00
Carl Worth
9d0211b263 Fix to actually test scaled_font->status instead of just having a comment that claims to test it. Thanks to Behdad Esfahbod <behdad@cs.toronto.edu>. 2005-08-19 13:00:23 +00:00
Owen Taylor
8eb912577b We need the call to fixup_unbounded when we optimize the RENDER operator to XCopyArea as well. 2005-08-19 12:55:00 +00:00
Carl Worth
7468ed35a1 Fixes for a general problem of which bug #4094 was a specific instance:
Don't change the status value if it already holds an error. This avoids destroying "first error" information and also avoids attempting to write read-only data, (eg. from nil objects).
Don't set an error on the same object if it is in an error state to begin with, just return immediately. This is intended to reduce (eventual) error prints to the first cause of an error for any given object, instead of a continual spew.
2005-08-19 12:08:42 +00:00
Carl Worth
2b72a4eee8 Fix for bug #2729:
Adjust negative offsets up to their equivalent positive value. Add error checking for dash values, (must each be non-negative and must not be all zero).
Add documentation.
Add new CAIRO_STATUS_INVALID_DASH.
Add dash-offfset-negative test from Owen.
churn
2005-08-19 12:02:14 +00:00
Kristian Høgsberg
a2e798b5a1 Add this missing fuction.
Document this funtion.
2005-08-19 10:36:43 +00:00
Carl Worth
b626dff5b9 Fix for bug #3915:
Add new NULL_POINTER nil pattern.
Check for surface == NULL and return a nil pattern.
Verify that the above fix works.
2005-08-19 07:39:47 +00:00
Carl Worth
435fb3c65f Fix for bug #4088:
New function to return the current nil pattern depending on the status.
Add missing early bailout on surface->status with error propagation to the pattern.
Related cleanups for cairo_pattern_t:
Don't check other->status since this is a static function.
Add missing early bailout on other->status.
Cleanup identifier names.
Track rename of nil patterns.
Don't call _cairo_error for pre-existing errors.
Take care to initialize some fields to that _cairo_pattern_release_surface will work even after an error.
Track rename of cairo_solid_pattern_nil to cairo_pattern_nil.
New test to ensure that a file-not-found error will propagate from a surface, through a pattern, and onto a cairo_t.
2005-08-18 23:10:37 +00:00
Carl Worth
0e56f2ea0a Suppress a pthread initialization error now that tests are linked with -lpthread. 2005-08-18 22:43:39 +00:00
Carl Worth
45cea5efc8 Fix documentation comment to use &amp; in place of &. 2005-08-18 22:31:04 +00:00
Billy Biggs
d809e82980 Special case alpha values of 0 and 0xff. (fbCompositeSrc_8888x8888mmx): Add an MMX implementation for a common operation when using pixman.
Prototype for the new function.
Call the new function where appropriate.
2005-08-18 19:13:06 +00:00
Billy Biggs
f5afeec18a Special case projective transforms so we can avoid doing the expensive 64-bit math. Unroll the bilinear interpolation loops for an extra boost. 2005-08-18 18:46:30 +00:00
Owen Taylor
5932a501ca Fix tests to just disable FreeType if a too-old FreeType is found, rather than erroring out. (#2298)
Reviewed by: krh
2005-08-18 17:22:23 +00:00
Owen Taylor
c1b5a19624 Fix offset passed in for source patterns. (#2333, Tim Rowley)
Fix font to Vera Sans rather than "Sans"
2005-08-18 17:19:54 +00:00
Carl Worth
8f93bcfa47 Update the roadmap. Remove difficulty rating from completed tasks. Note that PostScript/PDF is (grudgingly) done as far as 1.0 is concerned, but there is more work to completing this that is slipped beyond 1.0. Note that the deadlock bug is fixed as of 0.9.2. Update who is working on what for performance. Add some new detail for post-1.0 PostScript/PDF work. Slip the overlapping source/dest Render workaround past 1.0. 2005-08-18 17:11:42 +00:00
Owen Taylor
16f66dc314 Add a test for bug #2333 (Tim Rowley) 2005-08-18 16:22:23 +00:00
Owen Taylor
31341327bf Implement new equations for CLEAR and SOURCE CLEAR: (mask IN clip) ? 0 : dest SOURCE: (mask IN clip) ? src : dest That behave more like what people expect.
CLEAR and SOURCE are now bounded.
Assert that SOURCE and CLEAR aren't passed to these functions.
Assert that SOURCE and CLEAR aren't passed to these functions when there is a mask.
Do fixups for SOURCE and CLEAR as well as unbounded operators, since in the absence of a mask, we need SOURCE to work correctly (don't care about CLEAR)
_cairo_ft_font_show_glyphs) Consistently use CLEAR/TRANSPARENT (source doesn't matter) rather than SOURCE/TRANSPARENT when clearing rectangles.
src/cairo-xlib-surface.c src/cairo-surface.c: Use IN rather than SOURCE as an example of an unbounded operator in docs.
Remove CLEAR/SOURCE columns since they are no longer unbounded.
test/operator-clear.c test/operator-source Makefile.am: Add targetted tests of CLEAR/SOURCE.
2005-08-18 15:50:36 +00:00
Carl Worth
ff9654e677 Fix to not leak surface->cgImage on out-of-memory (thanks to Josh Aas <joshmoz@gmail.com>). 2005-08-18 14:34:10 +00:00
Carl Worth
a82cf0eb7b Fix to not right-shift a negative number when called with an argument of 0. 2005-08-18 09:46:20 +00:00
Carl Worth
7a9d207040 Disable not-yet-implemented quartz stuff. 2005-08-18 09:19:21 +00:00
Billy Biggs
93e521ce19 Add an autoconf-generated version file to advertise what cairo version the manual was generated for. Idea taken from the GTK+ documentation.
Include the version number, along with the title, in a bookinfo section.
Add the version.xml.in to the dist.
Ignore version.xml.
Generate doc/public/version.xml.
2005-08-18 08:28:08 +00:00
Carl Worth
3422d8760f Clear setgid bit on regular files prior to tarring up a release. 2005-08-18 08:22:29 +00:00
Billy Biggs
24ba58e7f5 For the source operator, the output should be cleared if the mask is zero. This fixes the MMX code to match the fbcompose code.
Fix a logic mistake that caused the MMX functions not to be used in many cases.
2005-08-18 06:01:40 +00:00
Kristian Høgsberg
260e8abfe0 Fix typo in freetype configure check. 2005-08-17 21:19:30 +00:00
Billy Biggs
4ebe0b63cc Only mangle exported symbols. This is sufficient and makes debugging a lot easier. 2005-08-17 21:14:02 +00:00
Kristian Høgsberg
75b0541bdf Try to use pkg-config to detect freetype2, then fall back to the existing freetype-config based check. 2005-08-17 15:57:45 +00:00
Carl Worth
639680e5fe Fixes for bug #4110:
Don't call _cairo_ft_unscaled_font_init_key in the from_face case, just clear filename and id instead. Initialize unscaled->base first so that initialization order matches the structure declaration order.
Fix to accept a NULL string and hash it identically to a zero-length string.
Add a test that calls cairo_ft_font_create_for_ft_face to demonstrate bug #4110.
2005-08-17 09:51:09 +00:00
Billy Biggs
f5f21a768d Fix the filter-nearest-offset test to actually test CAIRO_FILTER_NEAREST. 2005-08-16 21:04:02 +00:00
Billy Biggs
c892ee36d9 Fix a typo in the last commit. 2005-08-16 19:54:05 +00:00
Billy Biggs
0398085a6f Split the MMX code into a separate libtool library to avoid applying the MMX CFLAGS to all of the pixman code. Idea and code from Owen Taylor.
Update the mangling header file to include the MMX symbols.
2005-08-16 18:38:38 +00:00