| 22 | | if (!exists $r->{$key}) { |
| 23 | | my $code = $from eq 'kddi' ? 'unicode_auto' : 'unicode'; |
| 24 | | my $char = chr hex $r->{$code}; |
| 25 | | eval { |
| 26 | | my $mapped = decode("x-utf8-$to", encode("x-utf8-$to", $char, Encode::FB_CROAK)); |
| 27 | | my $func = $key eq 'name' ? \&unicode2name : \&unicode2name_en; |
| 28 | | my $name = $func->(ord $mapped); |
| 29 | | $r->{$key} = $name if $name; |
| 30 | | }; |
| 31 | | warn $@ if $@; |
| 32 | | } |
| | 22 | next if exists $r->{$key} && !$force; |
| | 23 | my $code = $from eq 'kddi' ? 'unicode_auto' : 'unicode'; |
| | 24 | my $char = chr hex $r->{$code}; |
| | 25 | eval { |
| | 26 | my $mapped = decode("x-utf8-$to", encode("x-utf8-$to", $char, Encode::FB_CROAK)); |
| | 27 | my $func = $key eq 'name' ? \&unicode2name : \&unicode2name_en; |
| | 28 | my $name = $func->(ord $mapped); |
| | 29 | $r->{$key} = encode_utf8($name) if $name; |
| | 30 | }; |
| | 31 | warn $@ if $@; |