--- parser3/src/classes/math.C 2003/04/25 11:56:36 1.31 +++ parser3/src/classes/math.C 2003/07/24 06:49:22 1.33 @@ -8,7 +8,7 @@ Copyright (C) 1996, 1997, 1998, 1999 Theodore Ts'o. */ -static const char* IDENT_MATH_C="$Date: 2003/04/25 11:56:36 $"; +static const char* IDENT_MATH_C="$Date: 2003/07/24 06:49:22 $"; #include "pa_common.h" #include "pa_vint.h" @@ -148,7 +148,7 @@ static void random(void *buffer, size_t static inline int _random(uint top) { uint raw; random(&raw, sizeof(raw)); - return int(double(raw) / 0x100000000 * top ); + return int(double(raw) / 0xFFFFFFFFu * top ); } static void _random(Request& r, const String& method_name, MethodParams *params) { Pool& pool=r.pool(); @@ -347,7 +347,7 @@ static void _uuid(Request& r, const Stri uuid.time_hi_and_version = (uuid.time_hi_and_version & 0x0FFF) | 0x4000; // format - const int uuid_cstr_bufsize=32+1/*for zero-teminator*/; + const int uuid_cstr_bufsize=36+1/*for zero-teminator*/+1/*buggy snprintfs*/; char *uuid_cstr=(char *)pool.malloc(uuid_cstr_bufsize); snprintf(uuid_cstr, uuid_cstr_bufsize, "%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X",