From c8ed6bcaa1e878a8f018fa7607b49d2e177a7922 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Mon, 6 Dec 2021 11:53:50 +0100
Subject: [PATCH] Concurrent: Fix syntax to be compatible with Pike 8.0.886 and
 earlier.

Modules in Pike 8.0 need to be syntax-compatible with all released
versions of Pike 8.0 (or at least Pike 8.0.232 and later).
---
 lib/modules/Concurrent.pmod | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/lib/modules/Concurrent.pmod b/lib/modules/Concurrent.pmod
index 3516456e31..8f9abceb3f 100644
--- a/lib/modules/Concurrent.pmod
+++ b/lib/modules/Concurrent.pmod
@@ -737,9 +737,10 @@ class Future
     array call_out_handle;
     function backend_remove_call_out;
 
-    call_out_handle = (backend->?call_out || call_out)
+    call_out_handle = ((backend && backend->call_out) || call_out)
       (p->try_failure, seconds, ({ "Timeout.\n", backtrace() }));
-    backend_remove_call_out = backend->?remove_call_out || remove_call_out;
+    backend_remove_call_out =
+      (backend && backend->remove_call_out) || remove_call_out;
 
     on_success(
       lambda(mixed res)
-- 
GitLab