summaryrefslogtreecommitdiffstats
path: root/multimedia/mediatomb/mediatomb-0.12.1-mozjs185.patch
blob: eb67540d7c69f5b63f8c592d9e37c832ecfa35d9 (plain)
--- mediatomb-0.12.1/configure.ac	2010-04-07 18:38:51.000000000 -0400
+++ mediatomb-0.12.1/configure.ac	2011-11-16 21:56:46.000000000 -0500
@@ -1006,14 +1006,23 @@
                             MOZLIB=smjs
                         ],
                         [
-                            LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs $ADD_PTHREAD_CFLAGS"
-                            AC_CHECK_LIB(mozjs, JS_NewObject,
+                            LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs185 $ADD_PTHREAD_CFLAGS"
+                            AC_CHECK_LIB(mozjs185, JS_NewObject,
                                 [
-                                    JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs"
-                                    MOZLIB=mozjs
+                                    JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs185"
+                                    MOZLIB=mozjs185
                                 ],
                                 [
-                                    AC_MSG_ERROR([Spidermonkey not found in requested location $JS_SEARCH_LIBS])
+	                            LDFLAGS="-L$JS_SEARCH_LIBS $LDFLAGS_SAVE -lmozjs $ADD_PTHREAD_CFLAGS"
+	                            AC_CHECK_LIB(mozjs, JS_NewObject,
+	                                [
+	                                    JS_LIBS="-L$JS_SEARCH_LIBS -lmozjs"
+	                                    MOZLIB=mozjs
+	                                ],
+	                                [
+	                                    AC_MSG_ERROR([Spidermonkey not found in requested location $JS_SEARCH_LIBS])
+	                                ]
+	                            )
                                 ]
                             )
                         ]
@@ -1036,39 +1045,58 @@
                 ],
                 [
                     unset ac_cv_lib_smjs_JS_NewObject
-                    AC_CHECK_LIB(mozjs, JS_NewObject,
+                    AC_CHECK_LIB(mozjs185, JS_NewObject,
                         [
-                            MOZLIB=mozjs
-                            JS_LIBS="-lmozjs"
+                            MOZLIB=mozjs185
+                            JS_LIBS="-lmozjs185"
                         ],
                         [
-                            LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE $ADD_PTHREAD_CFLAGS"
-                            unset ac_cv_lib_js_JS_NewObject
-                            AC_CHECK_LIB(js, JS_NewObject,
-                                [
-                                    JS_LIBS="-L$SEARCH_DIR_LIBS -ljs"
-                                    MOZLIB=js
-                                ],
-                                [
-                                    unset ac_cv_lib_smjs_JS_NewObject
-                                    AC_CHECK_LIB(smjs, JS_NewObject,
-                                        [
-                                            JS_LIBS="-L$SEARCH_DIR_LIBS -lsmjs"
-                                            MOZLIB=smjs
-                                        ],
-                                        [
-                                            LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs"
-                                            unset ac_cv_lib_mozjs_JS_NewObject
-                                            AC_CHECK_LIB(mozjs, JS_NewObject,
-                                                [
-                                                    JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs"
-                                                    MOZLIB=mozjs
-                                                ],
-                                                [
-                                                    JS_OK=missing
-                                                    AC_MSG_RESULT(libjs/libsmjs link failed, giving up)
-                                                ]
-                                            )
+	                    unset ac_cv_lib_smjs_JS_NewObject
+	                    AC_CHECK_LIB(mozjs, JS_NewObject,
+	                        [
+	                            MOZLIB=mozjs
+	                            JS_LIBS="-lmozjs"
+	                        ],
+	                        [
+	                            LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE $ADD_PTHREAD_CFLAGS"
+	                            unset ac_cv_lib_js_JS_NewObject
+	                            AC_CHECK_LIB(js, JS_NewObject,
+	                                [
+	                                    JS_LIBS="-L$SEARCH_DIR_LIBS -ljs"
+	                                    MOZLIB=js
+	                                ],
+	                                [
+	                                    unset ac_cv_lib_smjs_JS_NewObject
+	                                    AC_CHECK_LIB(smjs, JS_NewObject,
+	                                        [
+	                                            JS_LIBS="-L$SEARCH_DIR_LIBS -lsmjs"
+	                                            MOZLIB=smjs
+	                                        ],
+	                                        [
+	                                            LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs185"
+	                                            unset ac_cv_lib_mozjs_JS_NewObject
+	                                            AC_CHECK_LIB(mozjs185, JS_NewObject,
+	                                                [
+	                                                    JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs185"
+	                                                    MOZLIB=mozjs185
+	                                                ],
+	                                                [
+		                                            LDFLAGS="-L$SEARCH_DIR_LIBS $LDFLAGS_SAVE -lmozjs"
+		                                            unset ac_cv_lib_mozjs_JS_NewObject
+		                                            AC_CHECK_LIB(mozjs, JS_NewObject,
+		                                                [
+		                                                    JS_LIBS="-L$SEARCH_DIR_LIBS -lmozjs"
+		                                                    MOZLIB=mozjs
+		                                                ],
+		                                                [
+		                                                    JS_OK=missing
+		                                                    AC_MSG_RESULT(libjs/libsmjs link failed, giving up)
+		                                                ]
+		                                            )
+	                                                ]
+	                                            )
+	                                        ]
+	                                    )
                                         ]
                                     )
                                 ]
diff -ur mediatomb-0.12.1.orig/build/Makefile.in mediatomb-0.12.1/build/Makefile.in
--- mediatomb-0.12.1.orig/build/Makefile.in	2010-04-07 18:40:15.000000000 -0400
+++ mediatomb-0.12.1/build/Makefile.in	2011-11-16 22:28:06.000000000 -0500
@@ -257,7 +257,7 @@
 CXX = @CXX@
 CXXCPP = @CXXCPP@
 CXXDEPMODE = @CXXDEPMODE@
-CXXFLAGS = @CXXFLAGS@
+CXXFLAGS = -fpermissive @CXXFLAGS@
 CYGPATH_W = @CYGPATH_W@
 DB_AUTOCREATE_OPTION_ENABLED = @DB_AUTOCREATE_OPTION_ENABLED@
 DB_AUTOCREATE_OPTION_REQUESTED = @DB_AUTOCREATE_OPTION_REQUESTED@
diff -ur mediatomb-0.12.1.orig/src/scripting/import_script.cc mediatomb-0.12.1/src/scripting/import_script.cc
--- mediatomb-0.12.1.orig/src/scripting/import_script.cc	2010-03-25 10:58:05.000000000 -0400
+++ mediatomb-0.12.1/src/scripting/import_script.cc	2011-11-16 22:28:06.000000000 -0500
@@ -53,8 +53,8 @@
     try 
     {
         load(scriptPath);
-        root = JS_NewScriptObject(cx, script);
-        JS_AddNamedRoot(cx, &root, "ImportScript");
+        root = JS_NewObject(cx, NULL, script, NULL);
+        JS_AddNamedObjectRoot(cx, &root, "ImportScript");
     }
     catch (Exception ex)
     {
@@ -117,7 +117,7 @@
 #endif
     
     if (root)
-        JS_RemoveRoot(cx, &root);
+        JS_RemoveObjectRoot(cx, &root);
 
 #ifdef JS_THREADSAFE
     JS_EndRequest(cx);
diff -ur mediatomb-0.12.1.orig/src/scripting/js_functions.cc mediatomb-0.12.1/src/scripting/js_functions.cc
--- mediatomb-0.12.1.orig/src/scripting/js_functions.cc	2010-03-25 10:58:05.000000000 -0400
+++ mediatomb-0.12.1/src/scripting/js_functions.cc	2011-11-16 22:28:21.000000000 -0500
@@ -49,30 +49,45 @@
 extern "C" {
 
 JSBool 
-js_print(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+js_print(JSContext *cx, uintN argc, jsval *argv)
 {
-    uintN i;
+    uintN i, j;
     JSString *str;
 
     for (i = 0; i < argc; i++) 
     {
-        str = JS_ValueToString(cx, argv[i]);
+    	String fmtStr;
+    	for (j = 0; j < argc; j++)
+    	{
+    		if (j == i)
+    			fmtStr = fmtStr + "S";
+    		else
+    			fmtStr = fmtStr + "*";
+    	}
+    	if(!JS_ConvertArguments(cx, 1, JS_ARGV(cx, argv), fmtStr.c_str(), &str))
+		{
+			log_debug("Could not parse input arguments\n");
+			return JS_TRUE;
+		}
+
         if (!str)
             return JS_TRUE;
-        argv[i] = STRING_TO_JSVAL(str);
-        log_js("%s\n", JS_GetStringBytes(str));
+
+        char * log_str = JS_EncodeString(cx, str);
+        log_js("%s\n", log_str);
+        JS_free(cx, log_str);
     }
     return JS_TRUE;
 }
 
 JSBool
-js_copyObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+js_copyObject(JSContext *cx, uintN argc, jsval *argv)
 {
     jsval arg;
     JSObject *js_cds_obj;
     JSObject *js_cds_clone_obj;
 
-    Script *self = (Script *)JS_GetPrivate(cx, obj);
+    Script *self = (Script *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv));
 
     try
     {
@@ -91,7 +106,7 @@
 
         self->cdsObject2jsObject(cds_obj, js_cds_clone_obj);
 
-        *rval = OBJECT_TO_JSVAL(js_cds_clone_obj);
+        JS_SET_RVAL(cx, argv, OBJECT_TO_JSVAL(js_cds_clone_obj));
 
         return JS_TRUE;
 
@@ -110,28 +125,58 @@
 }
 
 JSBool
-js_addCdsObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+js_addCdsObject(JSContext *cx, uintN argc, jsval *argv)
 {
     try
     {
-        jsval arg;
-        JSString *str;
-        String path;
-        String containerclass;
+    	// Inputs from native code
+        JSObject *js_cds_obj = NULL;
+        JSString *str =  NULL;
+        JSString *cont = NULL;
 
-        JSObject *js_cds_obj;
+        String path = nil;
+        String containerclass = nil;
+
+        JSObject *obj = JS_THIS_OBJECT(cx, argv);
         JSObject *js_orig_obj = NULL;
         Ref<CdsObject> orig_object;
 
         Ref<StringConverter> p2i;
         Ref<StringConverter> i2i;
+        switch (argc)
+        {
+        case 0:
+        	log_debug("No input arguments given\n");
+        	return JS_FALSE;
+        case 1:
+			if(!JS_ConvertArguments(cx, 1, JS_ARGV(cx, argv), "o", &js_cds_obj))
+			{
+				log_debug("Could not parse input arguments\n");
+				return JS_TRUE;
+			}
+			break;
+        case 2:
+        	if(!JS_ConvertArguments(cx, 2, JS_ARGV(cx, argv), "oS", &js_cds_obj, &str))
+			{
+				log_debug("Could not parse input arguments\n");
+				return JS_TRUE;
+			}
+			break;
+        default:
+        	if(!JS_ConvertArguments(cx, 3, JS_ARGV(cx, argv), "oSS", &js_cds_obj, &str, &cont))
+			{
+				log_debug("Could not parse input arguments\n");
+				return JS_TRUE;
+			}
+			break;
+        }
 
         Script *self = (Script *)JS_GetPrivate(cx, obj);
 
         if (self == NULL)
         {
             log_debug("Could not retrieve class instance from global object\n");
-            return JS_FALSE;
+            return JS_TRUE;
         }
 
         if (self->whoami() == S_PLAYLIST)
@@ -142,26 +187,17 @@
         {
             i2i = StringConverter::i2i();
         }
- 
-        arg = argv[0];
-        if (!JSVAL_IS_OBJECT(arg))
-            return JS_TRUE;
-        if (!JS_ValueToObject(cx, arg, &js_cds_obj))
-            return JS_TRUE;
 
-        // root it
-        argv[0] = OBJECT_TO_JSVAL(js_cds_obj);
 
-        str = JS_ValueToString(cx, argv[1]);
         if (!str)
             path = _("/");
         else
-            path = JS_GetStringBytes(str);
+            path = JS_EncodeString(cx, str);
+
 
-        JSString *cont = JS_ValueToString(cx, argv[2]);
         if (cont)
         {
-            containerclass = JS_GetStringBytes(cont);
+            containerclass = JS_EncodeString(cx, cont);
             if (!string_ok(containerclass) || containerclass == "undefined")
                 containerclass = nil;
         }
@@ -177,9 +213,6 @@
             return JS_TRUE;
         }
 
-        // root it
-        argv[1] = OBJECT_TO_JSVAL(js_orig_obj);
-
         orig_object = self->jsObject2cdsObject(js_orig_obj, self->getProcessedObject());
         if (orig_object == nil)
             return JS_TRUE;
@@ -285,8 +318,7 @@
         JSString *str2 = JS_NewStringCopyN(cx, tmp.c_str(), tmp.length());
         if (!str2)
             return JS_TRUE;
-        *rval = STRING_TO_JSVAL(str2);
-
+        JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(str2)); 
         return JS_TRUE;
     }
     catch (ServerShutdownException se)
@@ -302,7 +334,7 @@
     return JS_TRUE;
 }
 
-static JSBool convert_charset_generic(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval, charset_convert_t chr)
+static JSBool convert_charset_generic(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, charset_convert_t chr)
 {
     try
     {
@@ -321,7 +353,7 @@
         {
             str = JS_ValueToString(cx, argv[0]);
             if (str)
-                result = JS_GetStringBytes(str);
+                result = JS_EncodeString(cx, str);
         }
 
         if (result != nil)
@@ -330,7 +362,7 @@
             JSString *str2 = JS_NewStringCopyN(cx, result.c_str(), result.length());
             if (!str2)
                 return JS_TRUE;
-            *rval = STRING_TO_JSVAL(str2);
+            JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(str2));
         }
     }
     catch (ServerShutdownException se)
@@ -347,24 +379,23 @@
 }
 
 
-JSBool js_f2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+JSBool js_f2i(JSContext *cx, uintN argc, jsval *argv)
 {
-     return convert_charset_generic(cx, obj, argc, argv, rval, F2I);
+     return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, F2I);
 }
 
-JSBool js_m2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+JSBool js_m2i(JSContext *cx, uintN argc, jsval *argv)
 {
-     return convert_charset_generic(cx, obj, argc, argv, rval, M2I);
-}
+     return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, M2I); }
 
-JSBool js_p2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+JSBool js_p2i(JSContext *cx, uintN argc, jsval *argv)
 {
-     return convert_charset_generic(cx, obj, argc, argv, rval, P2I);
+     return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, P2I);
 }
 
-JSBool js_j2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+JSBool js_j2i(JSContext *cx, uintN argc, jsval *argv)
 {
-     return convert_charset_generic(cx, obj, argc, argv, rval, J2I);
+     return convert_charset_generic(cx, JS_THIS_OBJECT(cx, argv), argc, argv, J2I);
 }
 
 } // extern "C"
diff -ur mediatomb-0.12.1.orig/src/scripting/js_functions.h mediatomb-0.12.1/src/scripting/js_functions.h
--- mediatomb-0.12.1.orig/src/scripting/js_functions.h	2010-03-25 10:58:05.000000000 -0400
+++ mediatomb-0.12.1/src/scripting/js_functions.h	2011-11-16 22:28:06.000000000 -0500
@@ -40,18 +40,18 @@
 extern "C" {
 
 /// \brief Log output.
-JSBool js_print(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval);
+JSBool js_print(JSContext *cx, uintN argc, jsval *argv);
 
 /// \brief Adds an object to the database.
-JSBool js_addCdsObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval);
+JSBool js_addCdsObject(JSContext *cx, uintN argc, jsval *argv);
 
 /// \brief Makes a copy of an CDS object.
-JSBool js_copyObject(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval);
+JSBool js_copyObject(JSContext *cx, uintN argc, jsval *argv);
 
-JSBool js_f2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval);
-JSBool js_m2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval);
-JSBool js_p2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval);
-JSBool js_j2i(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval);
+JSBool js_f2i(JSContext *cx, uintN argc, jsval *argv);
+JSBool js_m2i(JSContext *cx, uintN argc, jsval *argv);
+JSBool js_p2i(JSContext *cx, uintN argc, jsval *argv);
+JSBool js_j2i(JSContext *cx, uintN argc, jsval *argv);
 
 } // extern "C"
 
