aboutsummaryrefslogtreecommitdiff
path: root/www/elinks
diff options
context:
space:
mode:
authorEdwin Groothuis <edwin@FreeBSD.org>2003-10-08 03:44:49 +0000
committerEdwin Groothuis <edwin@FreeBSD.org>2003-10-08 03:44:49 +0000
commite2e2d02ab3092ebad528afab206e7e47335fa4e9 (patch)
tree4d441b3dfb32647a56bb347e2fa2faa94cea7d84 /www/elinks
parenta758aa5732b4ebcc6590eb2e64ce018476a9520a (diff)
downloadports-e2e2d02ab3092ebad528afab206e7e47335fa4e9.tar.gz
ports-e2e2d02ab3092ebad528afab206e7e47335fa4e9.zip
Port update: www/elinks Elinks crashes on frameset webpages
I noticed elinks crashes most of the times after parsing a web page which includes framesets (try loading a frameset with for example rows="200,*"). This occurs because it tries to free some arbitrary block of memory without checking if the previous functions returned errors. PR: ports/56668 Submitted by: Mário Freitas <sub_0@netcabo.pt> Approved by: Jason Harris <jharris@widomaker.com>
Notes
Notes: svn path=/head/; revision=90592
Diffstat (limited to 'www/elinks')
-rw-r--r--www/elinks/Makefile2
-rw-r--r--www/elinks/files/patch-src::document::html::parser.c13
2 files changed, 14 insertions, 1 deletions
diff --git a/www/elinks/Makefile b/www/elinks/Makefile
index b73d69a2fb24..988be553f813 100644
--- a/www/elinks/Makefile
+++ b/www/elinks/Makefile
@@ -7,7 +7,7 @@
PORTNAME= elinks
PORTVERSION= 0.4.2
-PORTREVISION= 1
+PORTREVISION= 2
CATEGORIES= www
MASTER_SITES= http://elinks.or.cz/download/
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} ${DISTNAME}${EXTRACT_SUFX}.asc
diff --git a/www/elinks/files/patch-src::document::html::parser.c b/www/elinks/files/patch-src::document::html::parser.c
new file mode 100644
index 000000000000..c90bd55328ba
--- /dev/null
+++ b/www/elinks/files/patch-src::document::html::parser.c
@@ -0,0 +1,13 @@
+--- src/document/html/parser.c.orig Sat Sep 6 02:09:37 2003
++++ src/document/html/parser.c Sat Sep 6 02:10:14 2003
+@@ -2330,8 +2330,8 @@
+ parse_frame_widths(d, y, HTML_FRAME_CHAR_HEIGHT, &fp.yw, &fp.y);
+ fp.parent = html_top.frameset;
+ if (fp.x && fp.y) html_top.frameset = special_f(ff, SP_FRAMESET, &fp);
+- mem_free(fp.xw);
+- mem_free(fp.yw);
++ if (fp.x) mem_free(fp.xw);
++ if (fp.y) mem_free(fp.yw);
+
+ free_cd:
+ mem_free(c);