On Tue, 11 Jun 2002, Nico Erfurth wrote: > It changes the way arrays/loops are handled. > 1.) If you pass in a array-reference, it will be not dereferenced anymore > I did this, so i can use a small Wrapper-class, which allows me to > tie a database-statement to an array, and returning the results row by > row, so i don't need to waste memory inside of mod_perl(Reading all > results at once).
This is incorrect. People like to do: my @loop = ( { row => 'foo' }, { row => 'bar'} ); $template->param(LOOP_ONE => \@loop); @loop = ( { row => 'bif' }, { row => 'bop'} ); $template->param(LOOP_TWO => \@loop); If you don't copy out the contents of @loop in the first param() call then you'll end up referencing the same array twice. This was actually a bug fixed in the early development of HTML::Template. > 2.) HTML::Template::Loop::output was changed, so it appends to a given > scalar-reference(the one from HTML::Template::output), this saves much > memory if you have a big loop and combine it with the print_to-option. That sounds interesting, but have done tests to confirm that it helps? I suspect that you'd have to choose a truely pathalogical data-set to see any improvement. > I send this patch to Sam Tregar weeks ago, and i never answered, but maybe > someone here thinks that it's worth to have a look at it, because AFAIK > many ppl use mod_perl+HTML::Template (i do it myself) ;) Sorry about that! I must have let it fall through the cracks. Did you send it directly to me or to the HTML::Tempate mailing-list? Things sent to the mailing-list tend to stay on my radar slightly longer. -sam