-
Vladimir Davydov authored
prbuf_check, which is called by prbuf_open, proceeds to scanning the buffer even if it's empty. On debug build, this results in prbuf_open reporting that the buffer is corrupted, because we trash the buffer in prbuf_create. On a release build, this may lead to a hang, in case the buffer is zeroed out. Let's fix this by returning success from prbuf_check if the buffer is empty. Note, prbuf_iterator_next doesn't call prbuf_first_record if the buffer is empty, either. Needed for https://github.com/tarantool/tarantool-ee/issues/187 NO_DOC=bug fix NO_CHANGELOG=will be added to EE
Vladimir Davydov authoredprbuf_check, which is called by prbuf_open, proceeds to scanning the buffer even if it's empty. On debug build, this results in prbuf_open reporting that the buffer is corrupted, because we trash the buffer in prbuf_create. On a release build, this may lead to a hang, in case the buffer is zeroed out. Let's fix this by returning success from prbuf_check if the buffer is empty. Note, prbuf_iterator_next doesn't call prbuf_first_record if the buffer is empty, either. Needed for https://github.com/tarantool/tarantool-ee/issues/187 NO_DOC=bug fix NO_CHANGELOG=will be added to EE