From d63674aa5b461d4452f6ddac774d9d4a39927036 Mon Sep 17 00:00:00 2001 From: Bernhard M. Wiedemann Date: Jun 05 2026 13:14:40 +0000 Subject: Avoid int overflow See https://en.wikipedia.org/wiki/Year_2038_problem This patch was done while reviewing potential year-2038 issues in openSUSE. Signed-off-by: Bernhard M. Wiedemann --- diff --git a/src/prefs.c b/src/prefs.c index 52ffc90..934fdae 100644 --- a/src/prefs.c +++ b/src/prefs.c @@ -159,7 +159,11 @@ cm_prefs_preferred_digest(void) static int cm_prefs_compare_ttl_values(const void *a, const void *b) { - return *(time_t *)a - *(time_t *) b; + time_t ta = *(const time_t *)a; + time_t tb = *(const time_t *)b; + if (ta < tb) return -1; + if (ta > tb) return 1; + return 0; } static int diff --git a/src/submit-u.c b/src/submit-u.c index dca23a7..729f708 100644 --- a/src/submit-u.c +++ b/src/submit-u.c @@ -324,8 +324,8 @@ int cm_submit_u_delta_from_string(const char *deltas, time_t now, time_t *delta) { struct tm now_tm, *pnow; - time_t start; - int multiple, i, val, done, digits; + time_t start, val; + int multiple, i, done, digits; unsigned char c; val = 0; digits = 0;