Sorry for hijacking the thread, my issue is on the SES::call_ses side.
If I shift $self I get an error about an empty hash for %$opts, if I don't shift $self it works.
This works:
sub call_ses {
my $params = shift;
my $opts = shift;
%opts = %$opts;
%params = %$params;
my $endpoint_name = $endpoint;
}
This doesn't:
sub call_ses {
my $self = shift;
my $params = shift;
my $opts = shift;
%opts = %$opts; <-- Line 559
%params = %$params;
my $endpoint_name = $self->AWS_endpoint;
}
Can't use an undefined value as a HASH reference at
/usr/share/perl5/vendor_perl/SES.pm line 559 (#1)
(F) A value used as either a hard reference or a symbolic referenc
+e must
be a defined value. This helps to delurk some insidious errors.
Uncaught exception from user code:
Can't use an undefined value as a HASH reference at /usr/share
+/perl5/vendor_perl/SES.pm line 559.
SES::call_ses('HASH(0x243cc00)', 'HASH(0x26a2138)') called at
+/opt/aws/apitools/ses/bin/ses-get-stats.pl line 168
Should I abandon $self and just call the subs like I did in the working version?
Thanks to the Monastery for all the years of saving my butt as I stumbled through PERL.