ASPN ActiveState Programmer Network
ActiveState
/ Home / Perl / PHP / Python / Tcl / XSLT /
/ Safari / My ASPN /
Cookbooks | Documentation | Mailing Lists | Modules | News Feeds | Products | User Groups


Recent Messages
List Archives
About the List
List Leaders
Subscription Options

View Subscriptions
Help

View by Topic
ActiveState
.NET Framework
Open Source
Perl
PHP
Python
Tcl
Web Services
XML & XSLT

View by Category
Database
General
SOAP
System Administration
Tools
User Interfaces
Web Programming
XML Programming


MyASPN >> Mail Archive >> perl5-porters
perl5-porters
Re: [PATCH][NUDGE] Documentation fix for perlfunc/shutdown
by Paul Fenwick other posts by this author
Mar 31 2008 2:41PM messages near this date
Re: [PATCH] Documentation fix for perlfunc/shutdown | Re: [PATCH][NUDGE] Documentation fix for perlfunc/shutdown
G'day Nicholas/p5p,

This is just a polite nudge regarding the documentation patch regarding 
perlfunc/shutdown (attached again for convenience), since I believe that 
we've now sorted out the inner workings.

Apologies in advance for slow responses from me this week, or if this has 
already been fixed and I've missed it.  I'm in Sydney teaching, which is 
awesome for catching up with Sydney.pm, and horrible for both my e-mail 
response times and my liver (due to Sydney.pm).

Cheerio,

	Paul

Paul Fenwick wrote:
>  G'day Nicholas/p5p,
>  
>  Nicholas Clark wrote:
>  
> > I don't know. The code looks like this:
>  
>  [snip]
>  
> >     PUSHi( PerlSock_shutdown(PerlIO_fileno(IoIFP(io)), how) >= 0 );
>  
>  Forgive my poor knowledge of Perl's guts, but if I'm reading that 
>  correctly, we're pushing an integer return value based upon the return 
>  value of PerlSock_shutdown().  This means we can return '0' if we call 
>  PerlSock_shutdown but it fails (eg, filehandle isn't a socket).
>  
>  This is backed up by:
>  
>      perl -wle'print shutdown(STDIN,1);'
>  
>  which returns 0.  It looks like we only return undef if we reach the 
>  nuts label, the only path into which is:
>  
>      if (!io || !IoIFP(io))
>      goto nuts;
>  
>  This implies we return undef only when we don't have a valid filehandle 
>  (assuming that's what IoIFP is testing).
>  
>  You've suggested:
>  
> >     Returns C<1> for success, C<undef> if the first argument is not a 
> >     valid filehandle, or if the C<shutdown> call failed for any reason, such 
> >     as the filehandle is not a socket.
>  
>  So how about we combine everything into:
>  
>      Returns C<1> for success. In the case of error, returns
>      C<undef> if the first argument is not a valid filehandle,
>      or returns C<0> and sets C<$!> for any other failure.
>  
>  A patch for the new wording is attached.
>  
>  Cheerio,
>  
>      Paul
>  


-- 
Paul Fenwick <pjf@[...].au>  | http://perltraining.com.au/
Director of Training                   | Ph:  +61 3 9354 6001
Perl Training Australia                | Fax: +61 3 9354 2681
Thread:
Paul Fenwick
Nicholas Clark
Paul Fenwick
Paul Fenwick
Rafael Garcia-Suarez

Privacy Policy | Email Opt-out | Feedback | Syndication
© ActiveState Software Inc. All rights reserved