diff -ur mediatomb-0.12.1.orig/src/scripting/playlist_parser_script.cc mediatomb-0.12.1/src/scripting/playlist_parser_script.cc
--- mediatomb-0.12.1.orig/src/scripting/playlist_parser_script.cc	2010-03-25 10:58:05.000000000 -0400
+++ mediatomb-0.12.1/src/scripting/playlist_parser_script.cc	2011-11-16 22:28:06.000000000 -0500
@@ -46,9 +46,9 @@
 extern "C" {
 
 static JSBool
-js_readln(JSContext *cx, JSObject *obj, uintN argc, jsval *argv, jsval *rval)
+js_readln(JSContext *cx, uintN argc, jsval *argv)
 {
-    PlaylistParserScript *self = (PlaylistParserScript *)JS_GetPrivate(cx, obj);
+    PlaylistParserScript *self = (PlaylistParserScript *)JS_GetPrivate(cx, JS_THIS_OBJECT(cx, argv));
 
     String line;
     
@@ -69,7 +69,7 @@
 
     JSString *jsline = JS_NewStringCopyZ(cx, line.c_str());
 
-    *rval = STRING_TO_JSVAL(jsline);
+    JS_SET_RVAL(cx, argv, STRING_TO_JSVAL(jsline));
   
     return JS_TRUE;
 }
@@ -93,8 +93,8 @@
 
         String scriptPath = ConfigManager::getInstance()->getOption(CFG_IMPORT_SCRIPTING_PLAYLIST_SCRIPT); 
         load(scriptPath);
-        root = JS_NewScriptObject(cx, script);
-        JS_AddNamedRoot(cx, &root, "PlaylistScript");
+        root = JS_NewObject(cx, NULL, script, NULL);
+        JS_AddNamedObjectRoot(cx, &root, "PlaylistScript");
     }
     catch (Exception ex)
     {
@@ -245,7 +245,7 @@
 #endif
 
     if (root)
-        JS_RemoveRoot(cx, &root);
+        JS_RemoveObjectRoot(cx, &root);
 
 #ifdef JS_THREADSAFE
     JS_EndRequest(cx);
diff -ur mediatomb-0.12.1.orig/src/scripting/script.cc mediatomb-0.12.1/src/scripting/script.cc
--- mediatomb-0.12.1.orig/src/scripting/script.cc	2010-03-25 10:58:05.000000000 -0400
+++ mediatomb-0.12.1/src/scripting/script.cc	2011-11-16 22:28:06.000000000 -0500
@@ -87,7 +87,7 @@
     str = JS_ValueToString(cx, val);
     if (! str)
         return nil;
-    return JS_GetStringBytes(str);
+    return JS_EncodeString(cx, str);
 }
 
 int Script::getBoolProperty(JSObject *obj, String name)
