public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] Remove harmful casts in gmtime_r()
@ 2017-09-07 13:40 Sebastian Huber
  0 siblings, 0 replies; only message in thread
From: Sebastian Huber @ 2017-09-07 13:40 UTC (permalink / raw)
  To: newlib-cvs

https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=ad45b86533a47ae33ec99cebc61aee96b57e17a5

commit ad45b86533a47ae33ec99cebc61aee96b57e17a5
Author: Sebastian Huber <sebastian.huber@embedded-brains.de>
Date:   Thu Sep 7 15:01:47 2017 +0200

    Remove harmful casts in gmtime_r()
    
    In case time_t is long, then the cast to long is a nop.  In case time_t
    is __int_least64_t, then the cast to long may truncate the value before
    the division.
    
    Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de>

Diff:
---
 newlib/libc/time/gmtime_r.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/newlib/libc/time/gmtime_r.c b/newlib/libc/time/gmtime_r.c
index 81c7c94..6475df3 100644
--- a/newlib/libc/time/gmtime_r.c
+++ b/newlib/libc/time/gmtime_r.c
@@ -56,8 +56,8 @@ _DEFUN (gmtime_r, (tim_p, res),
   unsigned erayear, yearday, month, day;
   unsigned long eraday;
 
-  days = ((long)lcltime) / SECSPERDAY + EPOCH_ADJUSTMENT_DAYS;
-  rem = ((long)lcltime) % SECSPERDAY;
+  days = lcltime / SECSPERDAY + EPOCH_ADJUSTMENT_DAYS;
+  rem = lcltime % SECSPERDAY;
   if (rem < 0)
     {
       rem += SECSPERDAY;


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2017-09-07 13:40 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-07 13:40 [newlib-cygwin] Remove harmful casts in gmtime_r() Sebastian Huber

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).