diff options
author | Karl Berry <karl@freefriends.org> | 2009-08-12 13:31:23 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-08-12 13:31:23 +0000 |
commit | 32fc32f88556b0b313b8bc069e93b42bc7bd653d (patch) | |
tree | 7db63a3e0a83d4ec616ad22cda839066e5c3310c /Build/source | |
parent | 5907ad3dd66cbf3168c378d3d1df5aab3c82a01c (diff) |
check for pool overflow in xsubstring; Vincent Danen mail to tex-live, 4 Aug 2009 14:42:29, test case in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=520920
git-svn-id: svn://tug.org/texlive/trunk@14628 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source')
-rw-r--r-- | Build/source/texk/web2c/ChangeLog | 7 | ||||
-rw-r--r-- | Build/source/texk/web2c/bibtex.ch | 9 |
2 files changed, 16 insertions, 0 deletions
diff --git a/Build/source/texk/web2c/ChangeLog b/Build/source/texk/web2c/ChangeLog index fe37d6de6cf..417d001b191 100644 --- a/Build/source/texk/web2c/ChangeLog +++ b/Build/source/texk/web2c/ChangeLog @@ -1,3 +1,10 @@ +2009-08-12 Karl Berry <karl@tug.org> + + * bibtex.ch (xsubstring): forgot to check for pool_overflow. + See test case and bug report at + http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=520920. + Vincent Danen mail to tex-live, 4 Aug 2009 14:42:29. + 2009-07-14 Peter Breitenlohner <peb@mppmu.mpg.de> * Makefile.am (check_PROGRAMS): pltotf and tftopl are required diff --git a/Build/source/texk/web2c/bibtex.ch b/Build/source/texk/web2c/bibtex.ch index 972667faf81..8e2dab66809 100644 --- a/Build/source/texk/web2c/bibtex.ch +++ b/Build/source/texk/web2c/bibtex.ch @@ -1134,6 +1134,15 @@ while ((ex_buf_xptr < ex_buf_ptr) and @y @z +% Forgot to check for pool overflow here. Triggered by test case linked +% from http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=520920. +@x +while (sp_ptr < sp_end) do {shift the substring} +@y +str_room(sp_end - sp_ptr); +while (sp_ptr < sp_end) do {shift the substring} +@z + % [459] Eliminate unreferenced statement label, because `undefined' is % now a constant expression that is not evaluated at the Web level. If % this label were ever required, it could be replaced by the constant |