Hello community, here is the log from the commit of package gjs for openSUSE:Factory checked in at 2013-08-30 16:22:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gjs (Old) and /work/SRC/openSUSE:Factory/.gjs.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gjs" Changes: -------- --- /work/SRC/openSUSE:Factory/gjs/gjs.changes 2013-07-16 14:57:17.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.gjs.new/gjs.changes 2013-08-30 16:22:01.000000000 +0200 @@ -1,0 +2,9 @@ +Tue Aug 20 20:21:26 UTC 2013 - [email protected] + +- Update to version 1.37.6: + + stack: Add BeginRequest / EndRequest. + + context: Turn on type inference. + + configure: Remove HAVE_JS_CLASS_TRACE gunk. + + Bugs fixed: bgo#704343, bgo#704406, bgo#704902, bgo#703826. + +------------------------------------------------------------------- Old: ---- gjs-1.37.4.tar.xz New: ---- gjs-1.37.6.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gjs.spec ++++++ --- /var/tmp/diff_new_pack.DDWjoB/_old 2013-08-30 16:22:02.000000000 +0200 +++ /var/tmp/diff_new_pack.DDWjoB/_new 2013-08-30 16:22:02.000000000 +0200 @@ -17,7 +17,7 @@ Name: gjs -Version: 1.37.4 +Version: 1.37.6 Release: 0 # FIXME: find out if tapsets should really be in devel package or in main package Summary: JavaScript bindings based on gobject-introspection and Mozilla ++++++ gjs-1.37.4.tar.xz -> gjs-1.37.6.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/Makefile-insttest.am new/gjs-1.37.6/Makefile-insttest.am --- old/gjs-1.37.4/Makefile-insttest.am 2013-07-10 18:13:33.000000000 +0200 +++ new/gjs-1.37.6/Makefile-insttest.am 2013-08-20 02:08:07.000000000 +0200 @@ -106,6 +106,7 @@ installed-tests/js/testMainloop.js \ installed-tests/js/testMetaClass.js \ installed-tests/js/testParamSpec.js \ + installed-tests/js/testReflectObject.js \ installed-tests/js/testSignals.js \ installed-tests/js/testSystem.js \ installed-tests/js/testTweener.js \ @@ -114,4 +115,11 @@ if ENABLE_CAIRO dist_jstests_DATA += installed-tests/js/testCairo.js endif + +%.test: installed-tests/scripts/%.js installed-tests/script.test.in Makefile + sed -e s,@pkglibexecdir\@,$(pkglibexecdir), -e s,@name\@,$(notdir $<), < $(srcdir)/installed-tests/script.test.in > [email protected] && mv [email protected] $@ + +jsscripttestsdir = $(gjsinsttestdir)/scripts +jsscripttests_DATA = installed-tests/scripts/testSystemExit.js +installedtestmeta_DATA += testSystemExit.test endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/Makefile.in new/gjs-1.37.6/Makefile.in --- old/gjs-1.37.4/Makefile.in 2013-07-10 18:47:59.000000000 +0200 +++ new/gjs-1.37.6/Makefile.in 2013-08-20 20:57:15.000000000 +0200 @@ -101,7 +101,8 @@ @ENABLE_CAIRO_TRUE@ $(NULL) @ENABLE_CAIRO_TRUE@am__append_4 = libcairoNative.la -@BUILDOPT_INSTALL_TESTS_TRUE@am__append_5 = jsunit.test +@BUILDOPT_INSTALL_TESTS_TRUE@am__append_5 = jsunit.test \ +@BUILDOPT_INSTALL_TESTS_TRUE@ testSystemExit.test gjsinsttest_PROGRAMS = $(am__EXEEXT_2) @BUILDOPT_INSTALL_TESTS_TRUE@am__append_6 = jsunit @BUILDOPT_INSTALL_TESTS_TRUE@am__append_7 = libregress.la libwarnlib.la libgimarshallingtests.la @@ -132,6 +133,7 @@ @BUILDOPT_INSTALL_TESTS_TRUE@ installed-tests/js/testMainloop.js \ @BUILDOPT_INSTALL_TESTS_TRUE@ installed-tests/js/testMetaClass.js \ @BUILDOPT_INSTALL_TESTS_TRUE@ installed-tests/js/testParamSpec.js \ +@BUILDOPT_INSTALL_TESTS_TRUE@ installed-tests/js/testReflectObject.js \ @BUILDOPT_INSTALL_TESTS_TRUE@ installed-tests/js/testSignals.js \ @BUILDOPT_INSTALL_TESTS_TRUE@ installed-tests/js/testSystem.js \ @BUILDOPT_INSTALL_TESTS_TRUE@ installed-tests/js/testTweener.js \ @@ -182,8 +184,9 @@ "$(DESTDIR)$(gjstweenerdir)" "$(DESTDIR)$(jstestsdir)" \ "$(DESTDIR)$(gjsinsttestdir)" \ "$(DESTDIR)$(installedtestmetadir)" \ - "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(tapsetdir)" \ - "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(gjs_module_includedir)" \ + "$(DESTDIR)$(jsscripttestsdir)" "$(DESTDIR)$(pkgconfigdir)" \ + "$(DESTDIR)$(tapsetdir)" "$(DESTDIR)$(typelibdir)" \ + "$(DESTDIR)$(gjs_module_includedir)" \ "$(DESTDIR)$(gjs_public_includedir)" LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES) \ $(privlib_LTLIBRARIES) @@ -390,6 +393,7 @@ installed-tests/js/testMainloop.js \ installed-tests/js/testMetaClass.js \ installed-tests/js/testParamSpec.js \ + installed-tests/js/testReflectObject.js \ installed-tests/js/testSignals.js \ installed-tests/js/testSystem.js \ installed-tests/js/testTweener.js \ @@ -397,8 +401,9 @@ installed-tests/js/testCairo.js DATA = $(dist_gjsjs_DATA) $(dist_gjsoverride_DATA) \ $(dist_gjstweener_DATA) $(dist_jstests_DATA) \ - $(gjsinsttest_DATA) $(installedtestmeta_DATA) $(noinst_DATA) \ - $(pkgconfig_DATA) $(tapset_DATA) $(typelib_DATA) + $(gjsinsttest_DATA) $(installedtestmeta_DATA) \ + $(jsscripttests_DATA) $(noinst_DATA) $(pkgconfig_DATA) \ + $(tapset_DATA) $(typelib_DATA) HEADERS = $(nobase_gjs_module_include_HEADERS) \ $(nobase_gjs_public_include_HEADERS) $(noinst_HEADERS) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ @@ -857,6 +862,8 @@ noinst_DATA = $(am__append_14) jstestsdir = $(gjsinsttestdir)/js dist_jstests_DATA = $(am__append_15) $(am__append_16) +@BUILDOPT_INSTALL_TESTS_TRUE@jsscripttestsdir = $(gjsinsttestdir)/scripts +@BUILDOPT_INSTALL_TESTS_TRUE@jsscripttests_DATA = installed-tests/scripts/testSystemExit.js # Colin's handy Makefile bits for: # 1) stuffing tarballs with pre-generated scripts from your workstation @@ -1881,6 +1888,27 @@ @list='$(installedtestmeta_DATA)'; test -n "$(installedtestmetadir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ dir='$(DESTDIR)$(installedtestmetadir)'; $(am__uninstall_files_from_dir) +install-jsscripttestsDATA: $(jsscripttests_DATA) + @$(NORMAL_INSTALL) + @list='$(jsscripttests_DATA)'; test -n "$(jsscripttestsdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(jsscripttestsdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(jsscripttestsdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(jsscripttestsdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(jsscripttestsdir)" || exit $$?; \ + done + +uninstall-jsscripttestsDATA: + @$(NORMAL_UNINSTALL) + @list='$(jsscripttests_DATA)'; test -n "$(jsscripttestsdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(jsscripttestsdir)'; $(am__uninstall_files_from_dir) install-pkgconfigDATA: $(pkgconfig_DATA) @$(NORMAL_INSTALL) @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ @@ -2217,7 +2245,7 @@ install-binPROGRAMS: install-libLTLIBRARIES installdirs: - for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(privlibdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(gjsinsttestdir)" "$(DESTDIR)$(gjsjsdir)" "$(DESTDIR)$(gjsoverridedir)" "$(DESTDIR)$(gjstweenerdir)" "$(DESTDIR)$(jstestsdir)" "$(DESTDIR)$(gjsinsttestdir)" "$(DESTDIR)$(installedtestmetadir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(tapsetdir)" "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(gjs_module_includedir)" "$(DESTDIR)$(gjs_public_includedir)"; do \ + for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(privlibdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(gjsinsttestdir)" "$(DESTDIR)$(gjsjsdir)" "$(DESTDIR)$(gjsoverridedir)" "$(DESTDIR)$(gjstweenerdir)" "$(DESTDIR)$(jstestsdir)" "$(DESTDIR)$(gjsinsttestdir)" "$(DESTDIR)$(installedtestmetadir)" "$(DESTDIR)$(jsscripttestsdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(tapsetdir)" "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(gjs_module_includedir)" "$(DESTDIR)$(gjs_public_includedir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: $(BUILT_SOURCES) @@ -2282,7 +2310,7 @@ install-data-am: install-dist_gjsjsDATA install-dist_gjsoverrideDATA \ install-dist_gjstweenerDATA install-dist_jstestsDATA \ install-gjsinsttestDATA install-gjsinsttestPROGRAMS \ - install-installedtestmetaDATA \ + install-installedtestmetaDATA install-jsscripttestsDATA \ install-nobase_gjs_module_includeHEADERS \ install-nobase_gjs_public_includeHEADERS install-pkgconfigDATA \ install-privlibLTLIBRARIES install-tapsetDATA \ @@ -2339,7 +2367,7 @@ uninstall-dist_gjsoverrideDATA uninstall-dist_gjstweenerDATA \ uninstall-dist_jstestsDATA uninstall-gjsinsttestDATA \ uninstall-gjsinsttestPROGRAMS uninstall-installedtestmetaDATA \ - uninstall-libLTLIBRARIES \ + uninstall-jsscripttestsDATA uninstall-libLTLIBRARIES \ uninstall-nobase_gjs_module_includeHEADERS \ uninstall-nobase_gjs_public_includeHEADERS \ uninstall-pkgconfigDATA uninstall-privlibLTLIBRARIES \ @@ -2365,8 +2393,9 @@ install-exec install-exec-am install-exec-hook \ install-gjsinsttestDATA install-gjsinsttestPROGRAMS \ install-html install-html-am install-info install-info-am \ - install-installedtestmetaDATA install-libLTLIBRARIES \ - install-man install-nobase_gjs_module_includeHEADERS \ + install-installedtestmetaDATA install-jsscripttestsDATA \ + install-libLTLIBRARIES install-man \ + install-nobase_gjs_module_includeHEADERS \ install-nobase_gjs_public_includeHEADERS install-pdf \ install-pdf-am install-pkgconfigDATA \ install-privlibLTLIBRARIES install-ps install-ps-am \ @@ -2378,7 +2407,8 @@ uninstall-dist_gjsjsDATA uninstall-dist_gjsoverrideDATA \ uninstall-dist_gjstweenerDATA uninstall-dist_jstestsDATA \ uninstall-gjsinsttestDATA uninstall-gjsinsttestPROGRAMS \ - uninstall-installedtestmetaDATA uninstall-libLTLIBRARIES \ + uninstall-installedtestmetaDATA uninstall-jsscripttestsDATA \ + uninstall-libLTLIBRARIES \ uninstall-nobase_gjs_module_includeHEADERS \ uninstall-nobase_gjs_public_includeHEADERS \ uninstall-pkgconfigDATA uninstall-privlibLTLIBRARIES \ @@ -2416,6 +2446,9 @@ $(foreach gir,$(TEST_INTROSPECTION_GIRS),$(eval $(call introspection-scanner,$(gir)))) +@BUILDOPT_INSTALL_TESTS_TRUE@%.test: installed-tests/scripts/%.js installed-tests/script.test.in Makefile +@BUILDOPT_INSTALL_TESTS_TRUE@ sed -e s,@pkglibexecdir\@,$(pkglibexecdir), -e s,@name\@,$(notdir $<), < $(srcdir)/installed-tests/script.test.in > [email protected] && mv [email protected] $@ + prepare-release-tag: Makefile git tag -m "Tag $(TAG_VERSION)" -a $(TAG_PREFIX)$(TAG_VERSION) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/config.h.in new/gjs-1.37.6/config.h.in --- old/gjs-1.37.4/config.h.in 2013-07-10 18:47:57.000000000 +0200 +++ new/gjs-1.37.6/config.h.in 2013-08-20 20:57:14.000000000 +0200 @@ -21,9 +21,6 @@ /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H -/* Define if we still have JS_CLASS_TRACE */ -#undef HAVE_JS_CLASS_TRACE - /* Define if you have the readline library (-lreadline). */ #undef HAVE_LIBREADLINE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/configure new/gjs-1.37.6/configure --- old/gjs-1.37.4/configure 2013-07-10 18:47:57.000000000 +0200 +++ new/gjs-1.37.6/configure 2013-08-20 20:57:14.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for gjs 1.37.4. +# Generated by GNU Autoconf 2.69 for gjs 1.37.6. # # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=gjs>. # @@ -591,8 +591,8 @@ # Identity of this package. PACKAGE_NAME='gjs' PACKAGE_TARNAME='gjs' -PACKAGE_VERSION='1.37.4' -PACKAGE_STRING='gjs 1.37.4' +PACKAGE_VERSION='1.37.6' +PACKAGE_STRING='gjs 1.37.6' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=gjs' PACKAGE_URL='' @@ -1394,7 +1394,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures gjs 1.37.4 to adapt to many kinds of systems. +\`configure' configures gjs 1.37.6 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1464,7 +1464,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of gjs 1.37.4:";; + short | recursive ) echo "Configuration of gjs 1.37.6:";; esac cat <<\_ACEOF @@ -1608,7 +1608,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -gjs configure 1.37.4 +gjs configure 1.37.6 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2098,7 +2098,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by gjs $as_me 1.37.4, which was +It was created by gjs $as_me 1.37.6, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2961,7 +2961,7 @@ # Define the identity of the package. PACKAGE='gjs' - VERSION='1.37.4' + VERSION='1.37.6' cat >>confdefs.h <<_ACEOF @@ -3017,7 +3017,7 @@ -$as_echo "#define GJS_VERSION (1 * 100 + 37) * 100 + 4" >>confdefs.h +$as_echo "#define GJS_VERSION (1 * 100 + 37) * 100 + 6" >>confdefs.h GETTEXT_PACKAGE=gjs @@ -16022,46 +16022,6 @@ done -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $JS_CFLAGS" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for JS_CLASS_TRACE macro" >&5 -$as_echo_n "checking for JS_CLASS_TRACE macro... " >&6; } -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - - #include <jsapi.h> - #ifndef JS_CLASS_TRACE - #error "No JS_CLASS_TRACE" - #endif - -int -main () -{ -(void) 0; - - ; - return 0; -} -_ACEOF -if ac_fn_c_try_compile "$LINENO"; then : - have_js_class_trace=yes -else - have_js_class_trace=no -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -if test "x$have_js_class_trace" = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } - -$as_echo "#define HAVE_JS_CLASS_TRACE 1" >>confdefs.h - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi -CFLAGS="$save_CFLAGS" - @@ -17531,7 +17491,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by gjs $as_me 1.37.4, which was +This file was extended by gjs $as_me 1.37.6, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17597,7 +17557,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -gjs config.status 1.37.4 +gjs config.status 1.37.6 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/configure.ac new/gjs-1.37.6/configure.ac --- old/gjs-1.37.4/configure.ac 2013-07-10 18:42:11.000000000 +0200 +++ new/gjs-1.37.6/configure.ac 2013-08-20 20:56:48.000000000 +0200 @@ -3,7 +3,7 @@ m4_define(pkg_major_version, 1) m4_define(pkg_minor_version, 37) -m4_define(pkg_micro_version, 4) +m4_define(pkg_micro_version, 6) m4_define(pkg_version, pkg_major_version.pkg_minor_version.pkg_micro_version) m4_define(pkg_int_version, (pkg_major_version * 100 + pkg_minor_version) * 100 + pkg_micro_version) @@ -71,30 +71,6 @@ AC_CHECK_HEADERS([malloc.h]) AC_CHECK_FUNCS(mallinfo) -save_CFLAGS="$CFLAGS" -CFLAGS="$CFLAGS $JS_CFLAGS" -AC_MSG_CHECKING([for JS_CLASS_TRACE macro]) -AC_COMPILE_IFELSE( - [AC_LANG_PROGRAM( - [[ - #include <jsapi.h> - #ifndef JS_CLASS_TRACE - #error "No JS_CLASS_TRACE" - #endif - ]], - [[(void) 0;]] - )], - [have_js_class_trace=yes], - [have_js_class_trace=no]) - -if test "x$have_js_class_trace" = xyes; then - AC_MSG_RESULT([yes]) - AC_DEFINE([HAVE_JS_CLASS_TRACE], [1], [Define if we still have JS_CLASS_TRACE]) -else - AC_MSG_RESULT([no]) -fi -CFLAGS="$save_CFLAGS" - GOBJECT_INTROSPECTION_REQUIRE([1.37.1]) common_packages="gmodule-2.0 gthread-2.0 gio-2.0 >= glib_required_version mozjs-17.0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/gi/value.c new/gjs-1.37.6/gi/value.c --- old/gjs-1.37.4/gi/value.c 2013-07-10 18:13:33.000000000 +0200 +++ new/gjs-1.37.6/gi/value.c 2013-08-20 02:08:07.000000000 +0200 @@ -469,10 +469,12 @@ if (gjs_value_to_int64 (context, value, &value_int64)) { GEnumValue *v; + gpointer gtype_class = g_type_class_ref(gtype); /* See arg.c:_gjs_enum_to_int() */ - v = g_enum_get_value(G_ENUM_CLASS(g_type_class_peek(gtype)), + v = g_enum_get_value(G_ENUM_CLASS(gtype_class), (int)value_int64); + g_type_class_unref(gtype_class); if (v == NULL) { gjs_throw(context, "%d is not a valid value for enumeration %s", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/gjs/context.c new/gjs-1.37.6/gjs/context.c --- old/gjs-1.37.4/gjs/context.c 2013-07-10 18:13:33.000000000 +0200 +++ new/gjs-1.37.6/gjs/context.c 2013-08-20 02:08:07.000000000 +0200 @@ -200,7 +200,6 @@ JS_BeginRequest(context); str = g_string_new(""); - (void)JS_EnterLocalRootScope(context); for (n = 0; n < argc; ++n) { JSExceptionState *exc_state; JSString *jstr; @@ -217,7 +216,6 @@ if (jstr != NULL) { if (!gjs_string_to_utf8(context, STRING_TO_JSVAL(jstr), &s)) { - JS_LeaveLocalRootScope(context); JS_EndRequest(context); g_string_free(str, TRUE); return JS_FALSE; @@ -228,7 +226,6 @@ if (n < (argc-1)) g_string_append_c(str, ' '); } else { - JS_LeaveLocalRootScope(context); JS_EndRequest(context); *buffer = g_string_free(str, TRUE); if (!*buffer) @@ -237,7 +234,6 @@ } } - JS_LeaveLocalRootScope(context); *buffer = g_string_free(str, FALSE); JS_EndRequest(context); @@ -595,7 +591,7 @@ if (!g_getenv("GJS_DISABLE_JIT")) { gjs_debug(GJS_DEBUG_CONTEXT, "Enabling JIT"); - options_flags |= JSOPTION_METHODJIT; + options_flags |= JSOPTION_METHODJIT | JSOPTION_TYPE_INFERENCE; } JS_SetOptions(js_context->context, @@ -634,6 +630,9 @@ JSPROP_READONLY | JSPROP_PERMANENT)) g_error("No memory to export global object as 'window'"); + if (!JS_InitReflect(js_context->context, js_context->global)) + g_error("Failed to register Reflect Parser Api"); + /* Define a global function called log() */ if (!JS_DefineFunction(js_context->context, js_context->global, "log", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/gjs/jsapi-util-error.c new/gjs-1.37.6/gjs/jsapi-util-error.c --- old/gjs-1.37.4/gjs/jsapi-util-error.c 2013-07-10 18:13:33.000000000 +0200 +++ new/gjs-1.37.6/gjs/jsapi-util-error.c 2013-08-20 02:08:07.000000000 +0200 @@ -75,8 +75,6 @@ result = JS_FALSE; - (void)JS_EnterLocalRootScope(context); - if (!gjs_string_from_utf8(context, s, -1, &v_message)) { JS_ReportError(context, "Failed to copy exception string"); goto out; @@ -97,8 +95,6 @@ out: - JS_LeaveLocalRootScope(context); - if (!result) { /* try just reporting it to error handler? should not * happen though pretty much diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/gjs/jsapi-util.c new/gjs-1.37.6/gjs/jsapi-util.c --- old/gjs-1.37.4/gjs/jsapi-util.c 2013-07-10 18:13:33.000000000 +0200 +++ new/gjs-1.37.6/gjs/jsapi-util.c 2013-08-20 02:08:07.000000000 +0200 @@ -212,11 +212,6 @@ JS_BeginRequest(context); - if (!JS_EnterLocalRootScope(context)) { - JS_EndRequest(context); - return JS_FALSE; - } - if (array_length == -1) array_length = g_strv_length((char**)array_values); @@ -238,8 +233,6 @@ array = NULL; } - JS_LeaveLocalRootScope(context); - JS_EndRequest(context); return array; } @@ -368,12 +361,6 @@ JS_BeginRequest(context); - /* We potentially create new strings, plus the property iterator, - * that could get collected as we go through this process. So - * create a local root scope. - */ - (void)JS_EnterLocalRootScope(context); - props_iter = JS_NewPropertyIterator(context, obj); if (props_iter == NULL) { gjs_log_exception(context); @@ -410,7 +397,6 @@ } done: - JS_LeaveLocalRootScope(context); JS_EndRequest(context); } @@ -429,8 +415,6 @@ JS_BeginRequest(context); - (void)JS_EnterLocalRootScope(context); - gjs_debug(GJS_DEBUG_SCOPE, " Context: %p %s", context, @@ -462,8 +446,6 @@ chain->str); g_string_free(chain, TRUE); - JS_LeaveLocalRootScope(context); - JS_EndRequest(context); } @@ -756,11 +738,6 @@ JS_BeginRequest(context); - if (!JS_EnterLocalRootScope(context)) { - JS_EndRequest(context); - return JSVAL_VOID; - } - if (!JS_GetClassObject(context, JS_GetGlobalObject(context), JSProto_Date, &date_constructor)) g_error("Failed to lookup Date prototype"); @@ -774,7 +751,6 @@ date = JS_New(context, JSVAL_TO_OBJECT (date_prototype), 1, args); result = OBJECT_TO_JSVAL(date); - JS_LeaveLocalRootScope(context); JS_EndRequest(context); return result; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/gjs/stack.c new/gjs-1.37.6/gjs/stack.c --- old/gjs-1.37.4/gjs/stack.c 2013-07-10 18:13:33.000000000 +0200 +++ new/gjs-1.37.6/gjs/stack.c 2013-08-20 02:08:07.000000000 +0200 @@ -55,12 +55,15 @@ { jsval v_constructor; JSObject *err_obj; + JSBool ret = JS_FALSE; + + JS_BeginRequest(context); if (!JS_GetProperty(context, JS_GetGlobalObject(context), "Error", &v_constructor) || !JSVAL_IS_OBJECT(v_constructor)) { g_error("??? Missing Error constructor in global object?"); - return JS_FALSE; + goto out; } err_obj = JS_New(context, JSVAL_TO_OBJECT(v_constructor), 0, NULL); @@ -68,22 +71,26 @@ if (stack != NULL) { if (!gjs_object_get_property_const(context, err_obj, GJS_STRING_STACK, stack)) - return JS_FALSE; + goto out; } if (fileName != NULL) { if (!gjs_object_get_property_const(context, err_obj, GJS_STRING_FILENAME, fileName)) - return JS_FALSE; + goto out; } if (lineNumber != NULL) { if (!gjs_object_get_property_const(context, err_obj, GJS_STRING_LINE_NUMBER, lineNumber)) - return JS_FALSE; + goto out; } - return JS_TRUE; + ret = JS_TRUE; + + out: + JS_EndRequest(context); + return ret; } void diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/installed-tests/js/testReflectObject.js new/gjs-1.37.6/installed-tests/js/testReflectObject.js --- old/gjs-1.37.4/installed-tests/js/testReflectObject.js 1970-01-01 01:00:00.000000000 +0100 +++ new/gjs-1.37.6/installed-tests/js/testReflectObject.js 2013-08-20 02:08:07.000000000 +0200 @@ -0,0 +1,15 @@ +// application/javascript;version=1.8 +const JSUnit = imports.jsUnit; + +function testReflect() { + JSUnit.assertTrue(Reflect.parse instanceof Function); + + var expr = Reflect.parse("var a = 10;"); + + JSUnit.assertEquals("Program", expr.type); + JSUnit.assertEquals("VariableDeclaration", expr.body[0].type); + JSUnit.assertEquals("a",expr.body[0].declarations[0].id.name); + JSUnit.assertEquals(10,expr.body[0].declarations[0].init.value); +} + +JSUnit.gjstestRun(this, JSUnit.setUp, JSUnit.tearDown); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/gjs-1.37.4/modules/system.c new/gjs-1.37.6/modules/system.c --- old/gjs-1.37.4/modules/system.c 2013-07-10 18:13:33.000000000 +0200 +++ new/gjs-1.37.6/modules/system.c 2013-08-20 02:08:07.000000000 +0200 @@ -113,7 +113,7 @@ { jsval *argv = JS_ARGV(cx, vp); gint32 ecode; - if (!gjs_parse_args(context, "exit", "i", argc, argv, &ecode)) + if (!gjs_parse_args(context, "exit", "i", argc, argv, "ecode", &ecode)) return JS_FALSE; exit(ecode); return JS_TRUE; @@ -155,7 +155,7 @@ if (!JS_DefineFunction(context, module, "exit", (JSNative) gjs_exit, - 0, GJS_MODULE_PROP_FLAGS)) + 1, GJS_MODULE_PROP_FLAGS)) return JS_FALSE; retval = JS_FALSE; -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
