From 20a14198beb38f84040b3deb0e6353e4401c2622 Mon Sep 17 00:00:00 2001 From: Bill Erickson Date: Tue, 26 Jun 2012 09:21:57 -0400 Subject: [PATCH] Prevent "uninitialized value" warnings in parameter logging Use of uninitialized value $p[0] in join or string at /usr/local/share/perl/5.10.1/OpenSRF/Application.pm line 130. This is caused when the array of method params contains null/undef values. Prevent the warnings by replacing these values w/ empty strings. Signed-off-by: Bill Erickson --- src/perl/lib/OpenSRF/Application.pm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/perl/lib/OpenSRF/Application.pm b/src/perl/lib/OpenSRF/Application.pm index 6ebfe4b..10ead2f 100644 --- a/src/perl/lib/OpenSRF/Application.pm +++ b/src/perl/lib/OpenSRF/Application.pm @@ -127,7 +127,8 @@ sub handler { my @p = $app_msg->params; my $method_name = $app_msg->method; my $method_proto = $session->last_message_api_level; - $log->info("CALL: ".$session->service." $method_name ". (@p ? join(', ',@p) : '')); + my $ps = @p ? join(', ', map { (defined $_) ? $_ : '' } @p) : ''; + $log->info("CALL: ".$session->service." $method_name $ps"); my $coderef = $app->method_lookup( $method_name, $method_proto, 1, 1 ); -- 2.11.0