[PATCH] math:random() missing its seed
Nils Werner <[email protected]> Thu, 24 Jan 2013 20:08:54 +0100
| Newsgroups | gmane.comp.gnome.lib.xslt |
|---|---|
| Message-ID | <CACYQ+4zWcaFet7yUBLffQwSNAJNDRr=5S-GXbXYibdqh_3Hemw@mail.gmail.com> |
Hey, I recently noticed that the current implementation of math:random() repeatedly always produces the same random numbers. After looking into the code and digging up a few messages from 2008 (http://comments.gmane.org/gmane.comp.gnome.lib.xml.general/13910) I realised that the current implementation is missing its seed. My modifications only apply to xsltproc itself. I figured that for now software linking to libxslt may either already have run srand() itself or may be required to do so in order to use the lib. I also absolutely understand the need for a deterministic and reproducible seed, so besides running srand(time(NULL)) once during program startup I implemented a command line parameter --seed-rand with wich the seed can be overridden manually. The patch can be found at https://github.com/nils-werner/libxslt/compare/master...seedrand.patch Regards, Nils Werner