fixed typo in socket code

cvs
Slava Pestov 2005-06-13 01:20:00 +00:00
parent 10492c2f2d
commit b022dfd1d9
4 changed files with 13 additions and 12 deletions

View File

@ -8,7 +8,6 @@
<erg> if write returns -1 and errno == EINTR then it's not a real error, you can try again <erg> if write returns -1 and errno == EINTR then it's not a real error, you can try again
- single-stepper and variable access: wrong namespace? - single-stepper and variable access: wrong namespace?
- investigate if COPYING_GEN needs a fix
- http keep alive, and range get - http keep alive, and range get
- sleep word - sleep word
- fix i/o on generic x86/ppc unix - fix i/o on generic x86/ppc unix

View File

@ -29,7 +29,7 @@ SYMBOL: meta-executing
10 <vector> meta-r set 10 <vector> meta-r set
10 <vector> meta-d set 10 <vector> meta-d set
namestack meta-n set namestack meta-n set
f meta-c set catchstack meta-c set
f meta-cf set f meta-cf set
f meta-executing set ; f meta-executing set ;
@ -51,7 +51,11 @@ SYMBOL: meta-executing
#! swap in the old stacks. This is so messy. #! swap in the old stacks. This is so messy.
push-d datastack push-d push-d datastack push-d
meta-d get set-datastack meta-d get set-datastack
catchstack >r meta-c set-catchstack
namestack >r meta-n set-namestack
>r execute datastack r> tuck push >r execute datastack r> tuck push
r> set-namestack
r> set-catchstack
set-datastack meta-d set ; set-datastack meta-d set ;
: meta-call ( quot -- ) : meta-call ( quot -- )
@ -82,14 +86,10 @@ SYMBOL: meta-executing
\ datastack [ meta-d get clone push-d ] set-meta-word \ datastack [ meta-d get clone push-d ] set-meta-word
\ set-datastack [ pop-d clone meta-d set ] set-meta-word \ set-datastack [ pop-d clone meta-d set ] set-meta-word
\ >r [ pop-d push-r ] set-meta-word \ >r [ pop-d push-r ] set-meta-word
\ r> [ pop-r push-d ] set-meta-word \ r> [ pop-r push-d ] set-meta-word
\ callstack [ meta-r get clone push-d ] set-meta-word \ callstack [ meta-r get clone push-d ] set-meta-word
\ set-callstack [ pop-d clone meta-r set ] set-meta-word \ set-callstack [ pop-d clone meta-r set ] set-meta-word
\ namestack [ meta-n get push-d ] set-meta-word
\ set-namestack [ pop-d meta-n set ] set-meta-word
\ catchstack [ meta-c get push-d ] set-meta-word
\ set-catchstack [ pop-d meta-c set ] set-meta-word
\ call [ pop-d meta-call ] set-meta-word \ call [ pop-d meta-call ] set-meta-word
\ execute [ pop-d meta-word ] set-meta-word \ execute [ pop-d meta-word ] set-meta-word
\ ifte [ pop-d pop-d pop-d [ nip ] [ drop ] ifte meta-call ] set-meta-word \ ifte [ pop-d pop-d pop-d [ nip ] [ drop ] ifte meta-call ] set-meta-word

View File

@ -13,7 +13,7 @@ USING: namespaces ;
: (io-error) errno strerror throw ; : (io-error) errno strerror throw ;
: check-null ( n -- ) dup 0 = [ (io-error) ] when ; : check-null ( n -- ) 0 = [ (io-error) ] when ;
: io-error ( n -- ) 0 < [ (io-error) ] when ; : io-error ( n -- ) 0 < [ (io-error) ] when ;

View File

@ -4,7 +4,7 @@
! We need to fiddle with the exact search order here, since ! We need to fiddle with the exact search order here, since
! unix-internals::accept shadows streams::accept. ! unix-internals::accept shadows streams::accept.
IN: io-internals IN: io-internals
USING: namespaces streams threads unparser ; USING: errors namespaces streams threads unparser ;
USING: alien generic kernel math unix-internals ; USING: alien generic kernel math unix-internals ;
: init-sockaddr ( port -- sockaddr ) : init-sockaddr ( port -- sockaddr )
@ -15,8 +15,10 @@ USING: alien generic kernel math unix-internals ;
: client-sockaddr ( host port -- sockaddr ) : client-sockaddr ( host port -- sockaddr )
#! Error handling here #! Error handling here
init-sockaddr [ init-sockaddr [
>r gethostbyname dup [ "Host lookup failed" ] unless >r gethostbyname dup [
hostent-addr dup check-null r> set-sockaddr-in-addr "Host lookup failed" throw
] unless hostent-addr dup check-null
r> set-sockaddr-in-addr
] keep ; ] keep ;
: socket-fd ( -- socket ) : socket-fd ( -- socket )