From: Sven Schöling Date: Thu, 25 Feb 2016 14:51:05 +0000 (+0100) Subject: Endlosschleife im PDF-Tabellenmodul und damit im PDF-Export gefixt X-Git-Tag: release-3.5.4~75^2~10 X-Git-Url: http://wagnertech.de/git?a=commitdiff_plain;h=e03f83f29f89260c7275a00775be532ccde4e99b;p=kivitendo-erp.git Endlosschleife im PDF-Tabellenmodul und damit im PDF-Export gefixt Wenn die Tabelle zu breit wird und dann irgendwann nicht einmal mehr ein Wort in eine Zeile passt, dann muss das Wort trotzdem gesetzt werden; andernfalls würde das PDF::Table-Modul in einer Endlosschleife enden. Fix für Bug 863. Reimplementiert commit 23223ef4302931a6a141c659bfda7ef6c7546b77 --- diff --git a/modules/override/PDF/Table.pm b/modules/override/PDF/Table.pm index 990a2c6c8..57372487c 100755 --- a/modules/override/PDF/Table.pm +++ b/modules/override/PDF/Table.pm @@ -211,8 +211,12 @@ sub text_block } # Lets take from paragraph as many words as we can put into $width - $indent; - while ( @paragraph and $text_object->advancewidth( join("\x20", @line)."\x20" . $paragraph[0]) + - $line_width < $width ) + # Always take at least one word; otherwise we'd end up in an infinite loop. + while ( !scalar(@line) || ( + @paragraph && ( + $text_object->advancewidth( join("\x20", @line)."\x20" . $paragraph[0]) + $line_width < $width + ) + )) { push(@line, shift(@paragraph)); }