From: Marcin Date: Mon, 16 May 2016 11:15:50 +0000 (+0200) Subject: [my-place] SVACE issues fix (usage of localtime, gmtime -> XX_r versions). X-Git-Tag: submit/tizen/20160517.020001^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=7c80b715d50400bf51fa63ac15cc90325296ab05;p=platform%2Fcore%2Fcontext%2Fcontext-provider.git [my-place] SVACE issues fix (usage of localtime, gmtime -> XX_r versions). Change-Id: I7ec8c72efaaedd627aec55ee170f759599c6e344 Signed-off-by: Marcin --- diff --git a/src/my-place/user_places/debug_utils.cpp b/src/my-place/user_places/debug_utils.cpp index d609f76..48b9cd9 100644 --- a/src/my-place/user_places/debug_utils.cpp +++ b/src/my-place/user_places/debug_utils.cpp @@ -19,17 +19,19 @@ std::string ctx::DebugUtils::humanReadableDateTime(time_t timestamp, std::string format, size_t size, bool utc) { - struct tm * timeinfo; + struct tm timeinfo; + struct tm *result; + tzset(); if (utc) { format += " UTC"; size += 4; - timeinfo = gmtime(×tamp); + result = gmtime_r(×tamp, &timeinfo); } else { - timeinfo = localtime(×tamp); + result = localtime_r(×tamp, &timeinfo); } char buffer[size]; - if (timeinfo) { - strftime(buffer, size, format.c_str(), timeinfo); + if (result) { + strftime(buffer, size, format.c_str(), &timeinfo); } else { snprintf(buffer, size, "NULL"); } diff --git a/src/my-place/user_places/visit_categer.cpp b/src/my-place/user_places/visit_categer.cpp index 96000f6..36c9efd 100644 --- a/src/my-place/user_places/visit_categer.cpp +++ b/src/my-place/user_places/visit_categer.cpp @@ -298,12 +298,15 @@ const std::vector ctx::VisitCateger::__featuresStd( ctx::TimeFeatures ctx::VisitCateger::timeFeatures(const time_t &time) { - struct tm *timeinfo = localtime(&time); - if (timeinfo == NULL) { + struct tm timeinfo; + struct tm *result; + tzset(); + result = localtime_r(&time, &timeinfo); + if (result == NULL) { return {0, 0, 0, false}; } - int minutesSinceMidnight = 60 * timeinfo->tm_hour + timeinfo->tm_min; - int weekday = (timeinfo->tm_wday + 6) % 7; // Monday is 0, Sunday is 6 + int minutesSinceMidnight = 60 * timeinfo.tm_hour + timeinfo.tm_min; + int weekday = (timeinfo.tm_wday + 6) % 7; // Monday is 0, Sunday is 6 bool weekend = weekday > 4; int minutesSinceBeginingOfTheWeek = 24 * 60 * weekday + minutesSinceMidnight; return {