Subversion Repositories Kolibri OS

Rev

Rev 4527 | Rev 4535 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4527 Rev 4528
Line 695... Line 695...
695
 
695
 
Line 696... Line 696...
696
        or      [eax + SOCKET.options], SO_NONBLOCK             ; Mark the socket as non blocking, we dont want it to block any longer!
696
        or      [eax + SOCKET.options], SO_NONBLOCK             ; Mark the socket as non blocking, we dont want it to block any longer!
697
 
697
 
698
        test    [eax + SOCKET.state], SS_BLOCKED                ; Is the socket still in blocked state?
698
        test    [eax + SOCKET.state], SS_BLOCKED                ; Is the socket still in blocked state?
699
        jz      @f
699
        jz      @f
Line 700... Line 700...
700
        call    SOCKET_notify.unblock                           ; Unblock it.
700
        call    SOCKET_notify                                   ; Unblock it.
701
  @@:
701
  @@:
Line 1774... Line 1774...
1774
        DEBUGF  DEBUG_NETWORK_ERROR, "SOCKET_notify: error finding thread 0x%x !\n", ebx
1774
        DEBUGF  DEBUG_NETWORK_ERROR, "SOCKET_notify: error finding thread 0x%x !\n", ebx
1775
        pop     esi ecx ebx
1775
        pop     esi ecx ebx
1776
        ret
1776
        ret
Line 1777... Line 1777...
1777
 
1777
 
1778
  .error:
1778
  .error:
1779
        DEBUGF  DEBUG_NETWORK_VERBOSE, "SOCKET_notify: invalid socket ptr: 0x%x !\n", eax
1779
        DEBUGF  DEBUG_NETWORK_ERROR, "SOCKET_notify: invalid socket ptr: 0x%x !\n", eax
Line 1780... Line 1780...
1780
        ret
1780
        ret
1781
 
1781
 
1782
  .found:
1782
  .found:
Line 1783... Line 1783...
1783
        test    [eax + SOCKET.state], SS_BLOCKED
1783
        test    [eax + SOCKET.state], SS_BLOCKED
1784
        jnz     .unblock
1784
        jnz     .un_block
1785
 
1785
 
1786
; socket and thread exists and socket is of non blocking type.
1786
; socket and thread exists and socket is of non blocking type.
Line 1791... Line 1791...
1791
        DEBUGF  DEBUG_NETWORK_VERBOSE, "SOCKET_notify: poking thread %u!\n", eax
1791
        DEBUGF  DEBUG_NETWORK_VERBOSE, "SOCKET_notify: poking thread %u!\n", eax
1792
        pop     esi ecx ebx
1792
        pop     esi ecx ebx
1793
        ret
1793
        ret
Line 1794... Line 1794...
1794
 
1794
 
1795
 
1795
 
1796
  .unblock:
1796
  .un_block:
1797
; socket and thread exists and socket is of blocking type
1797
; socket and thread exists and socket is of blocking type
1798
; We'll try to unblock it.
1798
; We'll try to unblock it.