Explorar el Código

Explicitly cast time value in cmSystemTools::RandomSeed

Use static_cast to avoid warnings like

 conversion to ‘unsigned int’ from ‘__time_t’ may alter its value
 conversion to ‘unsigned int’ from ‘__suseconds_t’ may alter its value

We do not care if the value is truncated because we are looking for just
32 bits anyway.
Brad King hace 14 años
padre
commit
3d92c8c827
Se han modificado 1 ficheros con 2 adiciones y 2 borrados
  1. 2 2
      Source/cmSystemTools.cxx

+ 2 - 2
Source/cmSystemTools.cxx

@@ -2294,8 +2294,8 @@ unsigned int cmSystemTools::RandomSeed()
   struct timeval t;
   gettimeofday(&t, 0);
   unsigned int pid = static_cast<unsigned int>(getpid());
-  unsigned int tv_sec = t.tv_sec;
-  unsigned int tv_usec = t.tv_usec;
+  unsigned int tv_sec = static_cast<unsigned int>(t.tv_sec);
+  unsigned int tv_usec = static_cast<unsigned int>(t.tv_usec);
   // Since tv_usec never fills more than 11 bits we shift it to fill
   // in the slow-changing high-order bits of tv_sec.
   return tv_sec ^ (tv_usec << 21) ^ pid;