From 3e1d61868fa8bfc586099302e931433270e5d17d Mon Sep 17 00:00:00 2001 From: Jan Rybar Date: Tue, 25 Aug 2020 16:38:34 +0000 Subject: Port polkit to mozjs78 --- .gitlab-ci.yml | 2 +- configure.ac | 4 ++-- src/polkitbackend/polkitbackendjsauthority.cpp | 15 ++++++--------- 3 files changed, 9 insertions(+), 12 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2f1eabe..fbca9d8 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,7 +12,7 @@ variables: make libxslt pkgconfig(gio-2.0) - pkgconfig(mozjs-68) + pkgconfig(mozjs-78) expat-devel pkgconfig(libsystemd) pkgconfig(systemd) diff --git a/configure.ac b/configure.ac index eea70fc..c4569f1 100644 --- a/configure.ac +++ b/configure.ac @@ -34,7 +34,7 @@ AC_PROG_LN_S AC_SYS_LARGEFILE AM_PROG_CC_C_O AC_PROG_CXX -AX_CXX_COMPILE_STDCXX([14], [], [mandatory]) +AX_CXX_COMPILE_STDCXX([17], [], [mandatory]) # Taken from dbus AC_ARG_ENABLE(ansi, [ --enable-ansi enable -ansi -pedantic gcc flags],enable_ansi=$enableval,enable_ansi=no) @@ -80,7 +80,7 @@ PKG_CHECK_MODULES(GLIB, [gmodule-2.0 gio-unix-2.0 >= 2.30.0]) AC_SUBST(GLIB_CFLAGS) AC_SUBST(GLIB_LIBS) -PKG_CHECK_MODULES(LIBJS, [mozjs-68]) +PKG_CHECK_MODULES(LIBJS, [mozjs-78]) AC_SUBST(LIBJS_CFLAGS) AC_SUBST(LIBJS_CXXFLAGS) diff --git a/src/polkitbackend/polkitbackendjsauthority.cpp b/src/polkitbackend/polkitbackendjsauthority.cpp index 25bd1f9..ca17108 100644 --- a/src/polkitbackend/polkitbackendjsauthority.cpp +++ b/src/polkitbackend/polkitbackendjsauthority.cpp @@ -49,6 +49,7 @@ #include #include #include +#include #include #include "initjs.h" /* init.js */ @@ -367,7 +368,7 @@ load_scripts (PolkitBackendJsAuthority *authority) static void reload_scripts (PolkitBackendJsAuthority *authority) { - JS::AutoValueArray<1> args(authority->priv->cx); + JS::RootedValueArray<1> args(authority->priv->cx); JS::RootedValue rval(authority->priv->cx); JS::RootedObject js_polkit(authority->priv->cx, authority->priv->js_polkit->get ()); @@ -482,10 +483,6 @@ polkit_backend_js_authority_constructed (GObject *object) if (!JS::InitSelfHostedCode (authority->priv->cx)) goto fail; - JS::ContextOptionsRef (authority->priv->cx) - .setIon (TRUE) - .setBaseline (TRUE) - .setAsmJS (TRUE); JS::SetWarningReporter(authority->priv->cx, report_error); JS_SetContextPrivate (authority->priv->cx, authority); @@ -720,7 +717,7 @@ set_property_strv (PolkitBackendJsAuthority *authority, elems[n].setNull (); } - JS::RootedObject array_object(authority->priv->cx, JS_NewArrayObject (authority->priv->cx, elems)); + JS::RootedObject array_object(authority->priv->cx, JS::NewArrayObject (authority->priv->cx, elems)); value_jsval = JS::ObjectValue (*array_object); JS_SetProperty (authority->priv->cx, obj, name, value_jsval); @@ -1114,7 +1111,7 @@ polkit_backend_js_authority_get_admin_auth_identities (PolkitBackendInteractiveA { PolkitBackendJsAuthority *authority = POLKIT_BACKEND_JS_AUTHORITY (_authority); GList *ret = NULL; - JS::AutoValueArray<2> args(authority->priv->cx); + JS::RootedValueArray<2> args(authority->priv->cx); JS::RootedValue rval(authority->priv->cx); guint n; GError *error = NULL; @@ -1218,7 +1215,7 @@ polkit_backend_js_authority_check_authorization_sync (PolkitBackendInteractiveAu { PolkitBackendJsAuthority *authority = POLKIT_BACKEND_JS_AUTHORITY (_authority); PolkitImplicitAuthorization ret = implicit; - JS::AutoValueArray<2> args(authority->priv->cx); + JS::RootedValueArray<2> args(authority->priv->cx); JS::RootedValue rval(authority->priv->cx); GError *error = NULL; JS::RootedString ret_jsstr (authority->priv->cx); @@ -1409,7 +1406,7 @@ js_polkit_spawn (JSContext *cx, JS::CallArgs args = JS::CallArgsFromVp (js_argc, vp); array_object = &args[0].toObject(); - if (!JS_GetArrayLength (cx, array_object, &array_len)) + if (!JS::GetArrayLength (cx, array_object, &array_len)) { JS_ReportErrorUTF8 (cx, "Failed to get array length"); goto out; -- cgit v1.2.1