Commit cd91838
committed
BUG/MEDIUM: stconn: Fix abort on close when a large buffer is used
When a large buffer is used on a channel, once we've started to send data to
the opposite side, receives are blocked temporarily to be sure to flush the
large buffer ASAP to be able to fall back on regular buffers. This was
performed by skipping call to the endpoint (connection or applet). Howerver,
doing so, this broken the abortonclose and more generally this masked any
shut or error events reported by the lower layer.
To fix the issue, instead of skipping receives, we now try a receive but
with a requested size set to 0.
No backport needed1 parent b3be3b9 commit cd91838
1 file changed
Lines changed: 4 additions & 9 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1149 | 1149 | | |
1150 | 1150 | | |
1151 | 1151 | | |
1152 | | - | |
1153 | | - | |
1154 | | - | |
1155 | | - | |
1156 | 1152 | | |
1157 | 1153 | | |
1158 | 1154 | | |
| |||
1194 | 1190 | | |
1195 | 1191 | | |
1196 | 1192 | | |
| 1193 | + | |
| 1194 | + | |
1197 | 1195 | | |
1198 | 1196 | | |
1199 | 1197 | | |
| |||
1838 | 1836 | | |
1839 | 1837 | | |
1840 | 1838 | | |
1841 | | - | |
1842 | | - | |
1843 | | - | |
1844 | | - | |
1845 | | - | |
1846 | 1839 | | |
1847 | 1840 | | |
1848 | 1841 | | |
| |||
1868 | 1861 | | |
1869 | 1862 | | |
1870 | 1863 | | |
| 1864 | + | |
| 1865 | + | |
1871 | 1866 | | |
1872 | 1867 | | |
1873 | 1868 | | |
| |||
0 commit comments