mirror of
https://github.com/fluencelabs/redis
synced 2025-03-19 09:00:51 +00:00
Fix non Linux build.
timezone global is a linux-ism whereas it is a function under BSD. Here a helper to get the timezone value in a more portable manner.
This commit is contained in:
parent
b8febe60b4
commit
0b73d0a8d2
@ -1526,7 +1526,7 @@ void initServerConfig(void) {
|
|||||||
server.runid[CONFIG_RUN_ID_SIZE] = '\0';
|
server.runid[CONFIG_RUN_ID_SIZE] = '\0';
|
||||||
changeReplicationId();
|
changeReplicationId();
|
||||||
clearReplicationId2();
|
clearReplicationId2();
|
||||||
server.timezone = timezone; /* Initialized by tzset(). */
|
server.timezone = getTimeZone(); /* Initialized by tzset(). */
|
||||||
server.configfile = NULL;
|
server.configfile = NULL;
|
||||||
server.executable = NULL;
|
server.executable = NULL;
|
||||||
server.config_hz = CONFIG_DEFAULT_HZ;
|
server.config_hz = CONFIG_DEFAULT_HZ;
|
||||||
|
18
src/util.c
18
src/util.c
@ -652,6 +652,24 @@ sds getAbsolutePath(char *filename) {
|
|||||||
return abspath;
|
return abspath;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Gets the proper timezone in a more portable fashion
|
||||||
|
* i.e timezone variables are linux specific.
|
||||||
|
*/
|
||||||
|
|
||||||
|
unsigned long getTimeZone(void) {
|
||||||
|
#ifdef __linux__
|
||||||
|
return timezone;
|
||||||
|
#else
|
||||||
|
struct timeval tv;
|
||||||
|
struct timezone tz;
|
||||||
|
|
||||||
|
gettimeofday(&tv, &tz);
|
||||||
|
|
||||||
|
return tz.tz_minuteswest * 60UL;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
/* Return true if the specified path is just a file basename without any
|
/* Return true if the specified path is just a file basename without any
|
||||||
* relative or absolute path. This function just checks that no / or \
|
* relative or absolute path. This function just checks that no / or \
|
||||||
* character exists inside the specified path, that's enough in the
|
* character exists inside the specified path, that's enough in the
|
||||||
|
@ -50,6 +50,7 @@ int string2ld(const char *s, size_t slen, long double *dp);
|
|||||||
int d2string(char *buf, size_t len, double value);
|
int d2string(char *buf, size_t len, double value);
|
||||||
int ld2string(char *buf, size_t len, long double value, int humanfriendly);
|
int ld2string(char *buf, size_t len, long double value, int humanfriendly);
|
||||||
sds getAbsolutePath(char *filename);
|
sds getAbsolutePath(char *filename);
|
||||||
|
unsigned long getTimeZone(void);
|
||||||
int pathIsBaseName(char *path);
|
int pathIsBaseName(char *path);
|
||||||
|
|
||||||
#ifdef REDIS_TEST
|
#ifdef REDIS_TEST
|
||||||
|
Loading…
x
Reference in New Issue
Block a user