use warnings;
use strict;
use vars qw($DEBUG %EXPORT_TAGS @EXPORT_OK @EXPORT);
-use base qw(Exporter SOAP::Server::Parameters);
+use Debbugs::SOAP::Server;
+use Exporter qw(import);
+use base qw(SOAP::Server::Parameters);
BEGIN{
$DEBUG = 0 unless defined $DEBUG;
}
-
use IO::File;
use Debbugs::Status qw(get_bug_status);
use Debbugs::Common qw(make_list getbuglocation getbugcomponent);
+use Debbugs::UTF8;
use Debbugs::Packages;
-use Data::Walk;
-use Encode qw(encode_utf8);
-use Storable qw(nstore retrieve);
+
+use Storable qw(nstore retrieve dclone);
use Scalar::Util qw(looks_like_number);
@bugs = @{$bugs[0]};
}
my %status;
+ my %binary_to_source_cache;
for my $bug (@bugs) {
my $bug_status;
if (ref($bug)) {
next unless defined $param{bug};
$bug = $param{bug};
$bug_status = get_bug_status(map {(exists $param{$_})?($_,$param{$_}):()}
- qw(bug dist arch bugusertags sourceversions version indicatesource)
+ qw(bug dist arch bugusertags sourceversions version indicatesource),
+ binary_to_source_cache => \%binary_to_source_cache,
);
}
else {
- $bug_status = get_bug_status(bug => $bug);
+ $bug_status = get_bug_status(bug => $bug,
+ binary_to_source_cache => \%binary_to_source_cache,
+ );
}
if (defined $bug_status and keys %{$bug_status} > 0) {
$status{$bug} = $bug_status;
my %seen_msg_ids;
my $current_msg=0;
- my $status = {};
my @messages;
while (my $record = $log->read_record()) {
$current_msg++;
=back
-This function correponds to L<Debbugs::Packages::get_versions>
+This function corresponds to L<Debbugs::Packages::get_versions>
=cut
return %params;
}
-sub encode_utf8_structure {
- return walk \&__encode_utf8, @_;
-}
-
-sub __encode_utf8 {
- $_ = encode_utf8($_) unless ref $_ or not is_utf8($_);
-}
-
1;