X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=inline;f=server.cpp;h=99a3925e13f0bca65531f82902012408e0b5556c;hb=fb0ec9c7b3fb51c5da24af0183d35f3815e6ca0e;hp=2f7a3327079af265a0faf2469b9b8b29c2f9a308;hpb=207ca0494024641f27537ad3cf047814d8092678;p=cubemap diff --git a/server.cpp b/server.cpp index 2f7a332..99a3925 100644 --- a/server.cpp +++ b/server.cpp @@ -317,6 +317,13 @@ void Server::set_backlog_size(int stream_index, size_t new_size) assert(stream_index >= 0 && stream_index < ssize_t(streams.size())); streams[stream_index]->set_backlog_size(new_size); } + +void Server::set_prebuffering_bytes(int stream_index, size_t new_amount) +{ + MutexLock lock(&mutex); + assert(stream_index >= 0 && stream_index < ssize_t(streams.size())); + streams[stream_index]->prebuffering_bytes = new_amount; +} void Server::set_encoding(int stream_index, Stream::Encoding encoding) { @@ -488,6 +495,7 @@ sending_header_or_error_again: assert(bytes_to_send <= stream->backlog_size); if (bytes_to_send < stream->prebuffering_bytes) { // We don't have enough bytes buffered to start this client yet. + // This is postcondition #3. stream->put_client_to_sleep(client); return; }