]> nmode's Git Repositories - signal-cli/commitdiff
Switch to a less cpu intensive function to check if libsignal-client is available
authorAsamK <asamk@gmx.de>
Wed, 2 Feb 2022 18:34:30 +0000 (19:34 +0100)
committerAsamK <asamk@gmx.de>
Thu, 3 Feb 2022 18:05:30 +0000 (19:05 +0100)
graalvm-config-dir/jni-config.json
lib/src/main/java/org/asamk/signal/manager/config/ServiceConfig.java

index acbf7f3fdb9a6b6380d2d8cd6da2dda034c207a8..18ba01fc3911a30ef0c9e7220f2815307af58bb3 100644 (file)
     {"name":"loadClass","parameterTypes":["java.lang.String"] }
   ]
 },
+{
+  "name":"java.lang.IllegalArgumentException",
+  "methods":[{"name":"<init>","parameterTypes":["java.lang.String"] }]
+},
 {
   "name":"java.lang.IllegalStateException",
   "methods":[{"name":"<init>","parameterTypes":["java.lang.String"] }]
index 8ecaa74152453507375c321c04cba60648e8d93d..78decc8140bd471ab287ba9c824d978f5d3be4f8 100644 (file)
@@ -47,7 +47,10 @@ public class ServiceConfig {
 
     public static boolean isSignalClientAvailable() {
         try {
-            org.signal.client.internal.Native.DeviceTransfer_GeneratePrivateKey();
+            try {
+                org.signal.client.internal.Native.UuidCiphertext_CheckValidContents(new byte[0]);
+            } catch (IllegalArgumentException ignored) {
+            }
             return true;
         } catch (UnsatisfiedLinkError e) {
             logger.warn("Failed to call libsignal-client: {}", e.getMessage());