[Jifty-commit] r4037 - in Jifty-DBI/trunk: lib/Jifty/DBI

jifty-commit at lists.jifty.org jifty-commit at lists.jifty.org
Mon Sep 3 10:56:16 EDT 2007


Author: sterling
Date: Mon Sep  3 10:56:15 2007
New Revision: 4037

Modified:
   Jifty-DBI/trunk/   (props changed)
   Jifty-DBI/trunk/lib/Jifty/DBI/Collection.pm

Log:
 r11142 at dynpc145:  andrew | 2007-09-03 09:55:54 -0500
 Make sure limit() does not modify arrays passed in to the "value" parameter.


Modified: Jifty-DBI/trunk/lib/Jifty/DBI/Collection.pm
==============================================================================
--- Jifty-DBI/trunk/lib/Jifty/DBI/Collection.pm	(original)
+++ Jifty-DBI/trunk/lib/Jifty/DBI/Collection.pm	Mon Sep  3 10:56:15 2007
@@ -982,11 +982,13 @@
     # make passing in an object DTRT
     my $value_ref = ref( $args{value} );
     if ( $value_ref ) {
-        if ( ( $value_ref ne 'ARRAY' ) && 
-             $args{value}->isa('Jifty::DBI::Record') ) {
+        if ( ( $value_ref ne 'ARRAY' ) 
+                && $args{value}->isa('Jifty::DBI::Record') ) {
             $args{value} = $args{value}->id;
         }
         elsif ( $value_ref eq 'ARRAY' ) {
+            # Don't modify the original reference, it isn't polite
+            $args{value} = [ @{$args{value}} ];
             map {$_ = ( ( ref $_ && $_->isa('Jifty::DBI::Record') ) ?
                         ( $_->id ) : $_ ) } @{$args{value}};
         }


More information about the Jifty-commit mailing list