Bug 22429: Infinite loop in patron card printing
authorDavid Cook <dcook@prosentient.com.au>
Mon, 4 Mar 2019 06:43:29 +0000 (17:43 +1100)
committerLucas Gass <lucas@bywatersolutions.com>
Tue, 19 Mar 2019 23:07:15 +0000 (23:07 +0000)
commitd272137c4f764f8a21f02f56c4dba0ad315ec4aa
treed85f929342d3fca70d467cc7442422ee1ddd60d4
parentbc429b5dd11a9a93b96770233d727ca33687b75b
Bug 22429: Infinite loop in patron card printing

Text fields in Patron Card Text Layouts can contain regular
expression metacharacters, which - instead of being treated as
literal values - are interpreted and prevent line wrapping. This
causes the process to get stuck in an infinite loop, which keeps
running even after the web server has timed out (at least when
using CGI).

This patch escapes the relevant input from the text field so the
regular expression substitution treats characters as literals
instead of as metacharacters.

Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
(cherry picked from commit 3bd900496690375b2b711743ffaa57371388f687)
Signed-off-by: Martin Renvoize <martin.renvoize@ptfs-europe.com>
(cherry picked from commit 296f6756ab51103d0e104e16cff312d28a8fd165)

Signed-off-by: Lucas Gass <lucas@bywatersolutions.com>
C4/Patroncards/Patroncard.pm