diff --git a/servers/slapd/connection.c b/servers/slapd/connection.c
index 702f12e904f703558a44f2bb076eab0de5362507..cbd5f82a3da30b87ea57d68948ace80436ce2d00 100644
--- a/servers/slapd/connection.c
+++ b/servers/slapd/connection.c
@@ -625,6 +625,7 @@ connection_destroy( Connection *c )
 {
 	/* note: connections_mutex should be locked by caller */
     ber_socket_t	sd;
+    unsigned long	connid;
 
     assert( connections != NULL );
     assert( c != NULL );
@@ -632,6 +633,9 @@ connection_destroy( Connection *c )
     assert( c->c_conn_state != SLAP_C_INVALID );
     assert( LDAP_STAILQ_EMPTY(&c->c_ops) );
 
+    /* only for stats (print -1 as "%lu" may give unexpected results ;) */
+    connid = c->c_connid;
+
     backend_connection_destroy(c);
 
     c->c_protocol = 0;
@@ -699,7 +703,7 @@ connection_destroy( Connection *c )
 
 		Statslog( LDAP_DEBUG_STATS,
 		    "conn=%lu fd=%d closed\n",
-			c->c_connid, sd, 0, 0, 0 );
+			connid, sd, 0, 0, 0 );
 	}
 
 	ber_sockbuf_free( c->c_sb );