浏览代码

r12782@Kushana: nickm | 2007-04-23 18:20:19 -0400
Avoid a segfault when freeing a buffer with size 0.


svn:r10010

Nick Mathewson 18 年之前
父节点
当前提交
3831d77dba
共有 1 个文件被更改,包括 1 次插入1 次删除
  1. 1 1
      src/or/buffers.c

+ 1 - 1
src/or/buffers.c

@@ -469,7 +469,7 @@ buf_free(buf_t *buf)
   buf->magic = 0xDEADBEEF;
   buf->magic = 0xDEADBEEF;
   if (buf->len == MIN_LAZY_SHRINK_SIZE) {
   if (buf->len == MIN_LAZY_SHRINK_SIZE) {
     add_buf_mem_to_freelist(buf);
     add_buf_mem_to_freelist(buf);
-  } else {
+  } else if (buf->mem) {
     oldmem = RAW_MEM(buf->mem);
     oldmem = RAW_MEM(buf->mem);
     tor_free(oldmem);
     tor_free(oldmem);
   }
   }