[devel] Re: Q: perl-SOAP-Lite

Andrey Brindeew =?iso-8859-1?q?abr_=CE=C1_altlinux=2Eru?=
Вс Мар 20 00:07:41 MSK 2005


On Sat, Mar 12, 2005 at 05:08:04PM +0300, Alexey Tourbin wrote:
> > Я могу отдать perl-SOAP-Lite (у меня больше нет интереса к судьбе
> > этого пакета). Там еще нужен патч для версий perl начиная с
> > 5.8.0, т.к. MIME::Base64 не работает со строками, у которых
> > взведён флаг UTF8. Но патч крив в том плане, что модуль не будет
> > работать с perl < 5.8.0. Выслать патч?
> 
> Да.

attached

-- 
WBR, Andrey Brindeew.
"No one person can understand Perl culture completely"
(C) Larry Wall.
----------- следующая часть -----------
--- Lite.pm.orig	2003-08-18 22:44:18 +0400
+++ Lite.pm	2005-02-10 15:35:44 +0300
@@ -12,6 +12,7 @@
 
 use 5.004;
 use strict;
+use Encode;
 use vars qw($VERSION);
 $VERSION = sprintf("%d.%s", map {s/_//g; $_} q$Name: release-0_60-public $ =~ /-(\d+)_([\d_]+)/)
   or warn "warning: unspecified/non-released version of ", __PACKAGE__, "\n";
@@ -126,6 +127,7 @@
   my $self = shift;
   my($value, $name, $type, $attr) = @_;
   require MIME::Base64;
+  $value = Encode::encode("utf8", $value) if Encode::is_utf8($value);
   return [$name, {'xsi:type' => SOAP::Utils::qualify($self->encprefix => 'base64'), %$attr}, MIME::Base64::encode_base64($value,'')];
 }
 
@@ -216,6 +218,7 @@
   my $self = shift;
   my($value, $name, $type, $attr) = @_;
   require MIME::Base64;
+  $value = Encode::encode("utf8", $value) if Encode::is_utf8($value);
   return [$name, {'xsi:type' => 'xsd:base64Binary', %$attr}, MIME::Base64::encode_base64($value,'')];
 }
 
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 245 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20050320/53134b34/attachment-0001.bin>


Подробная информация о списке рассылки Devel