Subversion Repositories Kolibri OS

Rev

Rev 2288 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2288 Rev 2381
Line 14... Line 14...
14
;;         Added a timer per socket to allow delays when        ;;
14
;;         Added a timer per socket to allow delays when        ;;
15
;;         rx window gets below 1KB                             ;;
15
;;         rx window gets below 1KB                             ;;
16
;;                                                              ;;
16
;;                                                              ;;
17
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
17
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Line 18... Line 18...
18
 
18
 
Line 19... Line 19...
19
$Revision: 2288 $
19
$Revision: 2381 $
20
 
20
 
21
 
21
 
Line 965... Line 965...
965
        jmp     .exit
965
        jmp     .exit
Line 966... Line 966...
966
 
966
 
967
  .data:
967
  .data:
968
        push    ecx
968
        push    ecx
969
        push    ecx edx
969
        push    ecx edx
970
        lea     ecx, [ebx+SOCKET.lock]
970
        lea     ecx, [ebx+SOCKET.mutex]
971
        call    mutex_lock
971
        call    mutex_lock
Line 972... Line 972...
972
        pop     edx ecx
972
        pop     edx ecx
973
 
973
 
Line 987... Line 987...
987
        mov     esi, edx
987
        mov     esi, edx
Line 988... Line 988...
988
 
988
 
989
        cld
989
        cld
Line 990... Line 990...
990
        rep movsb              ; copy the data across
990
        rep movsb              ; copy the data across
991
 
991
 
Line 992... Line 992...
992
        lea     ecx, [ebx + SOCKET.lock]
992
        lea     ecx, [ebx + SOCKET.mutex]
993
        call    mutex_unlock
993
        call    mutex_unlock
994
 
994
 
Line 1033... Line 1033...
1033
  .exit:
1033
  .exit:
1034
        ret
1034
        ret
1035
  .overflow:
1035
  .overflow:
1036
        ; no place in buffer
1036
        ; no place in buffer
1037
        ; so simply restore stack and exit
1037
        ; so simply restore stack and exit
1038
        lea     ecx, [ebx + SOCKET.lock]
1038
        lea     ecx, [ebx + SOCKET.mutex]
1039
        call    mutex_unlock
1039
        call    mutex_unlock
1040
        pop     eax ecx
1040
        pop     eax ecx
1041
        ret
1041
        ret
1042
endp
1042
endp