summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorlpsolit%gmail.com <>2008-01-04 01:48:23 +0100
committerlpsolit%gmail.com <>2008-01-04 01:48:23 +0100
commit14d8113353b88817bee723c040769ed183e4f71e (patch)
treebd56b3a2de1554a1b467f6bdaca97590e8261636
parentbc799da184c1dca11311333ce895ed5a0b16f473 (diff)
downloadbugzilla-14d8113353b88817bee723c040769ed183e4f71e.tar.gz
bugzilla-14d8113353b88817bee723c040769ed183e4f71e.tar.xz
Bug 410660: Updating a bug fails if there is a multi-select custom field - Patch by Ronaldo Maia <romaia@async.com.br> r/a=LpSolit
-rwxr-xr-xBugzilla/Bug.pm11
1 files changed, 9 insertions, 2 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm
index 5244a21b3..bfd110ad0 100755
--- a/Bugzilla/Bug.pm
+++ b/Bugzilla/Bug.pm
@@ -1406,8 +1406,15 @@ sub _set_global_validator {
my ($self, $value, $field) = @_;
my $current = $self->$field;
my $privs;
- $current = $current->id if ref $current && $current->isa('Bugzilla::Object');
- $value = $value->id if ref $value && $value->isa('Bugzilla::Object');
+
+ if (ref $current && ref($current) ne 'ARRAY'
+ && $current->isa('Bugzilla::Object')) {
+ $current = $current->id ;
+ }
+ if (ref $value && ref($value) ne 'ARRAY'
+ && $value->isa('Bugzilla::Object')) {
+ $value = $value->id ;
+ }
my $can = $self->check_can_change_field($field, $current, $value, \$privs);
if (!$can) {
if ($field eq 'assigned_to' || $field eq 'qa_contact') {