diff --git a/src/filters.c b/src/filters.c
index 91404a4..14ea0f1 100644
--- a/src/filters.c
+++ b/src/filters.c
@@ -251,7 +251,7 @@
  * the configuration parsing. Filters can finish to fill their config. Returns
  * (ERR_ALERT|ERR_FATAL) if an error occurs, 0 otherwise.
  */
-int
+static int
 flt_init(struct proxy *proxy)
 {
 	struct flt_conf *fconf;
@@ -263,6 +263,24 @@
 	return 0;
 }
 
+/* Calls flt_init() for all proxies, see above */
+static int
+flt_init_all()
+{
+	struct proxy *px;
+	int err_code = 0;
+
+	for (px = proxy; px; px = px->next) {
+		err_code |= flt_init(px);
+		if (err_code & (ERR_ABORT|ERR_FATAL)) {
+			Alert("Failed to initialize filters for proxy '%s'.\n",
+			      px->id);
+			return err_code;
+		}
+	}
+	return 0;
+}
+
 /*
  * Calls 'check' callback for all filters attached to a proxy. This happens
  * after the configuration parsing but before filters initialization. Returns
@@ -1078,6 +1096,7 @@
 {
         pool2_filter = create_pool("filter", sizeof(struct filter), MEM_F_SHARED);
 	cfg_register_keywords(&cfg_kws);
+	hap_register_post_check(flt_init_all);
 }
 
 __attribute__((destructor))
diff --git a/src/haproxy.c b/src/haproxy.c
index 5d43cf3..2337341 100644
--- a/src/haproxy.c
+++ b/src/haproxy.c
@@ -936,15 +936,6 @@
 	ha_wurfl_init();
 #endif
 
-	for (px = proxy; px; px = px->next) {
-		err_code |= flt_init(px);
-		if (err_code & (ERR_ABORT|ERR_FATAL)) {
-			Alert("Failed to initialize filters for proxy '%s'.\n",
-			      px->id);
-			exit(1);
-		}
-	}
-
 	list_for_each_entry(pcf, &post_check_list, list) {
 		err_code |= pcf->fct();
 		if (err_code & (ERR_ABORT|ERR_FATAL))
