Skip to content

Commit d4ae92d

Browse files
committed
fix: recycled_ptr::get() nullptr when empty
1 parent 76279f5 commit d4ae92d

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

include/boost/url/grammar/recycled.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -451,7 +451,7 @@ class recycled_ptr
451451
*/
452452
T* get() const noexcept
453453
{
454-
return &p_->t;
454+
return p_ ? &p_->t : nullptr;
455455
}
456456

457457
/** Return the referenced object

test/unit/grammar/recycled.cpp

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,14 @@ struct recycled_test
4848
BOOST_TEST(sp2->capacity() >= 1000);
4949
}
5050

51+
// get() returns nullptr after release
52+
{
53+
recycled_ptr<std::string> sp;
54+
sp->reserve(100);
55+
sp.release();
56+
BOOST_TEST(sp.get() == nullptr);
57+
}
58+
5159
// coverage
5260
{
5361
implementation_defined::recycled_add_impl(1);

0 commit comments

Comments
 (0)