Subject: | Empty Service List causes getservicelist to croak |
if there is no service list, the _SERVICELIST is not set at all.
This causes getservicelist to croak as you cannot use an undefined
variable as a pointer to an array.
Either move the line:
@{$this->{$Net::UPnP::Device::_SERVICELIST}} = ();
up 4 lines to ensure it gets set, or check for undefined in getservicelist.