Changeset 4467
- Timestamp:
- 02/01/07 13:28:58 (2 years ago)
- Files:
-
- wired/trunk/wired/transfers.c (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
wired/trunk/wired/transfers.c
r4426 r4467 295 295 wd_transfer_set_state(transfer, WD_TRANSFER_STOP); 296 296 297 wi_condition_lock_lock_when_condition(transfer->state_lock, WD_TRANSFER_STOPPED, 5.0);297 wi_condition_lock_lock_when_condition(transfer->state_lock, WD_TRANSFER_STOPPED, wi_time_interval() + 5.0); 298 298 wi_condition_lock_unlock(transfer->state_lock); 299 299 300 300 wi_array_wrlock(wd_transfers); 301 } else { 301 302 count--; 303 i--; 304 } 305 else if(transfer->state != WD_TRANSFER_STOP) { 302 306 wi_array_remove_data_at_index(wd_transfers, i); 303 307 … … 354 358 wi_uinteger_t i, count; 355 359 360 wi_hash_rdlock(wd_clients); 356 361 wi_array_rdlock(wd_transfers); 357 362 … … 373 378 } 374 379 375 wi_hash_rdlock(wd_clients);376 377 380 enumerator = wi_hash_data_enumerator(wd_clients); 378 381 … … 459 462 } 460 463 464 wi_array_unlock(wd_transfers); 461 465 wi_hash_unlock(wd_clients); 462 wi_array_unlock(wd_transfers);463 466 } 464 467 … … 536 539 wi_condition_lock_unlock_with_condition(transfer->state_lock, transfer->state); 537 540 } 538 539 541 540 542 … … 733 735 } 734 736 737 wi_log_l(WI_STR("Sent %llu/%llu bytes of \"%@\" to %@/%@/%@"), 738 transfer->transferred - transfer->offset, 739 transfer->size, 740 transfer->path, 741 transfer->client->nick, transfer->client->login, transfer->client->ip); 742 735 743 /* update status */ 736 744 wd_transfer_set_state(transfer, WD_TRANSFER_STOPPED); … … 740 748 wd_write_status(true); 741 749 wi_lock_unlock(wd_status_lock); 742 743 wi_log_l(WI_STR("Sent %llu/%llu bytes of \"%@\" to %@/%@/%@"),744 transfer->transferred - transfer->offset,745 transfer->size,746 transfer->path,747 transfer->client->nick, transfer->client->login, transfer->client->ip);748 750 749 751 end: … … 868 870 } 869 871 872 wi_log_l(WI_STR("Received %llu/%llu bytes of \"%@\" from %@/%@/%@"), 873 transfer->transferred - transfer->offset, 874 transfer->size, 875 transfer->path, 876 transfer->client->nick, transfer->client->login, transfer->client->ip); 877 870 878 /* update status */ 871 879 wd_transfer_set_state(transfer, WD_TRANSFER_STOPPED); … … 889 897 } 890 898 891 wi_log_l(WI_STR("Received %llu/%llu bytes of \"%@\" from %@/%@/%@"),892 transfer->transferred - transfer->offset,893 transfer->size,894 transfer->path,895 transfer->client->nick, transfer->client->login, transfer->client->ip);896 897 899 end: 898 900 wi_socket_close(transfer->socket);
