void udp_client_socket::read(buffer &data) { buffer buf = incoming_data.pop(); if (data.get_address()) data.copy_data(buf); else data = buf; }