]> git.donarmstrong.com Git - debbugs.git/blobdiff - Debbugs/Collection/Bug.pm
Document bug collection a bit more
[debbugs.git] / Debbugs / Collection / Bug.pm
index 6f4033ab556abf11d778a3f4ff6e82d5263f7b49..3f40b0c04f098b9501010ef3689b4c6cc15850d3 100644 (file)
@@ -39,7 +39,7 @@ extends 'Debbugs::Collection';
 
 =head2 my $bugs = Debbugs::Collection::Bug->new(%params|$param)
 
-Parameters:
+Parameters in addition to those defined by L<Debbugs::Collection>
 
 =over
 
@@ -141,8 +141,12 @@ sub _member_constructor {
         # preload as many of the packages as we need
         my %packages;
         while (my ($bug, $status) = each %{$statuses}) {
-            $packages{$_} = 1 for split /,/, $status->{package};
-            $packages{$_} = 1 for split /,/, $status->{source};
+            if (defined $status->{package}) {
+                $packages{$_} = 1 for split /,/, $status->{package};
+            }
+            if (defined $status->{source}) {
+                $packages{$_} = 1 for split /,/, $status->{source};
+            }
         }
         $self->package_collection->universe->add_by_key(keys %packages);
         while (my ($bug, $status) = each %{$statuses}) {
@@ -196,7 +200,7 @@ sub member_key {
 sub load_related_packages_and_versions {
     my $self = shift;
     my @related_packages_and_versions =
-        $self->map(sub {$_->related_packages_and_versions});
+        $self->apply(sub {$_->related_packages_and_versions});
     $self->package_collection->
         add_packages_and_versions(@related_packages_and_versions);
 }