Changeset: 29e2ba371d58 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=29e2ba371d58
Modified Files:
        monetdb5/mal/mal_dataflow.c
        monetdb5/modules/mal/mal_mapi.c
Branch: Jul2015
Log Message:

On Windows, rand() is per thread, so call srand on thread start.
This should fix bug 3730.


diffs (35 lines):

diff --git a/monetdb5/mal/mal_dataflow.c b/monetdb5/mal/mal_dataflow.c
--- a/monetdb5/mal/mal_dataflow.c
+++ b/monetdb5/mal/mal_dataflow.c
@@ -313,6 +313,9 @@ DFLOWworker(void *T)
 
        thr = THRnew("DFLOWworker");
 
+#ifdef _MSC_VER
+       srand((unsigned int) GDKusec());
+#endif
        GDKsetbuf(GDKmalloc(GDKMAXERRLEN)); /* where to leave errors */
        GDKerrbuf[0] = 0;
        MT_lock_set(&dataflowLock, "DFLOWworker");
diff --git a/monetdb5/modules/mal/mal_mapi.c b/monetdb5/modules/mal/mal_mapi.c
--- a/monetdb5/modules/mal/mal_mapi.c
+++ b/monetdb5/modules/mal/mal_mapi.c
@@ -111,6 +111,9 @@ doChallenge(void *data)
        bstream *bs;
        int len = 0;
 
+#ifdef _MSC_VER
+       srand((unsigned int) GDKusec());
+#endif
        GDKfree(data);
        if (buf == NULL || fdin == NULL || fdout == NULL){
                if (fdin) {
@@ -647,7 +650,7 @@ SERVERlisten(int *Port, str *Usockfile, 
 
        /* seed the randomiser such that our challenges aren't
         * predictable... */
-       srand((int)time(NULL));
+       srand((unsigned int) GDKusec());
 
        SERVERannounce(server.sin_addr, port, usockfile);
        if (usockfile)
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to