diff options
author | Byron Jones <bjones@mozilla.com> | 2013-09-09 08:23:58 +0200 |
---|---|---|
committer | Byron Jones <bjones@mozilla.com> | 2013-09-09 08:23:58 +0200 |
commit | c9cdd836907191109c99e2680efe6aa14e0e8df0 (patch) | |
tree | cc5c2c4cb30f0eaabce583d37dcc36dc45cc3cde /extensions/Push | |
parent | 619707466974c0a6fbf5de98374e38ad7d5f5937 (diff) | |
download | bugzilla-c9cdd836907191109c99e2680efe6aa14e0e8df0.tar.gz bugzilla-c9cdd836907191109c99e2680efe6aa14e0e8df0.tar.xz |
Bug 912540: the push extension alters the flag_end_of_update hook's args for all extensions not just itself
Diffstat (limited to 'extensions/Push')
-rw-r--r-- | extensions/Push/Extension.pm | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/extensions/Push/Extension.pm b/extensions/Push/Extension.pm index ff7f21295..d38dcb032 100644 --- a/extensions/Push/Extension.pm +++ b/extensions/Push/Extension.pm @@ -223,8 +223,6 @@ sub _morph_flag_updates { my @removed = _morph_flag_update($args->{'old_flags'}); my @added = _morph_flag_update($args->{'new_flags'}); - delete $args->{'old_flags'}; - delete $args->{'new_flags'}; my $changes = {}; foreach my $ra (@removed, @added) { @@ -251,7 +249,8 @@ sub _morph_flag_updates { sub _morph_flag_update { my ($values) = @_; my @result; - foreach my $change (@$values) { + foreach my $orig_change (@$values) { + my $change = $orig_change; # work on a copy $change =~ s/^[^:]+://; my $requestee = ''; if ($change =~ s/\(([^\)]+)\)$//) { @@ -371,6 +370,7 @@ sub flag_end_of_update { return unless $self->_enabled; _morph_flag_updates($args); $self->_object_modified($args); + delete $args->{changes}; } # comments in bugzilla 4.0 doesn't aren't included in the bug_end_of_* hooks, |