summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2005-11-21 10:50:20 +0000
committerCarl Worth <cworth@cworth.org>2005-11-21 10:50:20 +0000
commit674ed1932e2264493e5f746989f02a6f2e0259a9 (patch)
treebf701ed8367fcbf24ac83eab43a56eda8136b929
parent345ba540b1977db7e1a31f88aa8c8b2cdb32f11d (diff)
Add reminder to fix all memory leaks (as determined by the test suite) before release 1.2.0.
Patch leak of patterns as noted in bug #5100 (thanks to Richard Stellingwerff <remenic@gmail.com>).
-rw-r--r--ChangeLog9
-rw-r--r--ROADMAP4
-rw-r--r--src/cairo-gstate.c4
3 files changed, 17 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 51b19d49b..3912cb898 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2005-11-21 Carl Worth <cworth@cworth.org>
+
+ * ROADMAP: Add reminder to fix all memory leaks (as determined by
+ the test suite) before release 1.2.0.
+
+ * src/cairo-gstate.c: (_cairo_gstate_stroke),
+ (_cairo_gstate_fill): Patch leak of patterns as noted in bug #5100
+ (thanks to Richard Stellingwerff <remenic@gmail.com>).
+
2005-11-18 Carl Worth <cworth@cworth.org>
* src/pixman-remap.h: Remove spurios INT_ prefixes which break the
diff --git a/ROADMAP b/ROADMAP
index 0a8c0eed7..1c5e57870 100644
--- a/ROADMAP
+++ b/ROADMAP
@@ -47,6 +47,10 @@ The release won't happen without these being complete.
e. cairo_mask
+ E. Fix memory leaks
+ ----------------
+ 1. Ensure 'make check-valgrind' passes with no leaks
+
cairo 1.2.0 desired features (targeted for 2005-11-15)
If these aren't ready, they won't be in the release.
[There are some bugs that need to be added here, and
diff --git a/src/cairo-gstate.c b/src/cairo-gstate.c
index 01f087dfb..02fe33780 100644
--- a/src/cairo-gstate.c
+++ b/src/cairo-gstate.c
@@ -1190,6 +1190,8 @@ _cairo_gstate_stroke (cairo_gstate_t *gstate, cairo_path_fixed_t *path)
&gstate->ctm_inverse,
gstate->tolerance,
gstate->antialias);
+
+ _cairo_pattern_fini (&source_pattern.base);
return status;
@@ -1532,6 +1534,8 @@ _cairo_gstate_fill (cairo_gstate_t *gstate, cairo_path_fixed_t *path)
gstate->fill_rule,
gstate->tolerance,
gstate->antialias);
+
+ _cairo_pattern_fini (&pattern.base);
return status;
}