Chris Wilson
6f2d4f5b2a
image: Propagate failure from pixman_image_fill_boxes().
2010-05-04 18:26:06 +01:00
Chris Wilson
ded7be0b9c
test/user-font-rescale: Use after free and check for memfault.
2010-05-04 18:26:06 +01:00
Chris Wilson
b0052c5215
test/bitmap-font: Propagate memfault
2010-05-04 18:26:00 +01:00
Chris Wilson
9187c75327
test/bitmap-font: Check for memfault error
2010-05-04 13:28:37 +01:00
Chris Wilson
0fced92792
test/user-font-proxy: Check we install user data on the scaled font
2010-05-04 13:28:37 +01:00
Chris Wilson
38188961b9
image: Check for pixman image allocation failure during glyphs
2010-05-04 13:28:37 +01:00
Chris Wilson
4a181ebac4
pdf: Cleanup local reference to source on error paths.
2010-05-04 13:28:37 +01:00
Chris Wilson
ba48edcd86
ps: Always cleanup used font subsets.
2010-05-04 13:28:37 +01:00
Chris Wilson
9a0958be01
test: Cleanup after failed pthread_join().
2010-05-04 13:28:36 +01:00
Chris Wilson
08b9984da9
image: Replace assert with error return
...
It is possible to encounter an allocation failure here since we may have
tweaked the clip since the last evaluation of the clip region.
2010-05-04 13:28:36 +01:00
Chris Wilson
2c68fcace4
test: Embed the list pointer into cairo_test_t
...
Reduce the amount of output printed by leak-detectors when a test
crashes.
2010-05-04 13:28:36 +01:00
Chris Wilson
7002b82472
xlib: Don't delete gradients in unbounded fixup code
...
The fix is ugly, but for now it works.
2010-05-04 13:53:02 +02:00
Chris Wilson
af26560f25
test: Improve memfault behaviour.
...
Various minor tweaks to convert asserts into error returns and to
improve error checking on intermediate surfaces.
2010-05-03 19:21:59 +01:00
Chris Wilson
c549203c8d
scaled-font: Check for an error return when retrieving the implementation
2010-05-03 19:21:18 +01:00
Chris Wilson
c93e6f014d
paginated: propagate malloc failures more cleanly.
2010-05-03 19:20:42 +01:00
Chris Wilson
8e9fd9c017
image: A few missing tests for malloc failure
2010-05-03 19:20:07 +01:00
Chris Wilson
87781ffbd9
ft: Convert an assert into an unlikely error return.
...
The assert depends upon good behaviour from fontconfig, which is no
guaranteed under memfault, so return an error instead.
2010-05-03 19:18:49 +01:00
Benjamin Otte
5672b7a18a
fallback: get src_x/y variables right when compositing traps
2010-05-03 13:37:19 +02:00
Dave Yeo
c10a5a9fb0
os2: Fix get_extents() segfaulting.
...
bed2701e1c removed one line too much.
2010-05-03 10:20:51 +02:00
Benjamin Otte
9df81fe4d3
boilerplate: don't compile pdf test code when pdf is not tested
...
Avoids gcc warnings when libpoppler version isn't good enough.
2010-05-02 20:00:08 +02:00
Benjamin Otte
358f57c876
image: remove useless optimization
...
The optimization is done way smarter inside
_cairo_matrix_transform_bounding_box()
2010-04-30 23:35:48 +02:00
Benjamin Otte
94aa6d24b6
fallback: Create pixman image for correct rectangle
...
This was most prominently shown by the a1-image-sample test, but
multiple tests exposed the problem with the xlib-fallback code.
2010-04-30 23:35:48 +02:00
Carlos Garcia Campos
41fecf8e66
[configure] Bump poppler dependency to 0.13.3
2010-04-30 21:20:11 +02:00
Benjamin Otte
3294daf423
Create cleared surface instead of a scratch surface in clone_similar()
...
A cleared surface is needed when playing back a recording surface that
has semi-transparent operations.
As this only affects surface types where scratch surfaces aren't already
cleared (ie it affected xlib but not image), the effect was only visible
for those backends.
This should not cause any performance regressions as the other backends
set surface->clear = TRUE when creating the scratch surface, so the
clear operation is effectively a no-op.
Covered by the existing pdf-surface-source and svg-surface-source tests.
2010-04-30 20:19:08 +02:00
Carlos Garcia Campos
0aeb612d2f
[test] Update pdf reference image for text-rotate
2010-04-30 20:00:52 +02:00
Carlos Garcia Campos
fe28444647
[test] Update pdf reference image for surface-pattern-scale-down
2010-04-30 20:00:52 +02:00
Carlos Garcia Campos
dba6f23318
[test] Update pdf reference image for leaky-dashed-rectangle
2010-04-30 20:00:52 +02:00
Carlos Garcia Campos
6b81187ac4
[test] Update pdf reference images for clip-operator
2010-04-30 20:00:52 +02:00
Chris Wilson
b485ae5b90
atomic: Add Andrea's copyright notice
...
Note Andrea's copyright for his contribution of platform agnostic
fallbacks and the implementation for MacOS/X.
2010-04-30 14:14:01 +01:00
Chris Wilson
4ee5119a34
test: Expand pthread-show-text to cover all surfaces.
...
In a similar fashion to pthread-same-source and pthread-similar, check
that the texting handling is thread-safe for all surface and font
backends.
2010-04-30 13:00:05 +01:00
Chris Wilson
c6dc8ad7dc
Revert "paginated: Call surface finish explicitly on recording surface"
...
This reverts commit 5fc04bba9f .
Whilst this fixes the self-referential reference leak, it however
introduces use-after-finish into normal behaviour. Close, but not quite.
2010-04-30 12:39:59 +01:00
Chris Wilson
b972669c9a
boilerplate: Fix use after free from 3ae5723
...
If we want to access the surface during the cleanup, we must hold our
own reference to it. Make it so for the forced finish of the recording
surface.
2010-04-30 12:39:59 +01:00
Chris Wilson
905c345df1
recording: Check that we do not use a finished recording surface.
...
User paranoia - as the replay is exposed to the user it is convenient to
add the finish check in the core replay function so that we gain a
paranoia check for the internal paths as well.
2010-04-30 10:31:50 +01:00
Chris Wilson
5fe7c5842f
pdf; Emit subsurface patterns natively.
...
Encode subsurface patterns into the PDF stream natively (when possible),
similar to the cairo-ps backend.
2010-04-30 10:16:24 +01:00
Chris Wilson
8ded35fd69
ps: Enable native encoding of subsurface patterns.
...
Carefully handle subsurfaces of a recording surface through the analysis
and paginated surfaces so that we can generate a native pattern for the
vector backends, demonstrated by the PostScript backend.
Nothing remarkable, just a lot of bookkeeping to track the wrapped
surface types and to apply the correct offsets when generating the
subsurface pattern.
2010-04-30 10:16:24 +01:00
Chris Wilson
5fc04bba9f
paginated: Call surface finish explicitly on recording surface
...
During show_page() when we destroy the recording surface after emitting
the page, ensure that we actually call cairo_surface_finish() to dispose
of any self-referential reference leaks.
2010-04-30 10:16:23 +01:00
Chris Wilson
3ae5723464
boilerplate: Ensure that the recording surfaces are finished.
...
Be paranoid and explicitly call finish to cleanup self-referential leaks
when using paginated/recording surfaces.
2010-04-30 10:16:23 +01:00
Chris Wilson
f08cc311af
boilerplate: Destroy the redundant image reference
...
When using a script surface to record the recording surface, we replace
the local reference to the image surface.
2010-04-30 10:16:23 +01:00
Chris Wilson
ab2776c9a1
snapshot: Attach the backend generated snapshot to the target
...
Cache the result of snapshotting using the backend vfunc in the normal
manner by attaching the snapshot to the target. This should reduce
resource usage in these cases.
2010-04-30 10:16:23 +01:00
Chris Wilson
07122f37d1
surface: Convert snapshots from an array to a double-linked list.
...
Saves the memory allocation for the array, and the overhead of
maintaining the area for both insertions and more importantly deletes.
2010-04-30 10:16:23 +01:00
Chris Wilson
4cb733c285
image: Simplify translation of pattern matrix for composite_trapezoids()
2010-04-30 10:16:23 +01:00
Chris Wilson
3940b0e91c
subsurface: s/region/rectangle/
...
After a renewed discussion, it was pointed out that the API in Cairo was
not restrictive and by using doubles we would be consisted with the rest
of the API. Thus prompting the name change to
cairo_surface_create_for_rectangle()
similar to cairo_rectangle().
And document the public API.
2010-04-30 10:16:06 +01:00
Chris Wilson
4b6fa8d5a7
test: Remove group-unaligned.*new.png
...
Entirely misleading, looks like PDF is behaving the same as image and
this remnant was thus giving the wrong impression.
2010-04-30 09:47:51 +01:00
Benjamin Otte
e3f990d841
test: Update reference images for last checkin
...
Both tests now pas on all backends I tested: test, image, xlib and
recording
2010-04-29 22:35:38 +02:00
Benjamin Otte
6d36f06751
image: Round down when rendering antialiased boxes
...
Matches Pixman's output when going via pixman_rasterize_trapezoid()
2010-04-29 22:34:28 +02:00
Benjamin Otte
95179a5de9
Remove excessive semicolons
...
s/;;/;/ basically
2010-04-29 20:45:23 +02:00
Benjamin Otte
5d07307b69
xlib: Don't modify variables that are needed later
...
In the XCopyArea region code, don't modify src_x/y when they are later
used in the unbounded fixup code.
Exposed by composite-integer-translate-source test.
2010-04-29 18:20:59 +02:00
Benjamin Otte
90160deb2a
xlib: Constify some function arguments
2010-04-29 18:20:44 +02:00
Benjamin Otte
4da71d1a01
xlib: remove unused code
2010-04-29 18:11:54 +02:00
Benjamin Otte
758ffadcb1
fallback: Only do _fill/compsoite_rectangles on bounded source
...
For unbounded sources, these optimizations fail to take into account the
regions outside the source.
2010-04-29 16:54:09 +02:00