diff options
author | Philip Withnall <withnall@endlessm.com> | 2018-08-10 10:43:37 +0100 |
---|---|---|
committer | Philip Withnall <withnall@endlessm.com> | 2018-08-10 10:43:37 +0100 |
commit | 8c844291b78ee634a0ce2b826d7d8f2cff87c604 (patch) | |
tree | 39cdd6fdd9fe837d6b61c76b1df0be5bc0f2a70d | |
parent | 0d271223d894e9c69b7fa6b7983511f8ad770682 (diff) | |
download | glib-8c844291b78ee634a0ce2b826d7d8f2cff87c604.tar.gz |
gtimer: Ensure arithmetic is correctly signed for ISO 8601 parsing
When calculating the value of a timezone offset, ensure that any offsets
done with negative numbers are done in a signed integer.
oss-fuzz#9815
Signed-off-by: Philip Withnall <withnall@endlessm.com>
-rw-r--r-- | glib/gtimer.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/glib/gtimer.c b/glib/gtimer.c index 76da128c8..201225523 100644 --- a/glib/gtimer.c +++ b/glib/gtimer.c @@ -497,7 +497,7 @@ g_time_val_from_iso8601 (const gchar *iso_date, if (min > 59) return FALSE; - time_->tv_sec = mktime_utc (&tm) + (time_t) (60 * (60 * hour + min) * sign); + time_->tv_sec = mktime_utc (&tm) + (time_t) (60 * (gint64) (60 * hour + min) * sign); } else { |