[Rt-commit] [svn] r741 - rt/branches/rt-3.3/lib/RT

autrijus at pallas.eruditorum.org autrijus at pallas.eruditorum.org
Mon Apr 26 14:48:53 EDT 2004


Author: autrijus
Date: Mon Apr 26 14:48:52 2004
New Revision: 741

Modified:
   rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
Log:
* freeze() forgot to take account of the look_at_* indices, resulting
  in incorrect object after thaw()ing


Modified: rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm
==============================================================================
--- rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm	(original)
+++ rt/branches/rt-3.3/lib/RT/Tickets_Overlay.pm	Mon Apr 26 14:48:52 2004
@@ -978,14 +978,20 @@
 Returns a frozen string suitable for handing back to ThawLimits.
 
 =cut
+
+sub _FreezeThawKeys {
+    'TicketRestrictions',
+    'restriction_index',
+    'looking_at_effective_id',
+    'looking_at_type'
+}
+
 # {{{ sub FreezeLimits
 
 sub FreezeLimits {
 	my $self = shift;
 	require FreezeThaw;
-	return (FreezeThaw::freeze($self->{'TicketRestrictions'},
-				   $self->{'restriction_index'}
-				  ));
+	return (FreezeThaw::freeze(@{$self}{$self->_FreezeThawKeys}));
 }
 
 # }}}
@@ -1012,9 +1018,7 @@
 	#We don't need to die if the thaw fails.
 	
 	eval {
-		($self->{'TicketRestrictions'},
-		$self->{'restriction_index'}
-		) = FreezeThaw::thaw($in);
+		@{$self}{$self->_FreezeThawKeys} = FreezeThaw::thaw($in);
 	};
 	$RT::Logger->error( $@ ) if $@;
 


More information about the Rt-commit mailing list