mirror of
https://github.com/RGBCube/serenity
synced 2025-07-19 20:37:34 +00:00
Kernel: DoubleBuffer can return early if read/write is called with !size.
This commit is contained in:
parent
1c423f7691
commit
a02c945ef2
1 changed files with 4 additions and 0 deletions
|
@ -19,6 +19,8 @@ void DoubleBuffer::flip()
|
||||||
|
|
||||||
ssize_t DoubleBuffer::write(const byte* data, ssize_t size)
|
ssize_t DoubleBuffer::write(const byte* data, ssize_t size)
|
||||||
{
|
{
|
||||||
|
if (!size)
|
||||||
|
return 0;
|
||||||
LOCKER(m_lock);
|
LOCKER(m_lock);
|
||||||
m_write_buffer->append(data, size);
|
m_write_buffer->append(data, size);
|
||||||
compute_emptiness();
|
compute_emptiness();
|
||||||
|
@ -27,6 +29,8 @@ ssize_t DoubleBuffer::write(const byte* data, ssize_t size)
|
||||||
|
|
||||||
ssize_t DoubleBuffer::read(byte* data, ssize_t size)
|
ssize_t DoubleBuffer::read(byte* data, ssize_t size)
|
||||||
{
|
{
|
||||||
|
if (!size)
|
||||||
|
return 0;
|
||||||
LOCKER(m_lock);
|
LOCKER(m_lock);
|
||||||
if (m_read_buffer_index >= m_read_buffer->size() && !m_write_buffer->is_empty())
|
if (m_read_buffer_index >= m_read_buffer->size() && !m_write_buffer->is_empty())
|
||||||
flip();
|
flip();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue