jscript: math.c added Math.random() function modified: dlls/jscript/math.c

Patrick Rudolph patrick1804 at web.de
Fri Dec 12 01:35:03 CST 2008


---
 dlls/jscript/math.c |   13 +++++++++++--
 1 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/dlls/jscript/math.c b/dlls/jscript/math.c
index 8f5bbb9..82f5bd8 100644
--- a/dlls/jscript/math.c
+++ b/dlls/jscript/math.c
@@ -467,8 +467,13 @@ static HRESULT Math=5Fpow(DispatchEx *dispex, LCID lcid=
, WORD flags, DISPPARAMS *d
 static HRESULT Math=5Frandom(DispatchEx *dispex, LCID lcid, WORD flags, DIS=
PPARAMS *dp,
         VARIANT *retv, jsexcept=5Ft *ei, IServiceProvider *sp)
 {
-    FIXME("\n");
-    return E=5FNOTIMPL;
+    if(arg=5Fcnt(dp) > 0) {
+        FIXME("invalid arg=5Fcnt %d\n", arg=5Fcnt(dp));
+        return E=5FNOTIMPL;
+    }
+    if(retv)
+        num=5Fset=5Fval(retv, ((double)rand()/(double)RAND=5FMAX));
+    return S=5FOK;
 }
=20
 /* ECMA-262 3rd Edition    15.8.2.15 */
@@ -555,5 +560,9 @@ static const builtin=5Finfo=5Ft Math=5Finfo =3D {
=20
 HRESULT create=5Fmath(script=5Fctx=5Ft *ctx, DispatchEx **ret)
 {
+    /*randomize srand() function */
+    struct timeval tv;
+    gettimeofday(&tv,NULL);
+    srand(tv.tv=5Fsec *1000+(tv.tv=5Fusec/1000));
     return create=5Fdispex(ctx, &Math=5Finfo, NULL, ret);
 }
--=20
1.5.6.3


=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F
Sensationsangebot verl=E4ngert: WEB.DE FreeDSL - Telefonanschluss + DSL
f=FCr nur 16,37 Euro/mtl.!* http://dsl.web.de/=3Fac=3DOM.AD.AD008K15039B7069a




More information about the wine-patches mailing list