From a27fa2734ec4a9b29cb9d289b07eae0e3e56fda2 Mon Sep 17 00:00:00 2001 From: Piotr Kosko Date: Wed, 10 Jun 2015 14:22:28 +0200 Subject: [PATCH] [Time] Fixed issues from prevent [Verification] TCT passrate 100%. Change-Id: I05d3f3e7eb610b83b75b714e13c31b31b1be7fa9 Signed-off-by: Piotr Kosko --- src/time/time_instance.cc | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/time/time_instance.cc b/src/time/time_instance.cc index ed1cf791..c170780d 100644 --- a/src/time/time_instance.cc +++ b/src/time/time_instance.cc @@ -91,12 +91,18 @@ void TimeInstance::TimeGetLocalTimeZone(const JsonValue& /*args*/, LoggerD("Entered"); UnicodeString local_timezone; - TimeZone::createDefault()->getID(local_timezone); + TimeZone* timezone = TimeZone::createDefault(); + if (nullptr != timezone) { + timezone->getID(local_timezone); + delete timezone; - std::string localtz; - local_timezone.toUTF8String(localtz); + std::string localtz; + local_timezone.toUTF8String(localtz); - ReportSuccess(JsonValue(localtz), out); + ReportSuccess(JsonValue(localtz), out); + } else { + ReportError(out); + } } void TimeInstance::TimeGetAvailableTimeZones(const JsonValue& /*args*/, @@ -473,7 +479,7 @@ UnicodeString TimeInstance::getDateTimeFormat(DateTimeFormatType type, #endif pattern = dateTimepattern->getBestPattern( - *(new UnicodeString(skeleton.c_str())), ec); + UnicodeString(skeleton.c_str()), ec); if (U_FAILURE(ec)) { LoggerE("Failed to get time pattern"); return ""; -- 2.34.1