summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFridrich Štrba <fridrich.strba@bluewin.ch>2018-07-12 11:57:07 +0200
committerMichael Stahl <michael.stahl@allotropia.de>2021-03-29 15:18:52 +0200
commit242e26f9762d25ee475c8870bec7f44008fca89d (patch)
treec39759f7582f74db3b587fe95ad92f0acd4cef7d
parent51f7c145e37895767a24a79784e7fe58e0739149 (diff)
call System.runFinalizersOnExit by reflection, since it was removed in jdk11
Change-Id: I542c87bc1de21727a035cc6ac3b3e20c0ccfb5f7 (cherry picked from commit 1d3f2ed0606cc971513dab5932ec7d1dd2a15f90)
-rw-r--r--external/hsqldb/UnpackedTarball_hsqldb.mk1
-rw-r--r--external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch14
2 files changed, 15 insertions, 0 deletions
diff --git a/external/hsqldb/UnpackedTarball_hsqldb.mk b/external/hsqldb/UnpackedTarball_hsqldb.mk
index fc6c18f77c23..cbba770f19a0 100644
--- a/external/hsqldb/UnpackedTarball_hsqldb.mk
+++ b/external/hsqldb/UnpackedTarball_hsqldb.mk
@@ -24,6 +24,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,hsqldb,\
external/hsqldb/patches/i104901.patch \
external/hsqldb/patches/fdo36824.patch \
external/hsqldb/patches/limit_as_table_alias.patch \
+ external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch \
$(if $(HSQLDB_USE_JDBC_4_1),\
external/hsqldb/patches/jdbc-4.1.patch \
external/hsqldb/patches/multipleResultSets.patch \
diff --git a/external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch b/external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch
new file mode 100644
index 000000000000..214dc2c2b2e1
--- /dev/null
+++ b/external/hsqldb/patches/hsqldb-runFinalizersOnExit.patch
@@ -0,0 +1,14 @@
+--- misc/hsqldb/src/org/hsqldb/lib/java/JavaSystem.java 2008-03-16 23:51:35.000000000 +0100
++++ misc/build/hsqldb/src/org/hsqldb/lib/java/JavaSystem.java 2018-07-12 11:46:57.997837180 +0200
+@@ -160,8 +160,9 @@
+ public static void runFinalizers() {
+
+ //#ifdef JAVA2FULL
+- System.runFinalizersOnExit(true);
+-
++ try {
++ System.class.getMethod("runFinalizersOnExit", boolean.class).invoke(null, true);
++ } catch (Exception e) {}
+ //#endif
+ }
+