Changeset 16291 in vbox for trunk/src/VBox/Devices/Network/slirp/socket.c
- Timestamp:
- Jan 28, 2009 2:36:37 AM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Network/slirp/socket.c
r16226 r16291 72 72 /* 73 73 * remque and free a socket, clobber cache 74 * VBOX_WITH_SLIRP_MT: before sofree queue should be locked, because 75 * in sofree we don't know from which queue item beeing removed. 74 76 */ 75 77 void … … 87 89 if(so->so_next && so->so_prev) 88 90 remque(pData, so); /* crashes if so is not in a queue */ 91 92 SOCKET_UNLOCK(so); 93 SOCKET_LOCK_DESTROY(so); 89 94 90 95 RTMemFree(so); … … 644 649 return NULL; 645 650 } 651 652 SOCKET_LOCK_CREATE(so); 653 SOCKET_LOCK(so); 654 QSOCKET_LOCK(tcb); 646 655 insque(pData, so,&tcb); 656 QSOCKET_UNLOCK(tcb); 647 657 648 658 /* … … 674 684 int tmperrno = errno; /* Don't clobber the real reason we failed */ 675 685 close(s); 686 QSOCKET_LOCK(tcb); 676 687 sofree(pData, so); 688 QSOCKET_UNLOCK(tcb); 677 689 /* Restore the real errno */ 678 690 errno = tmperrno;
Note:
See TracChangeset
for help on using the changeset viewer.