diff options
author | Sage Weil <sage@inktank.com> | 2013-02-17 21:47:07 -0800 |
---|---|---|
committer | Sage Weil <sage@inktank.com> | 2013-02-17 21:47:07 -0800 |
commit | 7fcbfdc09b7aa848808a7de15e3776959f2cc67b (patch) | |
tree | 11205c75a4d7ddb33d2f372fa8b672aba344a008 | |
parent | fb472a57c6a17e9d2f74a5d226e4e0c91ae9f2a2 (diff) | |
download | ceph-7fcbfdc09b7aa848808a7de15e3776959f2cc67b.tar.gz |
buffer: put big buffer on heap, not stack
This fixes a segfault on my x86_64 wheezy box.
Signed-off-by: Sage Weil <sage@inktank.com>
-rw-r--r-- | src/test/bufferlist.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/test/bufferlist.cc b/src/test/bufferlist.cc index 6f8ba19d226..fe91fdf5937 100644 --- a/src/test/bufferlist.cc +++ b/src/test/bufferlist.cc @@ -1821,9 +1821,10 @@ TEST(BufferList, TestCopyAll) { bufferlist bl2; i.copy_all(bl2); ASSERT_EQ(bl2.length(), BIG_SZ); - unsigned char big2[BIG_SZ]; - bl2.copy(0, BIG_SZ, (char*)big2); - ASSERT_EQ(memcmp(big.get(), big2, BIG_SZ), 0); + std::tr1::shared_ptr <unsigned char> big2( + (unsigned char*)malloc(BIG_SZ), free); + bl2.copy(0, BIG_SZ, (char*)big2.get()); + ASSERT_EQ(memcmp(big.get(), big2.get(), BIG_SZ), 0); } TEST(BufferHash, all) { |