diff --git a/src/sbbs3/userdat.c b/src/sbbs3/userdat.c
index e7602ab5372d8bd07b17b87782e7803fa2ad7c6d..82822cbe341994ef7c17ff708214bfeb84305e56 100644
--- a/src/sbbs3/userdat.c
+++ b/src/sbbs3/userdat.c
@@ -2734,13 +2734,15 @@ void DLLCALL loginSuccess(link_list_t* list, SOCKADDR_IN* addr)
 ulong DLLCALL loginFailure(link_list_t* list, SOCKADDR_IN* addr, const char* prot, const char* user, const char* pass)
 {
 	list_node_t*		node;
-	login_attempt_t		first={0};
+	login_attempt_t		first;
 	login_attempt_t*	attempt=&first;
 	ulong				count=0;
 
 	if(list==NULL)
 		return 0;
 
+	memset(&first, 0, sizeof(first));
+
 	listLock(list);
 	if((node=login_attempted(list, addr)) != NULL) {
 		attempt=node->data;