From f9913fa28a27f23fde2d4956c62cbb2fb2bc2ee8 Mon Sep 17 00:00:00 2001 From: Vincent Richard Date: Thu, 21 Nov 2013 22:16:57 +0100 Subject: Boost/C++11 shared pointers. --- src/address.cpp | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'src/address.cpp') diff --git a/src/address.cpp b/src/address.cpp index b57892d5..08a478ec 100644 --- a/src/address.cpp +++ b/src/address.cpp @@ -66,7 +66,7 @@ address-list = (address *("," address)) / obs-addr-list */ -ref
address::parseNext +shared_ptr
address::parseNext (const parsingContext& ctx, const string& buffer, const string::size_type position, const string::size_type end, string::size_type* newPosition, bool *isLastAddressOfGroup) { @@ -196,9 +196,12 @@ ref
address::parseNext // Parse extracted address (mailbox or group) if (pos != start) { - ref
parsedAddress = isGroup - ? create ().dynamicCast
() - : create ().dynamicCast
(); + shared_ptr
parsedAddress; + + if (isGroup) + parsedAddress = make_shared (); + else + parsedAddress = make_shared (); parsedAddress->parse(ctx, buffer, start, pos, NULL); parsedAddress->setParsedBounds(start, pos); @@ -206,7 +209,7 @@ ref
address::parseNext return (parsedAddress); } - return (NULL); + return null; } -- cgit v1.2.3