[poe-commits] poe/lib/POE/Resource FileHandles.pm,1.18,1.19
Brought to you by:
rcaputo
From: <rc...@us...> - 2005-04-21 17:19:16
|
Update of /cvsroot/poe/poe/lib/POE/Resource In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1299/lib/POE/Resource Modified Files: FileHandles.pm Log Message: Apply Ed W's advice regarding non-blocking connect() in ActiveState Perl. His advice works in stand-alone (non-POE) tests, and the change doesn't break anything in POE's test suite, but I haven't actually tested whether non-blocking connect() works under POE now. Index: FileHandles.pm =================================================================== RCS file: /cvsroot/poe/poe/lib/POE/Resource/FileHandles.pm,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -d -r1.18 -r1.19 *** FileHandles.pm 22 Nov 2004 00:08:06 -0000 1.18 --- FileHandles.pm 21 Apr 2005 17:19:07 -0000 1.19 *************** *** 347,355 **** # 126 is FIONBIO (some docs say 0x7F << 16) ! ioctl( $handle, ! 0x80000000 | (4 << 16) | (ord('f') << 8) | 126, ! $set_it ! ) ! or _trap "ioctl($handle, FIONBIO, $set_it) fails: $!\n"; } } --- 347,355 ---- # 126 is FIONBIO (some docs say 0x7F << 16) ! ioctl( ! $handle, ! 0x80000000 | (4 << 16) | (ord('f') << 8) | 126, ! \$set_it ! ) or _trap "ioctl($handle, FIONBIO, $set_it) fails: $!\n"; } } *************** *** 426,434 **** else { ! $kr_fno_rec->[FMO_SESSIONS]->{$session}->{$handle} = ! [ $handle, # HSS_HANDLE ! $session, # HSS_SESSION ! $event, # HSS_STATE ! ]; # Fix reference counts. --- 426,434 ---- else { ! $kr_fno_rec->[FMO_SESSIONS]->{$session}->{$handle} = [ ! $handle, # HSS_HANDLE ! $session, # HSS_SESSION ! $event, # HSS_STATE ! ]; # Fix reference counts. *************** *** 450,461 **** unless (exists $kr_ses_to_handle{$session}->{$handle}) { ! $kr_ses_to_handle{$session}->{$handle} = ! [ $handle, # SH_HANDLE ! 0, # SH_REFCOUNT ! [ 0, # SH_MODECOUNT / MODE_RD ! 0, # SH_MODECOUNT / MODE_WR ! 0 # SH_MODECOUNT / MODE_EX ! ] ! ]; $self->_data_ses_refcount_inc($session); } --- 450,461 ---- unless (exists $kr_ses_to_handle{$session}->{$handle}) { ! $kr_ses_to_handle{$session}->{$handle} = [ ! $handle, # SH_HANDLE ! 0, # SH_REFCOUNT ! [ 0, # SH_MODECOUNT / MODE_RD ! 0, # SH_MODECOUNT / MODE_WR ! 0 # SH_MODECOUNT / MODE_EX ! ] ! ]; $self->_data_ses_refcount_inc($session); } |