From 0d90d9eca71347143bafbefaf8cd6d0270576e63 Mon Sep 17 00:00:00 2001 From: Byron Jones Date: Tue, 20 Aug 2013 11:35:37 +0800 Subject: Bug 906597: loading a bug with an inactive-but-set tracking flag throws: Can't call method 'sortkey' on an undefined value --- extensions/TrackingFlags/lib/Flag.pm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'extensions/TrackingFlags') diff --git a/extensions/TrackingFlags/lib/Flag.pm b/extensions/TrackingFlags/lib/Flag.pm index 54b2afcf7..f35b661eb 100644 --- a/extensions/TrackingFlags/lib/Flag.pm +++ b/extensions/TrackingFlags/lib/Flag.pm @@ -186,10 +186,15 @@ sub match { $params->{'id'} = \@flag_ids; } - my $flags = $class->SUPER::match(@_); + # We need to return inactive flags if a value has been set + my $is_active_filter = delete $params->{is_active}; + my $flags = $class->SUPER::match($params); preload_all_the_things($flags, { bug_id => $bug_id }); + if ($is_active_filter) { + $flags = [ grep { $_->is_active || exists $_->{bug_flag} } @$flags ]; + } return [ sort { $a->sortkey <=> $b->sortkey } @$flags ]; } -- cgit v1.2.3-24-g4f1b