@@ -427,14 +427,14 @@
         try
         {
             common_script = _load(common_scr_path);
-            common_root = JS_NewScriptObject(cx, common_script);
-            JS_AddNamedRoot(cx, &common_root, "common-script");
+            common_root = JS_NewObject(cx, NULL, common_script, NULL);
+            JS_AddNamedObjectRoot(cx, &common_root, "common-script");
             _execute(common_script);
         }
         catch (Exception e)
         {
             if (common_root)
-                JS_RemoveRoot(cx, &common_root);
+                JS_RemoveObjectRoot(cx, &common_root);
 
             log_js("Unable to load %s: %s\n", common_scr_path.c_str(), 
                     e.getMessage().c_str());
@@ -460,7 +460,7 @@
     JS_BeginRequest(cx);
 #endif
     if (common_root)
-        JS_RemoveRoot(cx, &common_root);
+        JS_RemoveObjectRoot(cx, &common_root);
 
 /*
  * scripts are unrooted and will be cleaned up by GC
@@ -504,11 +504,11 @@
     static JSClass global_class =
     {
         "global",                                   /* name */
-        JSCLASS_HAS_PRIVATE,                        /* flags */
+        JSCLASS_HAS_PRIVATE | JSCLASS_GLOBAL_FLAGS,/* flags */
         JS_PropertyStub,                            /* add property */
         JS_PropertyStub,                            /* del property */
         JS_PropertyStub,                            /* get property */
-        JS_PropertyStub,                            /* set property */
+        JS_StrictPropertyStub,                      /* set property */
         JS_EnumerateStandardClasses,                /* enumerate */
         JS_ResolveStub,                             /* resolve */
         JS_ConvertStub,                             /* convert */
@@ -517,7 +517,7 @@
     };
 
     /* create the global object here */
