aboutsummaryrefslogtreecommitdiffstats
path: root/www/xulrunner
diff options
context:
space:
mode:
authorahze <ahze@FreeBSD.org>2006-12-16 06:14:33 +0800
committerahze <ahze@FreeBSD.org>2006-12-16 06:14:33 +0800
commit010c725af0907a54f07b95669042436edacd666f (patch)
tree00398f194347f652dc6d20a2f8ee194213a1880e /www/xulrunner
parentef2b155b373ec84567107ff0b6a0204c0101de42 (diff)
downloadfreebsd-ports-gnome-010c725af0907a54f07b95669042436edacd666f.tar.gz
freebsd-ports-gnome-010c725af0907a54f07b95669042436edacd666f.tar.zst
freebsd-ports-gnome-010c725af0907a54f07b95669042436edacd666f.zip
Fix a double-free while performing print operations which could trigger a
segmentation fault if malloc debugging was enabled. Submitted by: marcus Reported by: dougb
Diffstat (limited to 'www/xulrunner')
-rw-r--r--www/xulrunner/Makefile2
-rw-r--r--www/xulrunner/files/patch-gfx_src_ps_nsFontMetricsPS.cpp26
2 files changed, 27 insertions, 1 deletions
diff --git a/www/xulrunner/Makefile b/www/xulrunner/Makefile
index f809c09324d6..199dec56c613 100644
--- a/www/xulrunner/Makefile
+++ b/www/xulrunner/Makefile
@@ -7,7 +7,7 @@
PORTNAME= xulrunner
PORTVERSION= 1.8.0.4
-PORTREVISION?= 4
+PORTREVISION?= 5
CATEGORIES?= www devel
MASTER_SITES= ${MASTER_SITE_MOZILLA}
MASTER_SITE_SUBDIR= xulrunner/releases/${PORTVERSION}/source/
diff --git a/www/xulrunner/files/patch-gfx_src_ps_nsFontMetricsPS.cpp b/www/xulrunner/files/patch-gfx_src_ps_nsFontMetricsPS.cpp
new file mode 100644
index 000000000000..07014d87fa82
--- /dev/null
+++ b/www/xulrunner/files/patch-gfx_src_ps_nsFontMetricsPS.cpp
@@ -0,0 +1,26 @@
+--- gfx/src/ps/nsFontMetricsPS.cpp.orig Fri Dec 15 01:42:25 2006
++++ gfx/src/ps/nsFontMetricsPS.cpp Fri Dec 15 01:41:20 2006
+@@ -1037,8 +1037,10 @@ nsFontPSXft::Init(nsXftEntry* aEntry,
+
+ nsFontPSXft::~nsFontPSXft()
+ {
+- if (mEntry->mFace)
++ if (mEntry->mFace) {
+ FT_Done_Face(mEntry->mFace);
++ mEntry->mFace = nsnull;
++ }
+
+ if (FT_Done_FreeType(mFreeTypeLibrary))
+ return;
+@@ -2327,8 +2329,10 @@ nsXftType1Generator::Init(nsXftEntry* aE
+
+ nsXftType1Generator::~nsXftType1Generator()
+ {
+- if (mEntry->mFace)
++ if (mEntry->mFace) {
+ FT_Done_Face(mEntry->mFace);
++ mEntry->mFace = nsnull;
++ }
+
+ if (FT_Done_FreeType(mFreeTypeLibrary))
+ return;