diff --git a/src/sbbs3/scfg/scfg.c b/src/sbbs3/scfg/scfg.c
index 35408d0eec244988737ab25cb2f4a791c9179ce5..48d1d44d05934b4b38bff19c81bb9b567337784c 100644
--- a/src/sbbs3/scfg/scfg.c
+++ b/src/sbbs3/scfg/scfg.c
@@ -2436,8 +2436,9 @@ int lprintf(int level, char *fmt, ...)
     return(0);
 }
 
-void** new_item(void* list[], size_t size, int index, int* total)
+void* new_item(void* lp, size_t size, int index, int* total)
 {
+	void** list = lp;
 	void** p;
 	void* item;
 
diff --git a/src/sbbs3/scfg/scfg.h b/src/sbbs3/scfg/scfg.h
index 60bedcc07d090809f8a04ea5df056f779ba968c0..c3571446f98e0232fd0233624f2c751a1f069ead 100644
--- a/src/sbbs3/scfg/scfg.h
+++ b/src/sbbs3/scfg/scfg.h
@@ -163,7 +163,7 @@ void reencrypt_keys(const char* old_pass, const char* new_pass);
 int code_ok(char *str);
 int  bits(long l);
 void getar(char *desc, char *ar);
-void** new_item(void* list[], size_t size, int index, int* total);
+void* new_item(void* list, size_t size, int index, int* total);
 bool new_sub(int new_subnum, int group_num, sub_t* pasted_sub, long misc);
 bool new_qhub_sub(qhub_t*, int qsubnum, sub_t*, unsigned confnum);
 void remove_sub(scfg_t*, int subnum, bool cut);