-    glob = JS_NewObject(cx, &global_class, NULL, NULL);
+    glob = JS_NewCompartmentAndGlobalObject(cx, &global_class, NULL);
     if (! glob)
         throw _Exception(_("Scripting: could not initialize glboal class"));
 
@@ -539,12 +539,12 @@
         throw _Exception(_("Scripting: JS_DefineFunctions failed"));
 }
 
-JSScript *Script::_load(zmm::String scriptPath)
+JSObject *Script::_load(zmm::String scriptPath)
 {
     if (glob == NULL)
         initGlobalObject();
 
-    JSScript *scr;
+    JSObject *scr;
 
     String scriptText = read_text_file(scriptPath);
 
@@ -571,14 +571,11 @@
 
 void Script::load(zmm::String scriptPath)
 {
-    if (script)
-        JS_DestroyScript(cx, script);
-
     script = _load((scriptPath));
 }
 
 
-void Script::_execute(JSScript *scr)
+void Script::_execute(JSObject *scr)
 {
     jsval ret_val;
 
@@ -662,7 +659,7 @@
     JSObject *js_meta = getObjectProperty(js, _("meta"));
     if (js_meta)
     {
-        JS_AddNamedRoot(cx, &js_meta, "meta");
+        JS_AddNamedObjectRoot(cx, &js_meta, "meta");
         /// \todo: only metadata enumerated in MT_KEYS is taken
         for (int i = 0; i < M_MAX; i++)
         {
@@ -687,7 +684,7 @@
                 }
             }
         }
-        JS_RemoveRoot(cx, &js_meta);
+        JS_RemoveObjectRoot(cx, &js_meta);
     }
     
     // stuff that has not been exported to js
diff -ur mediatomb-0.12.1.orig/src/scripting/script.h mediatomb-0.12.1/src/scripting/script.h
--- mediatomb-0.12.1.orig/src/scripting/script.h	2010-03-25 10:58:05.000000000 -0400
+++ mediatomb-0.12.1/src/scripting/script.h	2011-11-16 22:28:06.000000000 -0500
@@ -66,8 +66,8 @@
     JSRuntime *rt;
     JSContext *cx;
     JSObject  *glob;
-    JSScript *script;
-    JSScript *common_script;
+    JSObject  *script;
+    JSObject  *common_script;
     
 public:
     Script(zmm::Ref<Runtime> runtime);
@@ -115,8 +115,8 @@
     JSObject *common_root;
 
     void initGlobalObject();
-    JSScript *_load(zmm::String scriptPath);
-    void _execute(JSScript *scr);
+    JSObject *_load(zmm::String scriptPath);
+    void _execute(JSObject *scr);
     zmm::Ref<StringConverter> _p2i;
     zmm::Ref<StringConverter> _j2i;
     zmm::Ref<StringConverter> _f2i;