Hacker News new | ask | show | jobs
by kazinator 15 days ago
No, it doesn't. It calls:

  void buffer_free(void *buf)
  {
     if (buf != null_buffer_singleton)
       free(buf);
  }
1 comments

...which treats it differently from non-empty buffers :)

But frankly, having a 1-byte buffer, pointer to which can serve as a sentinel value à la NULL (but dereferenceable!), and which you can pass to free() without it being deallocated is indeed rather useful.