Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libbluray for openSUSE:Factory checked in at 2022-10-03 13:43:42 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libbluray (Old) and /work/SRC/openSUSE:Factory/.libbluray.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libbluray" Mon Oct 3 13:43:42 2022 rev:46 rq:1007275 version:1.3.3 Changes: -------- --- /work/SRC/openSUSE:Factory/libbluray/libbluray.changes 2022-08-10 17:13:02.141666599 +0200 +++ /work/SRC/openSUSE:Factory/.libbluray.new.2275/libbluray.changes 2022-10-03 13:43:43.517212591 +0200 @@ -1,0 +2,9 @@ +Thu Sep 29 19:11:12 UTC 2022 - Dirk M??ller <[email protected]> + +- update to 1.3.3: + * Initial support for Java 18. + * Add support for OpenBSD operating system. + * Improve support for FreeBSD, NetBSD and DragonFlyBSD + * Improve Java 17 support. + +------------------------------------------------------------------- Old: ---- libbluray-1.3.2.tar.bz2 New: ---- libbluray-1.3.3.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libbluray.spec ++++++ --- /var/tmp/diff_new_pack.ELYjZV/_old 2022-10-03 13:43:43.969213585 +0200 +++ /var/tmp/diff_new_pack.ELYjZV/_new 2022-10-03 13:43:43.973213594 +0200 @@ -19,7 +19,7 @@ %define sover 2 Name: libbluray -Version: 1.3.2 +Version: 1.3.3 Release: 0 Summary: Library to access Blu-Ray disk License: LGPL-2.1-or-later ++++++ libbluray-1.3.2.tar.bz2 -> libbluray-1.3.3.tar.bz2 ++++++ ++++ 2397 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/ChangeLog new/libbluray-1.3.3/ChangeLog --- old/libbluray-1.3.2/ChangeLog 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/ChangeLog 2022-09-19 16:16:13.000000000 +0200 @@ -1,3 +1,9 @@ +2022-09-19: Version 1.3.3 +- Initial support for Java 18. +- Add support for OpenBSD operating system. +- Improve support for FreeBSD, NetBSD and DragonFlyBSD +- Improve Java 17 support. + 2022-06-28: Version 1.3.2 - Fix build/run failure after Oracle Java CPU for April 2022 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/Makefile.am new/libbluray-1.3.3/Makefile.am --- old/libbluray-1.3.2/Makefile.am 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/Makefile.am 2022-09-19 16:16:13.000000000 +0200 @@ -198,6 +198,14 @@ src/file/file_win32.c \ src/file/mount.c else +if HAVE_GETFSSTAT +libbluray_la_SOURCES+= \ + src/file/dir_posix.c \ + src/file/dirs_xdg.c \ + src/file/dl_posix.c \ + src/file/file_posix.c \ + src/file/mount_getfsstat.c +else libbluray_la_SOURCES+= \ src/file/dir_posix.c \ src/file/dirs_xdg.c \ @@ -206,6 +214,7 @@ src/file/mount.c endif endif +endif libbluray_la_LDFLAGS= -no-undefined -version-info $(LT_VERSION_INFO) -export-symbols-regex "^bd_" libbluray_la_LIBADD= $(LIBXML2_LIBS) $(FT2_LIBS) $(FONTCONFIG_LIBS) $(LIBUDFREAD_LIBS) $(EXTRA_LIBS) @@ -215,7 +224,9 @@ jni/linux/jni_md.h \ jni/win32/jni_md.h \ jni/darwin/jni_md.h \ - jni/netbsd/jni_md.h + jni/freebsd/jni_md.h \ + jni/netbsd/jni_md.h \ + jni/openbsd/jni_md.h pkginclude_HEADERS = \ src/file/filesystem.h \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/config.h.in new/libbluray-1.3.3/config.h.in --- old/libbluray-1.3.2/config.h.in 2022-07-30 20:44:36.000000000 +0200 +++ new/libbluray-1.3.3/config.h.in 2022-09-19 16:16:32.000000000 +0200 @@ -25,6 +25,12 @@ /* Define this if you have FreeType2 library */ #undef HAVE_FT2 +/* Define to 1 if you have the `getfsstat' function. */ +#undef HAVE_GETFSSTAT + +/* Define to 1 if you have the `getvfsstat' function. */ +#undef HAVE_GETVFSSTAT + /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/configure.ac new/libbluray-1.3.3/configure.ac --- old/libbluray-1.3.2/configure.ac 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/configure.ac 2022-09-19 16:16:13.000000000 +0200 @@ -1,7 +1,7 @@ dnl library version number m4_define([bluray_major], 1) m4_define([bluray_minor], 3) -m4_define([bluray_micro], 2) +m4_define([bluray_micro], 3) m4_define([bluray_version],[bluray_major.bluray_minor.bluray_micro]) dnl shared library version (.so version) @@ -13,7 +13,7 @@ dnl Library file name will be libbluray.so.(current-age).age.revision dnl m4_define([lt_current], 6) -m4_define([lt_revision], 1) +m4_define([lt_revision], 2) m4_define([lt_age], 4) dnl initilization @@ -52,6 +52,10 @@ SYS=netbsd CFLAGS="${CFLAGS} -D_NETBSD_SOURCE" ;; + openbsd*) + SYS=openbsd + CFLAGS="${CFLAGS} -D_BSD_SOURCE" + ;; freebsd*) SYS=freebsd CFLAGS="${CFLAGS} -D_XOPEN_SOURCE=700" @@ -61,8 +65,16 @@ ;; esac +dnl Falsely enables for NetBSD +dnl warning: warning: reference to obsolete getfsstat(); use getvfsstat() +AS_IF([test "${SYS}" != "netbsd"], [ + AC_CHECK_FUNCS([getfsstat]) +]) +AC_CHECK_FUNCS([getvfsstat]) + AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32") AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin") +AM_CONDITIONAL(HAVE_GETFSSTAT, test "${ac_cv_func_getfsstat}" = "yes" -o "${ac_cv_func_getvfsstat}" = "yes") dnl messages library_not_found="Could not find required library!" @@ -238,6 +250,7 @@ solaris*) java_os=solaris ;; darwin*) java_os=darwin ;; netbsd*) java_os=netbsd ;; + openbsd*) java_os=openbsd ;; *) java_os=$host_os ;; esac diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/jni/freebsd/jni_md.h new/libbluray-1.3.3/jni/freebsd/jni_md.h --- old/libbluray-1.3.2/jni/freebsd/jni_md.h 1970-01-01 01:00:00.000000000 +0100 +++ new/libbluray-1.3.3/jni/freebsd/jni_md.h 2022-09-19 16:16:13.000000000 +0200 @@ -0,0 +1,54 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is the Java Runtime Interface. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation and Sun Microsystems, Inc. + * Portions created by the Initial Developer are Copyright (C) 1993-1996 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Jean-Baptiste Kempf + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#ifndef _JNI_MD_H_ +#define _JNI_MD_H_ + +#define JNIEXPORT +#define JNIIMPORT +#define JNICALL + +typedef int jint; +#ifdef __LP64__ +typedef long jlong; +#else +typedef long long jlong; +#endif + +typedef signed char jbyte; + +#endif /* !_JNI_MD_H_ */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/jni/openbsd/jni_md.h new/libbluray-1.3.3/jni/openbsd/jni_md.h --- old/libbluray-1.3.2/jni/openbsd/jni_md.h 1970-01-01 01:00:00.000000000 +0100 +++ new/libbluray-1.3.3/jni/openbsd/jni_md.h 2022-09-19 16:16:13.000000000 +0200 @@ -0,0 +1,54 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is the Java Runtime Interface. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corporation and Sun Microsystems, Inc. + * Portions created by the Initial Developer are Copyright (C) 1993-1996 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * Jean-Baptiste Kempf + * + * Alternatively, the contents of this file may be used under the terms of + * either the GNU General Public License Version 2 or later (the "GPL"), or + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ + +#ifndef _JNI_MD_H_ +#define _JNI_MD_H_ + +#define JNIEXPORT +#define JNIIMPORT +#define JNICALL + +typedef int jint; +#ifdef __LP64__ +typedef long jlong; +#else +typedef long long jlong; +#endif + +typedef signed char jbyte; + +#endif /* !_JNI_MD_H_ */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/file/mount_getfsstat.c new/libbluray-1.3.3/src/file/mount_getfsstat.c --- old/libbluray-1.3.2/src/file/mount_getfsstat.c 1970-01-01 01:00:00.000000000 +0100 +++ new/libbluray-1.3.3/src/file/mount_getfsstat.c 2022-09-19 16:16:13.000000000 +0200 @@ -0,0 +1,93 @@ +/* + * This file is part of libbluray + * Copyright (C) 2014 VideoLAN + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see + * <http://www.gnu.org/licenses/>. + */ + +#if HAVE_CONFIG_H +#include "config.h" +#endif + +#include "mount.h" + +#include "util/strutl.h" + +#include <stdlib.h> +#include <string.h> + +#include <sys/types.h> +#include <sys/stat.h> +#ifdef HAVE_GETFSSTAT +#include <sys/mount.h> +#else +#include <sys/statvfs.h> +#endif + +char *mount_get_mountpoint(const char *device_path) +{ + struct stat st; +#ifdef HAVE_GETFSSTAT + struct statfs *mbuf; +#else + struct statvfs *mbuf; +#endif + int fs_count; + + if (stat (device_path, &st) ) { + return str_dup(device_path); + } + + /* If it's a directory, all is good */ + if (S_ISDIR(st.st_mode)) { + return str_dup(device_path); + } + +#ifdef HAVE_GETFSSTAT + fs_count = getfsstat (NULL, 0, MNT_NOWAIT); +#else + fs_count = getvfsstat (NULL, 0, ST_NOWAIT); +#endif + if (fs_count == -1) { + return str_dup(device_path); + } + +#ifdef HAVE_GETFSSTAT + mbuf = calloc (fs_count, sizeof(struct statfs)); +#else + mbuf = calloc (fs_count, sizeof(struct statvfs)); +#endif + if (!mbuf) { + return str_dup(device_path); + } + +#ifdef HAVE_GETFSSTAT + fs_count = getfsstat (mbuf, fs_count * sizeof(struct statfs), MNT_NOWAIT); +#else + fs_count = getvfsstat (mbuf, fs_count * sizeof(struct statvfs), ST_NOWAIT); +#endif + + char *result = NULL; + + for (int i = 0; i < fs_count; ++i) { + if (!strcmp (mbuf[i].f_mntfromname, device_path)) { + result = str_dup(mbuf[i].f_mntonname); + break; + } + } + + free (mbuf); + return (result) ? result : str_dup(device_path); +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/libbluray/bdj/bdj.c new/libbluray-1.3.3/src/libbluray/bdj/bdj.c --- old/libbluray-1.3.2/src/libbluray/bdj/bdj.c 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/src/libbluray/bdj/bdj.c 2022-09-19 16:16:13.000000000 +0200 @@ -405,6 +405,11 @@ # ifdef __FreeBSD__ "/usr/local/openjdk8", "/usr/local/openjdk11", + "/usr/local/openjdk17", +# elif defined(__OpenBSD__) + "/usr/local/jdk-1.8.0", + "/usr/local/jdk-11", + "/usr/local/jdk-17", # else "/usr/lib/jvm/default-java", "/usr/lib/jvm/default", @@ -414,6 +419,8 @@ "/usr/lib/jvm/java-8-openjdk-" JAVA_ARCH, "/usr/lib/jvm/java-11-openjdk", "/usr/lib/jvm/java-11-openjdk-" JAVA_ARCH, + "/usr/lib/jvm/java-17-openjdk", + "/usr/lib/jvm/java-17-openjdk-" JAVA_ARCH, # endif }; static const char * const jvm_dir[] = {"jre/lib/" JAVA_ARCH "/server", @@ -530,7 +537,7 @@ // pre-defined search paths for libbluray.jar static const char * const jar_paths[] = { #ifndef _WIN32 -# ifdef __FreeBSD__ +# if defined(__FreeBSD__) || defined(__OpenBSD__) "/usr/local/share/java/" BDJ_JARFILE, # else "/usr/share/java/" BDJ_JARFILE, @@ -1059,7 +1066,7 @@ if (debug_mask & DBG_JNI) { int version = (int)(*env)->GetVersion(env); - BD_DEBUG(DBG_BDJ, "Java version: %d.%d\n", version >> 16, version & 0xffff); + BD_DEBUG(DBG_BDJ, "Java JNI version: %d.%d\n", version >> 16, version & 0xffff); } if (!_bdj_init(env, bd, path, bdj_disc_id, cfg)) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/libbluray/bdj/java/org/videolan/BDJSecurityManager.java new/libbluray-1.3.3/src/libbluray/bdj/java/org/videolan/BDJSecurityManager.java --- old/libbluray-1.3.2/src/libbluray/bdj/java/org/videolan/BDJSecurityManager.java 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/src/libbluray/bdj/java/org/videolan/BDJSecurityManager.java 2022-09-19 16:16:13.000000000 +0200 @@ -33,6 +33,7 @@ private String budaRoot; private String persistentRoot; private boolean usingUdf = false; + private int javaMajor; private static Class urlPermission = null; static { @@ -43,11 +44,12 @@ } } - BDJSecurityManager(String discRoot, String persistentRoot, String budaRoot) { + BDJSecurityManager(String discRoot, String persistentRoot, String budaRoot, int javaMajor) { this.discRoot = discRoot; this.cacheRoot = null; this.budaRoot = budaRoot; this.persistentRoot = persistentRoot; + this.javaMajor = javaMajor; if (discRoot == null) { usingUdf = true; } @@ -104,7 +106,12 @@ deny(perm); } if (perm.implies(new RuntimePermission("setSecurityManager"))) { - if (classDepth0("org.videolan.Libbluray") == 3) { + + // Starting Java 17, the depth callback of setSecurityManager has changed as + // it now includes implSetSecurityManager . As we do not want the Xlets to + // be able to disable sandboxing we do check at runtime the Java version and + // then change the depth callback as needed below. + if ((classDepth0("org.videolan.Libbluray") == 3) || ((classDepth0("org.videolan.Libbluray") == 4) && (this.javaMajor > 16))) { return; } deny(perm); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/libbluray/bdj/java/org/videolan/Libbluray.java new/libbluray-1.3.3/src/libbluray/bdj/java/org/videolan/Libbluray.java --- old/libbluray-1.3.2/src/libbluray/bdj/java/org/videolan/Libbluray.java 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/src/libbluray/bdj/java/org/videolan/Libbluray.java 2022-09-19 16:16:13.000000000 +0200 @@ -25,6 +25,7 @@ import java.awt.event.KeyEvent; import java.awt.event.MouseEvent; import java.io.File; +import java.lang.reflect.Method; import java.util.HashMap; import java.util.Map; import java.util.Vector; @@ -115,9 +116,47 @@ } } - /* - * - */ + public static int getJavaMajor() { + try { + String ver = System.getProperty("java.version"); + if (ver.startsWith("1.")) + ver = ver.substring(2, 3); + if (ver.indexOf(".") != -1) + ver = ver.substring(0, ver.indexOf(".")); + if (ver.indexOf("-") != -1) + ver = ver.substring(0, ver.indexOf("-")); + return Integer.parseInt(ver); + } catch (Throwable t) { + System.err.println("getJavaMajor(): " + t); + } + return 0; + } + + private static void setSecurityManager(SecurityManager sm) throws Exception { + try { + System.setSecurityManager(sm); + return; + } catch (Exception ex) { + if (getJavaMajor() < 18) + throw ex; + + /* Workaround for Java 18 security manager issues. + * Suggested method (setting security manager to "allow" in command line args) + * fails with older Java versions. + * And, Java version is hard to figure out before launching JVM. + */ + System.err.println("Detected Java >= 18, trying setSecurityManager() workaround"); + try { + Method method = System.class.getDeclaredMethod("implSetSecurityManager", + new Class [] { SecurityManager.class }); + method.setAccessible(true); + method.invoke(null, new Object [] { (Object)sm } ); + return; + } catch (Exception ex2) { + throw ex; + } + } + } private static boolean initOnce = false; private static void initOnce() { @@ -126,6 +165,11 @@ } initOnce = true; + Logger.getLogger("Libbluray").info( + "Using Java " + System.getProperty("java.vm.specification.version", "?") + + " (" + System.getProperty("java.vm.version", "?") + ")" + + " from '" + System.getProperty("java.home", "?") + "'"); + /* hook system properties (provide Xlet-specific user.dir) */ try { hookProperties(); @@ -344,7 +388,7 @@ System.setProperty("bluray.network.connected", "YES"); try { - System.setSecurityManager(new BDJSecurityManager(discRoot, persistentRoot, budaRoot)); + setSecurityManager(new BDJSecurityManager(discRoot, persistentRoot, budaRoot, getJavaMajor())); } catch (Exception ex) { System.err.println("System.setSecurityManager() failed: " + ex); throw new SecurityException("Failed initializing SecurityManager"); @@ -375,7 +419,7 @@ /* all Xlet contexts (and threads) should be terminated now */ try { - System.setSecurityManager(null); + setSecurityManager(null); } catch (Exception ex) { System.err.println("System.setSecurityManager(null) failed: " + ex); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/libbluray/bdj/java/org/videolan/Logger.java new/libbluray-1.3.3/src/libbluray/bdj/java/org/videolan/Logger.java --- old/libbluray-1.3.2/src/libbluray/bdj/java/org/videolan/Logger.java 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/src/libbluray/bdj/java/org/videolan/Logger.java 2022-09-19 16:16:13.000000000 +0200 @@ -25,8 +25,11 @@ static { String prop; - use_throw = false; - use_trace = false; + prop = System.getProperty("debug.unimplemented.throw"); + use_throw = (prop != null && prop.equalsIgnoreCase("YES")); + + prop = System.getProperty("debug.trace"); + use_trace = (prop == null || !prop.equalsIgnoreCase("NO")); // capture stdout and stderr from on-disc applets // (those produce useful debug information sometimes) @@ -36,15 +39,6 @@ } catch (java.io.UnsupportedEncodingException uee) { System.err.println("Error capturing stdout/stderr: " + uee); } - - prop = System.getProperty("debug.unimplemented.throw"); - if (prop != null && prop.equalsIgnoreCase("YES")) { - use_throw = true; - } - prop = System.getProperty("debug.trace"); - if (prop == null || !prop.equalsIgnoreCase("NO")) { - use_trace = true; - } } private static class Location { @@ -190,7 +184,7 @@ } } - private String name; - private static boolean use_trace; - private static boolean use_throw; + private final String name; + private static final boolean use_trace; + private static final boolean use_throw; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/libbluray/bdj/native/org_videolan_Libbluray.c new/libbluray-1.3.3/src/libbluray/bdj/native/org_videolan_Libbluray.c --- old/libbluray-1.3.2/src/libbluray/bdj/native/org_videolan_Libbluray.c 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/src/libbluray/bdj/native/org_videolan_Libbluray.c 2022-09-19 16:16:13.000000000 +0200 @@ -218,7 +218,7 @@ (JNIEnv * env, jclass cls, jlong np, jint type) { BLURAY* bd = (BLURAY*)(intptr_t)np; - const uint8_t *data = bd_get_aacs_data(bd, type); + const uint8_t *data = disc_get_data(bd_get_disc(bd), type); size_t data_size = 16; BD_DEBUG(DBG_JNI, "getAacsDataN(%d) -> %p\n", (int)type, (const void *)data); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/libbluray/bluray-version.h new/libbluray-1.3.3/src/libbluray/bluray-version.h --- old/libbluray-1.3.2/src/libbluray/bluray-version.h 2022-07-30 20:46:56.000000000 +0200 +++ new/libbluray-1.3.3/src/libbluray/bluray-version.h 2022-09-19 16:16:54.000000000 +0200 @@ -27,9 +27,9 @@ #define BLURAY_VERSION_MAJOR 1 #define BLURAY_VERSION_MINOR 3 -#define BLURAY_VERSION_MICRO 2 +#define BLURAY_VERSION_MICRO 3 -#define BLURAY_VERSION_STRING "1.3.2" +#define BLURAY_VERSION_STRING "1.3.3" #define BLURAY_VERSION \ BLURAY_VERSION_CODE(BLURAY_VERSION_MAJOR, BLURAY_VERSION_MINOR, BLURAY_VERSION_MICRO) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/libbluray/bluray.c new/libbluray-1.3.3/src/libbluray/bluray.c --- old/libbluray-1.3.2/src/libbluray/bluray.c 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/src/libbluray/bluray.c 2022-09-19 16:16:13.000000000 +0200 @@ -1016,12 +1016,13 @@ index = indx_get(bd->disc); if (!index) { /* check for incomplete disc */ - int r = bd_get_titles(bd, 0, 0); - if (r > 0) { + NAV_TITLE_LIST *title_list = nav_get_title_list(bd->disc, 0, 0); + if (title_list && title_list->count > 0) { BD_DEBUG(DBG_BLURAY | DBG_CRIT, "Possible incomplete BluRay image detected. No menu support.\n"); bd->disc_info.bluray_detected = 1; bd->disc_info.no_menu_support = 1; } + nav_free_title_list(&title_list); } } @@ -1188,11 +1189,6 @@ _update_uo_mask(bd); } -const uint8_t *bd_get_aacs_data(BLURAY *bd, int type) -{ - return disc_get_data(bd->disc, type); -} - uint64_t bd_get_uo_mask(BLURAY *bd) { /* internal function. Used by BD-J. */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libbluray-1.3.2/src/libbluray/bluray_internal.h new/libbluray-1.3.3/src/libbluray/bluray_internal.h --- old/libbluray-1.3.2/src/libbluray/bluray_internal.h 2022-07-30 20:44:17.000000000 +0200 +++ new/libbluray-1.3.3/src/libbluray/bluray_internal.h 2022-09-19 16:16:13.000000000 +0200 @@ -27,8 +27,6 @@ struct bluray; struct bd_disc; -BD_PRIVATE const uint8_t *bd_get_aacs_data(struct bluray *bd, int type); - /* * VFS */
