+ // Update the last suitable starting point for the stream,
+ // if the queued data contains such a starting point.
+ assert(queued_data_last_starting_point < ssize_t(queued_data.size()));
+ if (queued_data_last_starting_point >= 0) {
+ last_suitable_starting_point = bytes_received;
+ for (int i = 0; i < queued_data_last_starting_point; ++i) {
+ last_suitable_starting_point += queued_data[i].iov_len;
+ }
+ }
+