summaryrefslogtreecommitdiff
path: root/src/cairo-bentley-ottmann.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2009-04-16 17:19:12 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2009-04-23 09:22:51 +0100
commit1ae2ddc1dd4c90d50b8c57c4de677f8ab96b1fa2 (patch)
tree3be2da997e6f7da5df94472e0c700bb5abe00086 /src/cairo-bentley-ottmann.c
parent817589e1967ebdd5e5bda1781eb76010fd8c37dc (diff)
downloadcairo-1ae2ddc1dd4c90d50b8c57c4de677f8ab96b1fa2.tar.gz
[memfault] Manually inject faults when using stack allocations
Ensure that no assumptions are made that a small allocation will succeed by manually injecting faults when we may be simply allocating from an embedded memory pool. The main advantage in manual fault injection is improved code coverage - from within the test suite most allocations are handled by the embedded memory pools.
Diffstat (limited to 'src/cairo-bentley-ottmann.c')
-rw-r--r--src/cairo-bentley-ottmann.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/cairo-bentley-ottmann.c b/src/cairo-bentley-ottmann.c
index 81eed1d67..1d59d7038 100644
--- a/src/cairo-bentley-ottmann.c
+++ b/src/cairo-bentley-ottmann.c
@@ -1660,6 +1660,9 @@ _cairo_bentley_ottmann_tessellate_polygon (cairo_traps_t *traps,
if (0 == polygon->num_edges)
return CAIRO_STATUS_SUCCESS;
+ if (CAIRO_INJECT_FAULT ())
+ return _cairo_error (CAIRO_STATUS_NO_MEMORY);
+
has_limits = _cairo_traps_get_limit (traps, &limit);
edges = stack_edges;