[newlib-cygwin] Cygwin: posix timers: fix uninitialized variable

Corinna Vinschen corinna@sourceware.org
Wed Feb 26 16:06:00 GMT 2020


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

commit 28382c97a5d5fd7366adbf7ce9445b1b4beb02a9
Author: Corinna Vinschen <corinna@vinschen.de>
Date:   Wed Feb 26 16:50:34 2020 +0100

    Cygwin: posix timers: fix uninitialized variable
    
    The variable returning the overrun count from the tracker object after
    disarming the overrun counter was not correctly initialized.  For some
    reason this has only been noticed by gcc-9.2.0, not by the formerly used
    gcc-7.4.0.
    
    This problem should not have had any runtime impact.  The method
    timer_tracker::disarm_overrun_event is supposed to be called in
    lock-step with timer_tracker::arm_overrun_event, which in turn
    results in the variable getting a valid value.
    
    Signed-off-by: Corinna Vinschen <corinna@vinschen.de>

Diff:
---
 winsup/cygwin/posix_timer.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/winsup/cygwin/posix_timer.cc b/winsup/cygwin/posix_timer.cc
index c0d548f..75cd4fa 100644
--- a/winsup/cygwin/posix_timer.cc
+++ b/winsup/cygwin/posix_timer.cc
@@ -81,7 +81,7 @@ timer_tracker::arm_overrun_event (LONG64 exp_cnt)
 LONG
 timer_tracker::disarm_overrun_event ()
 {
-  LONG ret;
+  LONG ret = 0;
 
   AcquireSRWLockExclusive (&srwlock);
   if (overrun_count != OVR_DISARMED)



More information about the Cygwin-cvs mailing list