X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FClientAPI_XMLRPC.pm;h=3f5d888aa34780e59db8281996e75d6e3258d585;hb=c4f0fd74ef73d08f644693d2829086fddc2e7b7e;hp=a82a82f6dbc42ee1546bfece86e680213df691ab;hpb=6bb484c1877f2436de835981527bd5c2fd02df1d;p=freeside.git diff --git a/FS/FS/ClientAPI_XMLRPC.pm b/FS/FS/ClientAPI_XMLRPC.pm index a82a82f6d..3f5d888aa 100644 --- a/FS/FS/ClientAPI_XMLRPC.pm +++ b/FS/FS/ClientAPI_XMLRPC.pm @@ -75,8 +75,10 @@ sub AUTOLOAD { #FS::ClientAPI->dispatch($autoload->{$call}, @_); my %hash = @_; - #XXX doesn't handle multi-level data structs - $hash{$_} = decode(utf8=>$hash{$_}) foreach keys %hash; + #XXX doesn't deep-fix multi-level data structs, but at least doesn't mangle + # them anymore + $hash{$_} = decode(utf8=>$hash{$_}) + foreach grep !ref($hash{$_}), keys %hash; my $return = FS::ClientAPI->dispatch($autoload->{$call}, \%hash );