--- a/lib/isc/timer.c	2018-09-04 00:04:41.000000000 -0400
+++ b/lib/isc/timer_1.c	2019-04-17 23:40:41.930000000 -0400
@@ -472,8 +472,10 @@ isc__timer_create(isc_timermgr_t *manage
 		result = schedule(timer, &now, ISC_TRUE);
 	else
 		result = ISC_R_SUCCESS;
-	if (result == ISC_R_SUCCESS)
+	if (result == ISC_R_SUCCESS){
+                *timerp = (isc_timer_t *)timer;
 		APPEND(manager->timers, timer, link);
+        }
 
 	UNLOCK(&manager->lock);
 
@@ -486,7 +488,6 @@ isc__timer_create(isc_timermgr_t *manage
 		return (result);
 	}
 
-	*timerp = (isc_timer_t *)timer;
 
 	return (ISC_R_SUCCESS);
 }
