diff --git a/ikcp.c b/ikcp.c index 246b08c..aac14bf 100644 --- a/ikcp.c +++ b/ikcp.c @@ -882,7 +882,13 @@ int ikcp_input(ikcpcb *kcp, const char *data, long size) if (kcp->incr < mss) kcp->incr = mss; kcp->incr += (mss * mss) / kcp->incr + (mss / 16); if ((kcp->cwnd + 1) * mss <= kcp->incr) { + #if 1 + kcp->cwnd = (kcp->incr + mss - 1) / ((mss > 0)? mss : 1); + #else kcp->cwnd++; + #endif + } else { + } } } if (kcp->cwnd > kcp->rmt_wnd) {