Index: content/browser/renderer_host/p2p/socket_host_udp.cc |
diff --git a/content/browser/renderer_host/p2p/socket_host_udp.cc b/content/browser/renderer_host/p2p/socket_host_udp.cc |
index 3833b62d03b1b19536896498f75e7ff90ba60f40..3bea4dfb2d71d23bb8fd66a3e707aff3b8ea6953 100644 |
--- a/content/browser/renderer_host/p2p/socket_host_udp.cc |
+++ b/content/browser/renderer_host/p2p/socket_host_udp.cc |
@@ -68,7 +68,7 @@ P2PSocketHostUdp::PendingPacket::~PendingPacket() { |
P2PSocketHostUdp::P2PSocketHostUdp(IPC::Sender* message_sender, |
int socket_id, |
P2PMessageThrottler* throttler) |
- : P2PSocketHost(message_sender, socket_id), |
+ : P2PSocketHost(message_sender, socket_id, P2PSocketHost::UDP), |
socket_( |
new net::UDPServerSocket(GetContentClient()->browser()->GetNetLog(), |
net::NetLog::Source())), |
@@ -211,8 +211,12 @@ void P2PSocketHostUdp::Send(const net::IPEndPoint& to, |
} |
} |
+ IncrementTotalSentPackets(); |
+ |
if (send_pending_) { |
send_queue_.push_back(PendingPacket(to, data, options, packet_id)); |
+ IncrementDelayedBytes(data.size()); |
+ IncrementDelayedPackets(); |
} else { |
// TODO(mallinath: Remove unnecessary memcpy in this case. |
PendingPacket packet(to, data, options, packet_id); |
@@ -281,8 +285,10 @@ void P2PSocketHostUdp::OnSend(uint64 packet_id, int result) { |
// Send next packets if we have them waiting in the buffer. |
while (state_ == STATE_OPEN && !send_queue_.empty() && !send_pending_) { |
- DoSend(send_queue_.front()); |
+ PendingPacket packet = send_queue_.front(); |
+ DoSend(packet); |
send_queue_.pop_front(); |
+ DecrementDelayedBytes(packet.size); |
} |
} |