Description
During a session start, spdy advertises the initial window size as the configured proxy.config.spdy.initial_window_size_in. A window_update is triggered whenever the current delta_window_size reaches half this advertised window size. However, the condition that checks for triggering the window update compares the delta_window_size for each stream with the initial window size. This fails to trigger a window_update when the delta_window_size for each stream individually is not half the initial_window_size, even though, the aggregate of the delta_window_size for all the streams is high enough. Consequently, the sender stalls upon exhausting the send window size and eventually times out waiting for a window update (which never happens, since, individually, each stream doesn't hit half the initial window size).