Rev 2150 | Rev 2434 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2150 | Rev 2209 | ||
---|---|---|---|
Line 25... | Line 25... | ||
25 | ;; 22.09.2003 - [Mike Hibbett] : mikeh@oceanfree.net ;; |
25 | ;; 22.09.2003 - [Mike Hibbett] : mikeh@oceanfree.net ;; |
26 | ;; 11.11.2006 - [Johnny_B] and [smb] ;; |
26 | ;; 11.11.2006 - [Johnny_B] and [smb] ;; |
27 | ;; ;; |
27 | ;; ;; |
28 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
28 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
Line 29... | Line 29... | ||
29 | 29 | ||
Line 30... | Line 30... | ||
30 | $Revision: 2150 $ |
30 | $Revision: 2209 $ |
31 | 31 | ||
32 | ; socket data structure |
32 | ; socket data structure |
33 | struct SOCKET |
33 | struct SOCKET |
Line 799... | Line 799... | ||
799 | and ecx, 3 |
799 | and ecx, 3 |
800 | rep movsb ; copy remaining bytes |
800 | rep movsb ; copy remaining bytes |
Line 801... | Line 801... | ||
801 | 801 | ||
802 | .exit: |
802 | .exit: |
- | 803 | lea ecx, [ebx + SOCKET.lock] |
|
803 | lea ecx, [ebx + SOCKET.lock] |
804 | mov ebx,eax |
804 | call mutex_unlock |
805 | call mutex_unlock |
805 | mov eax, edx |
806 | mov eax,ebx |
Line 806... | Line 807... | ||
806 | ret ; at last, exit |
807 | ret ; at last, exit |
807 | 808 | ||
808 | .error: |
809 | .error: |
Line 812... | Line 813... | ||
812 | .copy_all_bytes: |
813 | .copy_all_bytes: |
813 | xor esi, esi |
814 | xor esi, esi |
814 | mov [ebx + SOCKET.rxDataCount], esi ; store new count (zero) |
815 | mov [ebx + SOCKET.rxDataCount], esi ; store new count (zero) |
815 | call .start_copy |
816 | call .start_copy |
816 | lea ecx, [ebx + SOCKET.lock] |
817 | lea ecx, [ebx + SOCKET.lock] |
- | 818 | mov ebx,eax |
|
817 | call mutex_unlock |
819 | call mutex_unlock |
818 | mov eax, edx |
820 | mov eax,ebx |
819 | ret |
821 | ret |
Line 820... | Line 822... | ||
820 | 822 | ||
821 | .start_copy: |
823 | .start_copy: |
822 | mov edi, ecx |
824 | mov edi, ecx |