From: Mathieu Parent Date: Mon, 10 May 2010 16:06:26 +0000 (+0200) Subject: perl-Skinny: don't launch thread if socket can't be created X-Git-Tag: git2svn-syncpoint-master~85 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bd6f7e73c08827698908123816656a8fabbd6679;p=thirdparty%2Ffreeswitch.git perl-Skinny: don't launch thread if socket can't be created --- diff --git a/src/mod/endpoints/mod_skinny/Net/Skinny/Client.pm b/src/mod/endpoints/mod_skinny/Net/Skinny/Client.pm index ee063cc911..6d5c87a292 100644 --- a/src/mod/endpoints/mod_skinny/Net/Skinny/Client.pm +++ b/src/mod/endpoints/mod_skinny/Net/Skinny/Client.pm @@ -28,12 +28,14 @@ my $messages_receive_queue; $Config{useithreads} or die('Recompile Perl with threads to run this program.'); sub new { - $kept_self = shift->SUPER::new(@_); + $kept_self = shift->SUPER::new(@_); $messages_send_queue = Thread::Queue->new(); $messages_receive_queue = Thread::Queue->new(); - threads->create(\&send_messages_thread_func); - threads->create(\&receive_messages_thread_func); - return $kept_self; + if ($kept_self) { + threads->create(\&send_messages_thread_func); + threads->create(\&receive_messages_thread_func); + } + return $kept_self; } sub send_message { @@ -87,7 +89,7 @@ sub send_messages_thread_func sub receive_messages_thread_func { while(1) { - $messages_receive_queue->enqueue($kept_self->SUPER::receive_message()); + $messages_receive_queue->enqueue($kept_self->SUPER::receive_message()); } }