From: mkanat%bugzilla.org <> Date: Mon, 20 Nov 2006 12:25:09 +0000 (+0000) Subject: Bug 361140: Upgrades from versions with enums fail UTF-8 conversion X-Git-Tag: bugzilla-2.23.4~205 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b4005dc7da0245a2bdeaa0a4d23f3e0565b2cecd;p=thirdparty%2Fbugzilla.git Bug 361140: Upgrades from versions with enums fail UTF-8 conversion Patch By Max Kanat-Alexander r=bkor, a=justdave --- diff --git a/Bugzilla/DB/Mysql.pm b/Bugzilla/DB/Mysql.pm index 5a9a01416e..4335a1b2fe 100644 --- a/Bugzilla/DB/Mysql.pm +++ b/Bugzilla/DB/Mysql.pm @@ -576,6 +576,10 @@ EOT my $info_sth = $self->prepare("SHOW FULL COLUMNS FROM $table"); $info_sth->execute(); while (my $column = $info_sth->fetchrow_hashref) { + # Our conversion code doesn't work on enum fields, but they + # all go away later in checksetup anyway. + next if $column->{Type} =~ /enum/i; + # If this particular column isn't stored in utf-8 if ($column->{Collation} && $column->{Collation} ne 'NULL' @@ -617,8 +621,9 @@ EOT $self->do("ALTER TABLE $table CHANGE COLUMN $name $name $utf8"); } - $self->do("ALTER TABLE $table DEFAULT CHARACTER SET utf8"); } + + $self->do("ALTER TABLE $table DEFAULT CHARACTER SET utf8"); } # foreach my $table (@tables) my $db_name = Bugzilla->localconfig->{db_name};