mirror of
https://github.com/pocoproject/poco.git
synced 2025-05-29 23:42:39 +02:00
trunk/branch integration: VxWorks & Wince
This commit is contained in:
parent
28c92f869f
commit
e06af24e2e
@ -1,7 +1,7 @@
|
|||||||
//
|
//
|
||||||
// Timezone.cpp
|
// Timezone.cpp
|
||||||
//
|
//
|
||||||
// $Id: //poco/svn/Foundation/src/Timezone.cpp#2 $
|
// $Id: //poco/1.4/Foundation/src/Timezone.cpp#2 $
|
||||||
//
|
//
|
||||||
// Library: Foundation
|
// Library: Foundation
|
||||||
// Package: DateTime
|
// Package: DateTime
|
||||||
@ -39,7 +39,13 @@
|
|||||||
|
|
||||||
|
|
||||||
#if defined(POCO_OS_FAMILY_WINDOWS)
|
#if defined(POCO_OS_FAMILY_WINDOWS)
|
||||||
|
#if defined(_WIN32_WCE)
|
||||||
|
#include "Timezone_WINCE.cpp"
|
||||||
|
#else
|
||||||
#include "Timezone_WIN32.cpp"
|
#include "Timezone_WIN32.cpp"
|
||||||
|
#endif
|
||||||
|
#elif defined(POCO_VXWORKS)
|
||||||
|
#include "Timezone_VX.cpp"
|
||||||
#else
|
#else
|
||||||
#include "Timezone_UNIX.cpp"
|
#include "Timezone_UNIX.cpp"
|
||||||
#endif
|
#endif
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
//
|
//
|
||||||
// Timezone_UNIX.cpp
|
// Timezone_UNIX.cpp
|
||||||
//
|
//
|
||||||
// $Id: //poco/svn/Foundation/src/Timezone_UNIX.cpp#2 $
|
// $Id: //poco/1.4/Foundation/src/Timezone_UNIX.cpp#1 $
|
||||||
//
|
//
|
||||||
// Library: Foundation
|
// Library: Foundation
|
||||||
// Package: DateTime
|
// Package: DateTime
|
||||||
@ -35,6 +35,7 @@
|
|||||||
|
|
||||||
|
|
||||||
#include "Poco/Timezone.h"
|
#include "Poco/Timezone.h"
|
||||||
|
#include "Poco/Exception.h"
|
||||||
#include <ctime>
|
#include <ctime>
|
||||||
|
|
||||||
|
|
||||||
@ -84,7 +85,8 @@ int Timezone::dst()
|
|||||||
{
|
{
|
||||||
std::time_t now = std::time(NULL);
|
std::time_t now = std::time(NULL);
|
||||||
struct std::tm t;
|
struct std::tm t;
|
||||||
localtime_r(&now, &t);
|
if (!localtime_r(&now, &t))
|
||||||
|
throw Poco::SystemException("cannot get local time DST offset");
|
||||||
return t.tm_isdst == 1 ? 3600 : 0;
|
return t.tm_isdst == 1 ? 3600 : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -93,6 +95,7 @@ bool Timezone::isDst(const Timestamp& timestamp)
|
|||||||
{
|
{
|
||||||
std::time_t time = timestamp.epochTime();
|
std::time_t time = timestamp.epochTime();
|
||||||
struct std::tm* tms = std::localtime(&time);
|
struct std::tm* tms = std::localtime(&time);
|
||||||
|
if (!tms) throw Poco::SystemException("cannot get local time DST flag");
|
||||||
return tms->tm_isdst > 0;
|
return tms->tm_isdst > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
//
|
//
|
||||||
// Timezone_WIN32.cpp
|
// Timezone_WIN32.cpp
|
||||||
//
|
//
|
||||||
// $Id: //poco/svn/Foundation/src/Timezone_WIN32.cpp#2 $
|
// $Id: //poco/1.4/Foundation/src/Timezone_WIN32.cpp#1 $
|
||||||
//
|
//
|
||||||
// Library: Foundation
|
// Library: Foundation
|
||||||
// Package: DateTime
|
// Package: DateTime
|
||||||
@ -36,6 +36,7 @@
|
|||||||
|
|
||||||
#include "Poco/Timezone.h"
|
#include "Poco/Timezone.h"
|
||||||
#include "Poco/UnicodeConverter.h"
|
#include "Poco/UnicodeConverter.h"
|
||||||
|
#include "Poco/Exception.h"
|
||||||
#include "Poco/UnWindows.h"
|
#include "Poco/UnWindows.h"
|
||||||
#include <ctime>
|
#include <ctime>
|
||||||
|
|
||||||
@ -63,6 +64,7 @@ bool Timezone::isDst(const Timestamp& timestamp)
|
|||||||
{
|
{
|
||||||
std::time_t time = timestamp.epochTime();
|
std::time_t time = timestamp.epochTime();
|
||||||
struct std::tm* tms = std::localtime(&time);
|
struct std::tm* tms = std::localtime(&time);
|
||||||
|
if (!tms) throw Poco::SystemException("cannot get local time DST flag");
|
||||||
return tms->tm_isdst > 0;
|
return tms->tm_isdst > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user