]> git.etc.gen.nz Git - spong.git/commitdiff
services() and service_objects where returning an undef instead of a null spong-2_6b
authorStephen L Johnson <sjohnson@monsters.org>
Mon, 24 Jan 2000 03:36:21 +0000 (03:36 +0000)
committerStephen L Johnson <sjohnson@monsters.org>
Mon, 24 Jan 2000 03:36:21 +0000 (03:36 +0000)
list if no ServiceList object was created.

src/lib/Spong/Host.pm

index dc3cb171d6801c0486299c0b3e31a73d848e71b0..106a59a511d64c2a92bdfcde68f2b68d3d29a326 100755 (executable)
@@ -37,6 +37,8 @@ use Spong::History;
 use Spong::Info;
 use POSIX;
 
+use Data::Dumper;
+
 package Spong::Host;
 
 # Constructor.  This is a lazy constructor in that it doesn't get all it's
@@ -128,13 +130,13 @@ sub service {
 sub service_objects {
    my( $self, $name ) = @_; 
    my $servicelist = $self->services();
-   return $servicelist->services() if $servicelist;
+   if ( $servicelist ) { return $servicelist->services(); } else { return (); }
 }
 
 sub service_names { 
    my $self = shift;
    my $servicelist = $self->services();
-   return $servicelist->names() if $servicelist;
+   if ( $servicelist ) { return $servicelist->names(); } else { return (); }
 }
 
 sub color {
@@ -147,6 +149,7 @@ sub has_color {
    my( $self, $color ) = @_;
 
    foreach( $self->service_objects() ) {
+      if (! defined $_) { next; }
       if( $_->color() eq $color ) { return 1; } }
 
    return 0;
@@ -351,6 +354,7 @@ sub _problem_service {
    my( $services, @problist, $probtime, $summary );
 
    foreach $service ( $self->service_objects() ) {
+      if ( ! defined $service ) { next; }
       if( $service->has_problem() ) {
         push( @problist, $service->name() );
         $summary = $service->summary();
@@ -377,6 +381,7 @@ sub _problem_message {
    my( $services, @problist, $probtime, $summary );
 
    foreach $service ( $self->service_objects() ) {
+      if( ! defined $service ) { next; }
       if( $service->has_problem() ) {
         push( @problist, $service->name() );
         $summary = $service->summary();