void CSJoinRoomRequest::MergeFrom(const CSJoinRoomRequest& from) { GOOGLE_CHECK_NE(&from, this); if (from._has_bits_[0 / 32] & (0xffu << (0 % 32))) { if (from.has_uin()) { set_uin(from.uin()); } } mutable_unknown_fields()->MergeFrom(from.unknown_fields()); }
/* send offline message to status server */ void send_offline_to_status(struct conn_server *server, uint32_t uin) { struct list_packet *lp = allocator_malloc(&server->packet_allocator); packet_init(lp); set_length(lp, 24); set_command(lp, CMD_STATUS_CHANGE); set_uin(lp, uin); set_field_uint32_t(get_parameters(lp), 0, uin); set_field_uint16_t(get_parameters(lp), 10, STATUS_CHANGE_OFFLINE); list_add_tail(&lp->list, &(server->status_conn.send_packet_list)); wait_for_write(server->efd, server->status_conn.sfd); }