From d2724ef89ccf973ac9cd76ed729611133f105115 Mon Sep 17 00:00:00 2001 From: Eric Davis <edavis@littlestreamsoftware.com> Date: Fri, 22 Jul 2011 10:10:23 -0700 Subject: [PATCH] Brute force fix for Changeset#committer encoding on 1.9.2 --- app/models/changeset.rb | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/app/models/changeset.rb b/app/models/changeset.rb index 5294b05c2..623ee41f3 100644 --- a/app/models/changeset.rb +++ b/app/models/changeset.rb @@ -74,6 +74,14 @@ class Changeset < ActiveRecord::Base user || committer.to_s.split('<').first end + # Committer of the Changeset + # + # Attribute reader for committer that encodes the committer string to + # the repository log encoding (e.g. UTF-8) + def committer + self.class.to_utf8(read_attribute(:committer), repository.repo_log_encoding) + end + def before_create self.committer = self.class.to_utf8(self.committer, repository.repo_log_encoding) self.comments = self.class.normalize_comments(self.comments, repository.repo_log_encoding) @@ -273,12 +281,6 @@ class Changeset < ActiveRecord::Base end str = txtar end - # removes invalid UTF8 sequences - begin - Iconv.conv('UTF-8//IGNORE', 'UTF-8', str + ' ')[0..-3] - rescue Iconv::InvalidEncoding - # "UTF-8//IGNORE" is not supported on some OS - str - end + str end end -- GitLab