[freewrl] remove JS_NewNumberValue calls
Tom Callaway
spot at fedoraproject.org
Sat Feb 2 00:34:34 UTC 2013
commit 36288af28aea07d7f5e52fdd2ad7a2388108734c
Author: Tom Callaway <spot at fedoraproject.org>
Date: Sat Feb 2 01:37:11 2013 +0100
remove JS_NewNumberValue calls
freewrl-1.22.13-no-JS_NewNumberValue.patch | 516 ++++++++++++++++++++++++++++
freewrl-1.22.13-wrappers-removed-api.patch | 21 +-
freewrl.spec | 4 +-
3 files changed, 520 insertions(+), 21 deletions(-)
---
diff --git a/freewrl-1.22.13-no-JS_NewNumberValue.patch b/freewrl-1.22.13-no-JS_NewNumberValue.patch
new file mode 100644
index 0000000..7549617
--- /dev/null
+++ b/freewrl-1.22.13-no-JS_NewNumberValue.patch
@@ -0,0 +1,516 @@
+diff -upa freewrl-1.22.13/src/lib/world_script/fieldGet.c.jsnnv freewrl-1.22.13/src/lib/world_script/fieldGet.c
+--- freewrl-1.22.13/src/lib/world_script/fieldGet.c.jsnnv 2013-02-02 01:21:25.647653428 +0100
++++ freewrl-1.22.13/src/lib/world_script/fieldGet.c 2013-02-02 01:22:42.570658486 +0100
+@@ -453,7 +453,7 @@ int set_one_MFElementType(int tonode, in
+ /* create a new SFFloat object */
+
+ fp = (float *)fp_in;
+- JS_NewNumberValue(cx,(double)*fp,&newjsval);
++ newjsval = JS_NumberValue((double)*fp);
+ fp_in = offsetPointer_deref(float *,fp_in,elementlen);
+
+ /* put this object into the MF class */
+@@ -492,7 +492,7 @@ int set_one_MFElementType(int tonode, in
+ /* create a new SFTime object */
+
+ dp = (double *)dp_in;
+- JS_NewNumberValue(cx,(double)*dp,&newjsval);
++ newjsval = JS_NumberValue((double)*dp);
+ dp_in = offsetPointer_deref(double *,dp_in,elementlen);
+
+ /* put this object into the MF class */
+diff -upa freewrl-1.22.13/src/lib/world_script/jsUtils.c.jsnnv freewrl-1.22.13/src/lib/world_script/jsUtils.c
+--- freewrl-1.22.13/src/lib/world_script/jsUtils.c.jsnnv 2013-02-02 01:20:01.409647889 +0100
++++ freewrl-1.22.13/src/lib/world_script/jsUtils.c 2013-02-02 01:28:38.935681919 +0100
+@@ -380,13 +380,13 @@ void X3D_ECMA_TO_JS(JSContext *cx, void
+
+ case FIELDTYPE_SFFloat: {
+ memcpy ((void *) &fl, Data, datalen);
+- JS_NewNumberValue(cx,(double)fl,newval);
++ *newval = JS_NumberValue((double)fl);
+ break;
+ }
+ case FIELDTYPE_SFDouble:
+ case FIELDTYPE_SFTime: {
+ memcpy ((void *) &dl, Data, datalen);
+- JS_NewNumberValue(cx,dl,newval);
++ *newval = JS_NumberValue(dl);
+ break;
+ }
+ case FIELDTYPE_SFBool:
+@@ -1062,7 +1062,7 @@ static JSBool getSFNodeField (JSContext
+ printf("getSFNodeField %d : fVal=%d\n",__LINE__,fVal);
+ #endif
+
+- JS_NewNumberValue(context,(double)fVal,vp);
++ *vp = JS_NumberValue((double)fVal);
+ return JS_TRUE;
+ } else {
+ #if TRACK_FIFO_MSG
+diff -upa freewrl-1.22.13/src/lib/world_script/jsVRMLClasses.c.jsnnv freewrl-1.22.13/src/lib/world_script/jsVRMLClasses.c
+--- freewrl-1.22.13/src/lib/world_script/jsVRMLClasses.c.jsnnv 2013-02-02 01:24:56.092667266 +0100
++++ freewrl-1.22.13/src/lib/world_script/jsVRMLClasses.c 2013-02-02 01:30:12.700688085 +0100
+@@ -950,10 +950,7 @@ JSBool _simplecopyElements (JSContext *c
+ ii = JSVAL_TO_INT(val);
+ dd = (double) ii;
+ /* printf ("integer is %d doulbe %lf\n",ii,dd); */
+- if (JS_NewNumberValue(cx,dd,&val) == JS_FALSE) {
+- printf( "JS_NewNumberValue failed for %f in simplecopyelements.\n",dd);
+- return JS_FALSE;
+- }
++ val = JS_NumberValue(dd);
+ }
+ }
+
+@@ -1554,10 +1551,7 @@ doMFSetProperty(JSContext *cx, JSObject
+ ii = JSVAL_TO_INT(*vp);
+ dd = (double) ii;
+ /* printf ("integer is %d doulbe %lf\n",ii,dd); */
+- if (JS_NewNumberValue(cx,dd,vp) == JS_FALSE) {
+- printf( "JS_NewNumberValue failed for %f in simplecopyelements.\n",dd);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(dd);
+ }
+ }
+
+diff -upa freewrl-1.22.13/src/lib/world_script/jsVRMLClasses.h.jsnnv freewrl-1.22.13/src/lib/world_script/jsVRMLClasses.h
+--- freewrl-1.22.13/src/lib/world_script/jsVRMLClasses.h.jsnnv 2013-02-02 01:06:58.194596388 +0100
++++ freewrl-1.22.13/src/lib/world_script/jsVRMLClasses.h 2013-02-02 01:08:57.553604237 +0100
+@@ -84,14 +84,14 @@ of garbage collection
+
+
+ #define SET_JS_TICKTIME_RV(possibleRetVal) { jsval zimbo; \
+- JS_NewNumberValue(cx, TickTime(), &zimbo); \
++ zimbo = JS_NumberValue(TickTime()); \
+ if (!JS_DefineProperty(cx,obj, "__eventInTickTime", zimbo, JS_GET_PROPERTY_STUB, JS_SET_PROPERTY_STUB2, JSPROP_PERMANENT)) { \
+ printf( "JS_DefineProperty failed for \"__eventInTickTime\" at %s:%d.\n",__FILE__,__LINE__); \
+ return possibleRetVal; \
+ }}
+
+ #define SET_JS_TICKTIME() { jsval zimbo; \
+- JS_NewNumberValue(cx, TickTime(), &zimbo); \
++ zimbo = JS_NumberValue(TickTime()); \
+ if (!JS_DefineProperty(cx,obj, "__eventInTickTime", zimbo, JS_GET_PROPERTY_STUB, JS_SET_PROPERTY_STUB2, JSPROP_PERMANENT)) { \
+ printf( "JS_DefineProperty failed for \"__eventInTickTime\" at %s:%d.\n",__FILE__,__LINE__); \
+ return; \
+diff -upa freewrl-1.22.13/src/lib/world_script/jsVRML_MFClasses.c.jsnnv freewrl-1.22.13/src/lib/world_script/jsVRML_MFClasses.c
+--- freewrl-1.22.13/src/lib/world_script/jsVRML_MFClasses.c.jsnnv 2013-02-02 01:23:54.426663211 +0100
++++ freewrl-1.22.13/src/lib/world_script/jsVRML_MFClasses.c 2013-02-02 01:30:51.210690617 +0100
+@@ -923,10 +923,7 @@ static void _setmatrix (JSContext *cx, J
+ int i;
+ for (i=0; i<16; i++) {
+
+- if (JS_NewNumberValue(cx, matrix[i],&val) == JS_FALSE) {
+- printf ("problem creating id matrix\n");
+- return;
+- }
++ val = JS_NumberValue(matrix[i]);
+
+ if (!JS_SetElement(cx, obj, (uint32_t) i, &val)) {
+ printf( "JS_DefineElement failed for arg %u in VrmlMatrixSetTransform.\n", i);
+@@ -1681,7 +1678,7 @@ VrmlMatrixGetProperty(JSContext *cx, JSO
+ _index = JSVAL_TO_INT(id);
+
+ if (_index >= _length) {
+- JS_NewNumberValue(cx,0.0,vp);
++ *vp = JS_NumberValue(0.0);
+ if (!JS_DefineElement(cx, obj, (uint32_t) _index, *vp, JS_GET_PROPERTY_STUB, JS_SET_PROPERTY_CHECK, JSPROP_ENUMERATE)) {
+ printf( "JS_DefineElement failed in VrmlMatrixGetProperty.\n");
+ return JS_FALSE;
+diff -upa freewrl-1.22.13/src/lib/world_script/jsVRML_SFClasses.c.jsnnv freewrl-1.22.13/src/lib/world_script/jsVRML_SFClasses.c
+--- freewrl-1.22.13/src/lib/world_script/jsVRML_SFClasses.c.jsnnv 2013-02-02 01:09:05.924604787 +0100
++++ freewrl-1.22.13/src/lib/world_script/jsVRML_SFClasses.c 2013-02-02 01:33:48.050702245 +0100
+@@ -161,11 +161,8 @@ SFColorGetHSV(JSContext *cx, uint32_t ar
+
+ result = JS_NewArrayObject(cx, 3, NULL);
+ ADD_ROOT(cx, result);
+- for(i=0; i<3; i++) {
+- if (JS_NewNumberValue(cx, xp[i],&_v) == JS_FALSE) {
+- printf( "JS_NewDouble failed for %f in SFColorGetHSV.\n", xp[i]);
+- return JS_FALSE;
+- }
++ for(i=0; i<3; i++) {
++ _v = JS_NumberValue(xp[i]);
+ JS_SetElement(cx, result, (uint32_t)i, &_v);
+ }
+
+@@ -386,30 +383,15 @@ SFColorGetProperty(JSContext *cx, JSObje
+ switch (JSVAL_TO_INT(id)) {
+ case 0:
+ d = (ptr->v).c[0];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFColorGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 1:
+ d = (ptr->v).c[1];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFColorGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 2:
+ d = (ptr->v).c[2];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFColorGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ }
+ }
+@@ -503,17 +485,17 @@ SFColorRGBAGetHSV(JSContext *cx, uint32_
+ }
+
+ /* construct new double before conversion? */
+- JS_NewNumberValue(cx,hue,&_v); /* was: _v = DOUBLE_TO_JSVAL(&hue); */
++ _v = JS_NumberValue(hue); /* was: _v = DOUBLE_TO_JSVAL(&hue); */
+ if (!JS_SetElement(cx, _arrayObj, 0, &_v)) {
+ printf( "JS_SetElement failed for hue in SFColorRGBAGetHSV.\n");
+ return JS_FALSE;
+ }
+- JS_NewNumberValue(cx,saturation,&_v); /* was: _v = DOUBLE_TO_JSVAL(&saturation); */
++ _v = JS_NumberValue(saturation); /* was: _v = DOUBLE_TO_JSVAL(&saturation); */
+ if (!JS_SetElement(cx, _arrayObj, 1, &_v)) {
+ printf( "JS_SetElement failed for saturation in SFColorRGBAGetHSV.\n");
+ return JS_FALSE;
+ }
+- JS_NewNumberValue(cx,value,&_v); /* was: _v = DOUBLE_TO_JSVAL(&value); */
++ _v = JS_NumberValue(value); /* was: _v = DOUBLE_TO_JSVAL(&value); */
+ if (!JS_SetElement(cx, _arrayObj, 2, &_v)) {
+ printf( "JS_SetElement failed for value in SFColorRGBAGetHSV.\n");
+ return JS_FALSE;
+@@ -733,39 +715,19 @@ SFColorRGBAGetProperty(JSContext *cx, JS
+ switch (JSVAL_TO_INT(id)) {
+ case 0:
+ d = (ptr->v).c[0];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFColorRGBAGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 1:
+ d = (ptr->v).c[1];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFColorRGBAGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 2:
+ d = (ptr->v).c[2];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFColorRGBAGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 3:
+ d = (ptr->v).c[3];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFColorRGBAGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ }
+ }
+@@ -1107,9 +1069,7 @@ SFNodeToString(JSContext *cx, uint32_t a
+ /* printf ("double is %lf\n",nv); */
+
+ /* printf ("nv %lf, handle %lu and %p\n",nv,ptr->handle,ptr->handle); */
+- if (!JS_NewNumberValue(cx, nv, rval)) {
+- ConsoleMessage ("Conversion issue in SFNodeToString");
+- }
++ *rval = JS_NumberValue(nv);
+ }
+
+
+@@ -1681,7 +1641,7 @@ SFNodeSetProperty(JSContext *cx, JSObjec
+ //SET_JS_TICKTIME()
+ {
+ jsval zimbo;
+- JS_NewNumberValue(cx2, TickTime(), &zimbo);
++ zimbo = JS_NumberValue(TickTime());
+ if (!JS_DefineProperty(cx2,obj2, "__eventInTickTime", zimbo, JS_GET_PROPERTY_STUB, JS_SET_PROPERTY_STUB2, JSPROP_PERMANENT)) {
+ printf( "JS_DefineProperty failed for __eventInTickTime at %s:%d.\n",__FILE__,__LINE__);
+ return JS_FALSE;
+@@ -2520,39 +2480,19 @@ SFRotationGetProperty(JSContext *cx, JSO
+ switch (JSVAL_TO_INT(id)) {
+ case 0:
+ d = (ptr->v).c[0];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFRotationGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 1:
+ d = (ptr->v).c[1];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFRotationGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 2:
+ d = (ptr->v).c[2];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFRotationGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 3:
+ d = (ptr->v).c[3];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFRotationGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ }
+ }
+@@ -2787,10 +2727,7 @@ JSBool SFVec2fGeneric( JSContext *cx, JS
+ (_retNative->v).c[0] = (float) d0;
+ (_retNative->v).c[1] = (float) d1;
+ } else if (retNumeric) {
+- if (JS_NewNumberValue(cx,d,rval) == JS_FALSE) {
+- printf( "JS_NewDouble failed for %f in SFVec2f.\n",d);
+- return JS_FALSE;
+- }
++ *rval = JS_NumberValue(d);
+ }
+
+ #ifdef JSVRMLCLASSESVERBOSE
+@@ -3075,21 +3012,11 @@ SFVec2fGetProperty(JSContext *cx, JSObje
+ switch (JSVAL_TO_INT(id)) {
+ case 0:
+ d = (ptr->v).c[0];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec2fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 1:
+ d = (ptr->v).c[1];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec2fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ }
+ }
+@@ -3349,10 +3276,7 @@ JSBool SFVec3fGeneric( JSContext *cx, JS
+ (_retNative->v).c[1] = (float) d1;
+ (_retNative->v).c[2] = (float) d2;
+ } else if (retNumeric) {
+- if (JS_NewNumberValue(cx,d,rval) == JS_FALSE) {
+- printf( "JS_NewDouble failed for %f in SFVec3f.\n",d);
+- return JS_FALSE;
+- }
++ *rval = JS_NumberValue(d);
+ }
+ #ifdef JSVRMLCLASSESVERBOSE
+ if (retSFVec3f){
+@@ -3717,30 +3641,15 @@ SFVec3fGetProperty(JSContext *cx, JSObje
+ switch (JSVAL_TO_INT(id)) {
+ case 0:
+ d = (ptr->v).c[0];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec3fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 1:
+ d = (ptr->v).c[1];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec3fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 2:
+ d = (ptr->v).c[2];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec3fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ }
+ } else {
+@@ -4001,10 +3910,7 @@ JSBool SFVec3dGeneric( JSContext *cx, JS
+ (_retNative->v).c[1] = d1;
+ (_retNative->v).c[2] = d2;
+ } else if (retNumeric) {
+- if (JS_NewNumberValue(cx,d,rval) == JS_FALSE) {
+- printf( "JS_NewDouble failed for %f in SFVec3d.\n",d);
+- return JS_FALSE;
+- }
++ *rval = JS_NumberValue(d);
+ }
+ #ifdef JSVRMLCLASSESVERBOSE
+ if (retSFVec3d){
+@@ -4365,30 +4271,15 @@ SFVec3dGetProperty(JSContext *cx, JSObje
+ switch (JSVAL_TO_INT(id)) {
+ case 0:
+ d = (ptr->v).c[0];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec3dGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 1:
+ d = (ptr->v).c[1];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec3dGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 2:
+ d = (ptr->v).c[2];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec3dGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ }
+ } else {
+@@ -4663,39 +4554,19 @@ SFVec4fGetProperty(JSContext *cx, JSObje
+ switch (JSVAL_TO_INT(id)) {
+ case 0:
+ d = (ptr->v).c[0];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec4fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 1:
+ d = (ptr->v).c[1];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec4fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 2:
+ d = (ptr->v).c[2];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec4fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 3:
+ d = (ptr->v).c[3];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec4fGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ }
+ } else {
+@@ -4975,39 +4846,19 @@ SFVec4dGetProperty(JSContext *cx, JSObje
+ switch (JSVAL_TO_INT(id)) {
+ case 0:
+ d = (ptr->v).c[0];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec4dGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 1:
+ d = (ptr->v).c[1];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec4dGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 2:
+ d = (ptr->v).c[2];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec4dGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ case 3:
+ d = (ptr->v).c[3];
+- if (JS_NewNumberValue(cx, d, vp) == JS_FALSE) {
+- printf(
+- "JS_NewDouble failed for %f in SFVec4dGetProperty.\n",
+- d);
+- return JS_FALSE;
+- }
++ *vp = JS_NumberValue(d);
+ break;
+ }
+ } else {
diff --git a/freewrl-1.22.13-wrappers-removed-api.patch b/freewrl-1.22.13-wrappers-removed-api.patch
index a7d8f24..2a05c4e 100644
--- a/freewrl-1.22.13-wrappers-removed-api.patch
+++ b/freewrl-1.22.13-wrappers-removed-api.patch
@@ -1,24 +1,7 @@
-diff -upa freewrl-1.22.13/src/lib/world_script/JScript.c.wrappers freewrl-1.22.13/src/lib/world_script/JScript.c
---- freewrl-1.22.13/src/lib/world_script/JScript.c.wrappers 2013-02-01 16:50:22.080423176 +0100
-+++ freewrl-1.22.13/src/lib/world_script/JScript.c 2013-02-01 16:50:41.045422498 +0100
-@@ -81,6 +81,13 @@ static JSClass staticGlobalClass = {
-
- #endif // HAVE_JAVASCRIPT
-
-+static JSBool JS_NewNumberValue(JSContext *cx, double d, jsval *rval)
-+{
-+ *rval = JS_NumberValue(d);
-+ if (JSVAL_IS_NUMBER(*rval))
-+ return JS_TRUE;
-+ return JS_FALSE;
-+}
-
- typedef struct pJScript{
- /* Script name/type table */
diff -upa freewrl-1.22.13/src/lib/world_script/JScript.h.wrappers freewrl-1.22.13/src/lib/world_script/JScript.h
--- freewrl-1.22.13/src/lib/world_script/JScript.h.wrappers 2013-02-01 16:47:41.128428929 +0100
+++ freewrl-1.22.13/src/lib/world_script/JScript.h 2013-02-01 16:53:37.180416202 +0100
-@@ -32,6 +32,15 @@ $Id: JScript.h,v 1.9 2011/01/04 19:50:19
+@@ -32,6 +32,13 @@ $Id: JScript.h,v 1.9 2011/01/04 19:50:19
#include <system_js.h>
@@ -29,8 +12,6 @@ diff -upa freewrl-1.22.13/src/lib/world_script/JScript.h.wrappers freewrl-1.22.1
+#define JSVAL_IS_OBJECT(obj) (JSVAL_IS_NULL(obj) || !JSVAL_IS_PRIMITIVE(obj))
+#endif
+
-+static JSBool JS_NewNumberValue(JSContext *cx, double d, jsval *rval);
-+
void kill_javascript(void);
void cleanupDie(int num, const char *msg);
void JSMaxAlloc(void);
diff --git a/freewrl.spec b/freewrl.spec
index ce16307..ed06131 100644
--- a/freewrl.spec
+++ b/freewrl.spec
@@ -16,9 +16,10 @@ Patch3: freewrl-1.22.13-use-JS_NewGlobalObject.patch
# Sometimes JS_GetPrototype has one arg, sometimes two, now three.
# What day is it today?
Patch4: freewrl-1.22.13-JS_GetPrototype-three-args.patch
-# Some wrappers for removed API
+# Some fixes for removed API
Patch5: freewrl-1.22.13-wrappers-removed-api.patch
Patch6: freewrl-1.22.13-no-JS_ConstructObject.patch
+Patch7: freewrl-1.22.13-no-JS_NewNumberValue.patch
BuildRequires: zlib-devel, freetype-devel, fontconfig-devel
BuildRequires: imlib2-devel, nspr-devel, xulrunner-devel
BuildRequires: expat-devel, libXxf86vm-devel, libX11-devel, libXext-devel
@@ -86,6 +87,7 @@ browser plugin for Firefox (and other xulrunner compatible browsers).
%patch4 -p1 -b .jsgp
%patch5 -p1 -b .wrappers
%patch6 -p1 -b .nojsco
+%patch7 -p1 -b .jsnvv
cp %{SOURCE1} .
# Don't need it.
rm -rf appleOSX/
More information about the scm-commits
mailing list