Source: https://bugs.gentoo.org/882805#c8
Upstream: https://gitlab.gnome.org/GNOME/seahorse/-/merge_requests/220/diffs

diff --git a/ssh/key.vala b/ssh/key.vala
index e2ebc30..2ce2a0c 100644
--- a/ssh/key.vala
+++ b/ssh/key.vala
@@ -230,7 +230,7 @@ public class Seahorse.Ssh.Key : Seahorse.Object, Seahorse.Exportable, Seahorse.D
      */
     public static async KeyParseResult parse(string data,
                                              Cancellable? cancellable = null) throws GLib.Error {
-        return_if_fail (data != null || data != "");
+        return_val_if_fail (data != null || data != "", true);
 
         var pubkeys = new GenericArray<KeyData>();
         var seckeys = new GenericArray<SecData>();
diff --git a/ssh/operation.vala b/ssh/operation.vala
index 4743d0a..48a525c 100644
--- a/ssh/operation.vala
+++ b/ssh/operation.vala
@@ -49,7 +49,7 @@ public abstract class Operation : GLib.Object {
     protected async string? operation_async(string command,
                                             string? input,
                                             Cancellable? cancellable) throws GLib.Error {
-        return_val_if_fail (command != null && command != "", null);
+        return_val_if_fail (command != null && command != "", false);
 
         // Strip the command name for logging purposes
         string[] args;
