diff --git a/src/global.c b/src/global.c
index da404d2722615edf8a4013a723a850acec58d9bd..d16254de4539e8094bee3fba3def39131353377a 100644
--- a/src/global.c
+++ b/src/global.c
@@ -230,9 +230,9 @@ size_t length_of_list(int menu)
     size_t i = 0;
 
     for (f = allfuncs; f != NULL; f = f->next)
-	if ((f->menus & menu) != 0) {
+	if ((f->menus & menu) && first_sc_for(menu, f->scfunc) != NULL)
 	    i++;
-	}
+
     return i;
 }