From 953206f9d65c1a463705d8c55f7b6d1d4b4443ef Mon Sep 17 00:00:00 2001
From: Tomas Cohen Arazi <tomascohen@gmail.com>
Date: Wed, 17 Apr 2013 10:15:14 -0300
Subject: [PATCH] Bug 10068 - Replace the utf8 pragma at admin/preferences.pl
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

utf8::decode($string) for Encode::decode('UTF-8',$string)

Added Carp and error handling.

Sponsored-by: Universidad Nacional de Córdoba
---
 admin/preferences.pl |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/admin/preferences.pl b/admin/preferences.pl
index 2182591..7beaf11 100755
--- a/admin/preferences.pl
+++ b/admin/preferences.pl
@@ -31,6 +31,8 @@ use C4::Log;
 use C4::Output;
 use C4::Templates;
 use C4::Budgets qw(GetCurrency);
+use Carp;
+use Encode;
 use File::Spec;
 use IO::File;
 use YAML::Syck qw();
@@ -298,7 +300,8 @@ my @TABS;
 
 if ( $op eq 'search' ) {
     my $searchfield = $input->param('searchfield');
-    utf8::decode($searchfield);
+    eval { $searchfield = decode('UTF-8', $searchfield, Encode::FB_CROAK); };
+    if ( $@ ) { carp "Error decoding $searchfield: $@" };
 
     $searchfield =~ s/\p{IsC}//g;
     $searchfield =~ s/\s+/ /;
-- 
1.7.10.4