diff --git a/src/backend.cmod b/src/backend.cmod
index 88f095c6266f7b00bea9d4e52e084fbe9795903c..6f7428cff70a0d65103b7a84c1dfe2609a807067 100644
--- a/src/backend.cmod
+++ b/src/backend.cmod
@@ -133,9 +133,9 @@ static int compat_box_dispatcher (struct fd_callback_box *box, int event);
 /* CALL OUT STUFF */
 
 #define EXIT_CO(X) do {						\
-    *(X->prev_arr) = X->next_arr;				\
+    if(X->prev_arr) *(X->prev_arr) = X->next_arr;		\
     if(X->next_arr) X->next_arr->prev_arr = X->prev_arr;	\
-    *(X->prev_fun) = X->next_fun;				\
+    if(X->prev_fun) *(X->prev_fun) = X->next_fun;		\
     if(X->next_fun) X->next_fun->prev_fun = X->prev_fun;	\
     (X)->next_arr = NULL;					\
     (X)->next_fun = NULL;					\