diff --git a/mongoose.c b/mongoose.c
index 9cb7816c6cb4cd6657f22dcaac738f157764ef1c..a9ea7c8d4aef7b30de7fc10eb6ed86efffd96479 100644
--- a/mongoose.c
+++ b/mongoose.c
@@ -2514,7 +2514,7 @@ void mg_mgr_init_opt(struct mg_mgr *m, void *user_data,
     m->num_ifaces = opts.num_ifaces;
     m->ifaces =
         (struct mg_iface **) MG_MALLOC(sizeof(*m->ifaces) * opts.num_ifaces);
-    for (i = 0; i < mg_num_ifaces; i++) {
+    for (i = 0; i < opts.num_ifaces; i++) {
       m->ifaces[i] = mg_if_create_iface(opts.ifaces[i], m);
       m->ifaces[i]->vtable->init(m->ifaces[i]);
     }
diff --git a/src/mg_net.c b/src/mg_net.c
index ad9a8fb0887a79cbbc7cc5c5615ec71d36a4cf3a..5c961409148cd6f57015bf56afc611550b8e2a7a 100644
--- a/src/mg_net.c
+++ b/src/mg_net.c
@@ -224,7 +224,7 @@ void mg_mgr_init_opt(struct mg_mgr *m, void *user_data,
     m->num_ifaces = opts.num_ifaces;
     m->ifaces =
         (struct mg_iface **) MG_MALLOC(sizeof(*m->ifaces) * opts.num_ifaces);
-    for (i = 0; i < mg_num_ifaces; i++) {
+    for (i = 0; i < opts.num_ifaces; i++) {
       m->ifaces[i] = mg_if_create_iface(opts.ifaces[i], m);
       m->ifaces[i]->vtable->init(m->ifaces[i]);
     }