]> git.cworth.org Git - apitrace/commitdiff
Use rand() on windows.
authorJosé Fonseca <jfonseca@vmware.com>
Sun, 16 Jun 2013 08:42:51 +0000 (09:42 +0100)
committerJosé Fonseca <jfonseca@vmware.com>
Sun, 16 Jun 2013 08:58:44 +0000 (09:58 +0100)
common/os.hpp
common/trace_fast_callset.cpp

index 985ff6b9ccb84e8a291941017f76f4f9f7c873dc..741d345bf18b30d1c702a1770db3e245f7276611 100644 (file)
@@ -84,6 +84,18 @@ void abort(void);
 void setExceptionCallback(void (*callback)(void));
 void resetExceptionCallback(void);
 
+/**
+ * Returns a pseudo-random integer in the range 0 to RAND_MAX.
+ */
+static inline int
+random(void) {
+#ifdef _WIN32
+    return ::rand();
+#else
+    return ::random();
+#endif
+}
+
 } /* namespace os */
 
 #endif /* _OS_HPP_ */
index 3b5c570b088b4eac9c6d38ec0f630050242f92f4..5aebfd21cba9bf47ec2e4702e7df8d2b8695ffd0 100644 (file)
@@ -31,6 +31,7 @@
 #include <stdlib.h>
 #include <limits>
 
+#include "os.hpp"
 #include "trace_fast_callset.hpp"
 
 using namespace trace;
@@ -79,7 +80,7 @@ static int
 random_level (void)
 {
     /* tricky bit -- each bit is '1' 75% of the time */
-    long int bits = random() | random();
+    long int bits = os::random() | os::random();
     int        level = 1;
 
     while (level < MAX_LEVEL)