From ffe689363f1350e86255ee8c03585a2a744a8819 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Tue, 1 Sep 2015 21:11:22 +0200 Subject: util/AllocatedString: add constant "SENTINEL" --- src/util/AllocatedString.hxx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/util/AllocatedString.hxx b/src/util/AllocatedString.hxx index c1d844426..e01955381 100644 --- a/src/util/AllocatedString.hxx +++ b/src/util/AllocatedString.hxx @@ -47,6 +47,8 @@ public: typedef typename StringPointer::pointer pointer; typedef typename StringPointer::const_pointer const_pointer; + static constexpr value_type SENTINEL = '\0'; + private: pointer value; @@ -73,7 +75,7 @@ public: static AllocatedString Empty() { auto p = new value_type[1]; - p[0] = value_type(0); + p[0] = SENTINEL; return Donate(p); } @@ -82,14 +84,14 @@ public: static AllocatedString Duplicate(const_pointer begin, const_pointer end) { auto p = new value_type[end - begin + 1]; - *std::copy(begin, end, p) = 0; + *std::copy(begin, end, p) = SENTINEL; return Donate(p); } static AllocatedString Duplicate(const_pointer begin, size_t length) { auto p = new value_type[length]; - *std::copy_n(begin, length, p) = 0; + *std::copy_n(begin, length, p) = SENTINEL; return Donate(p); } @@ -107,7 +109,7 @@ public: } bool empty() const { - return *value == 0; + return *value == SENTINEL; } pointer Steal() { -- cgit v1.2.3