From bd06859267aae5ec7bdcd1ae65fe145ef63adc54 Mon Sep 17 00:00:00 2001 From: "lpsolit%gmail.com" <> Date: Mon, 26 Oct 2009 11:28:48 +0000 Subject: Bug 493242: UTF-8 characters in custom field names are mangled in show_activity.cgi - Patch by Vitaly Fedrushkov r/a=LpSolit --- Bugzilla/Bug.pm | 15 ++------------- Bugzilla/WebService/Bug.pm | 3 --- 2 files changed, 2 insertions(+), 16 deletions(-) (limited to 'Bugzilla') diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm index 528c6544c..456f77c9f 100644 --- a/Bugzilla/Bug.pm +++ b/Bugzilla/Bug.pm @@ -3133,14 +3133,7 @@ sub GetBugActivity { $suppwhere = "AND COALESCE(attachments.isprivate, 0) = 0"; } - my $query = " - SELECT COALESCE(fielddefs.description, " - # This is a hack - PostgreSQL requires both COALESCE - # arguments to be of the same type, and this is the only - # way supported by both MySQL 3 and PostgreSQL to convert - # an integer to a string. MySQL 4 supports CAST. - . $dbh->sql_string_concat('bugs_activity.fieldid', q{''}) . - "), fielddefs.name, bugs_activity.attach_id, " . + my $query = "SELECT fielddefs.name, bugs_activity.attach_id, " . $dbh->sql_date_format('bugs_activity.bug_when', '%Y.%m.%d %H:%i:%s') . ", bugs_activity.removed, bugs_activity.added, profiles.login_name FROM bugs_activity @@ -3163,7 +3156,7 @@ sub GetBugActivity { my $incomplete_data = 0; foreach my $entry (@$list) { - my ($field, $fieldname, $attachid, $when, $removed, $added, $who) = @$entry; + my ($fieldname, $attachid, $when, $removed, $added, $who) = @$entry; my %change; my $activity_visible = 1; @@ -3180,9 +3173,6 @@ sub GetBugActivity { } if ($activity_visible) { - # This gets replaced with a hyperlink in the template. - $field =~ s/^Attachment\s*// if $attachid; - # Check for the results of an old Bugzilla data corruption bug $incomplete_data = 1 if ($added =~ /^\?/ || $removed =~ /^\?/); @@ -3205,7 +3195,6 @@ sub GetBugActivity { $operation->{'who'} = $who; $operation->{'when'} = $when; - $change{'field'} = $field; $change{'fieldname'} = $fieldname; $change{'attachid'} = $attachid; $change{'removed'} = $removed; diff --git a/Bugzilla/WebService/Bug.pm b/Bugzilla/WebService/Bug.pm index 44382e79f..6a3e93519 100644 --- a/Bugzilla/WebService/Bug.pm +++ b/Bugzilla/WebService/Bug.pm @@ -220,9 +220,6 @@ sub history { $change->{added} = $self->type('string', $change->{added}); $change->{field_name} = $self->type('string', delete $change->{fieldname}); - # This is going to go away in the future from GetBugActivity - # so we shouldn't put it in the API. - delete $change->{field}; push (@{$bug_history{changes}}, $change); } -- cgit v1.2.3-24-g4f1b