| 330 | } |
| 331 | |
| 332 | void CSocketList::add(CSocket* skt) |
| 333 | { |
| 334 | lock(); |
| 335 | for(auto& s : *this) { |
| 336 | if(!s->active()) { |
| 337 | delete s; |
| 338 | s = skt; |
| 339 | skt = nullptr; |
| 340 | break; |
| 341 | } |
| 342 | } |
| 343 | |
| 344 | if(skt != nullptr) { |
| 345 | push_back(skt); |
| 346 | } |
| 347 | unlock(); |
| 348 | } |
| 349 | |
| 350 | void CSocketList::send(const void* data, size_t n, int flags) |
| 351 | { |