An attempt at trying to fix the time_t related issues with darkstat.
authorRemi Locherer <remi.locherer@relo.ch>
Sat, 25 Jan 2014 07:00:48 +0000 (18:00 +1100)
committerEmil Mikulic <emikulic@gmail.com>
Sat, 25 Jan 2014 14:07:16 +0000 (01:07 +1100)
Replace some longs with time_t. Fixes darkstat on 32-bit archs.

graph_db.c
now.c
now.h

index c0875d4..5dcf4c3 100644 (file)
@@ -47,7 +47,7 @@ static struct graph *graph_db[] = {
 };
 
 static unsigned int graph_db_size = sizeof(graph_db)/sizeof(*graph_db);
-static long start_mono, start_real, last_real;
+static time_t start_mono, start_real, last_real;
 
 void graph_init(void) {
    unsigned int i;
@@ -169,7 +169,7 @@ static void graph_resync(const time_t new_real) {
 }
 
 void graph_rotate(void) {
-   long t, td;
+   time_t t, td;
    struct tm *tm;
    unsigned int i;
 
@@ -287,7 +287,7 @@ struct str *html_front_page(void) {
    struct str *buf, *rf;
    unsigned int i;
    char start_when[100];
-   long d_real, d_mono;
+   time_t d_real, d_mono;
 
    buf = str_make();
    html_open(buf, "Graphs", /*path_depth=*/0, /*want_graph_js=*/1);
diff --git a/now.c b/now.c
index f0751a8..dee49e3 100644 (file)
--- a/now.c
+++ b/now.c
@@ -62,12 +62,12 @@ int clock_gettime(clockid_t clk_id, struct timespec *tp) {
 static struct timespec clock_real, clock_mono;
 static int now_initialized = 0;
 
-long now_real(void) {
+time_t now_real(void) {
    assert(now_initialized);
    return clock_real.tv_sec;
 }
 
-long now_mono(void) {
+time_t now_mono(void) {
    assert(now_initialized);
    return clock_mono.tv_sec;
 }
@@ -113,12 +113,12 @@ void now_update(void) {
    all_clocks_update();
 }
 
-long mono_to_real(const long t) {
+time_t mono_to_real(const time_t t) {
    assert(now_initialized);
    return t - clock_mono.tv_sec + clock_real.tv_sec;
 }
 
-long real_to_mono(const long t) {
+time_t real_to_mono(const time_t t) {
    assert(now_initialized);
    return t - clock_real.tv_sec + clock_mono.tv_sec;
 }
diff --git a/now.h b/now.h
index 9c61f45..89879a1 100644 (file)
--- a/now.h
+++ b/now.h
 void now_init(void);
 void now_update(void); /* once per event loop (in darkstat.c) */
 
-long now_real(void);
-long now_mono(void);
+time_t now_real(void);
+time_t now_mono(void);
 
-long mono_to_real(const long t);
-long real_to_mono(const long t);
+time_t mono_to_real(const time_t t);
+time_t real_to_mono(const time_t t);
 
 /* Emits warnings if a call is too slow. */
 struct timespec;