[asterisk-commits] mjordan: branch 12 r412698 - /branches/12/main/asterisk.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Fri Apr 18 21:13:22 CDT 2014


Author: mjordan
Date: Fri Apr 18 21:13:15 2014
New Revision: 412698

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=412698
Log:
main/asterisk: Fix startup sequence for realtime features

When ASTERISK-23265/ASTERISK-23320 was fixed, it inadvertently led to realtime
features breaking. This was due to features loading prior to realtime. This
patch fixes this by loading features after loading dynamic modules.

ASTERISK-23487 #close
Reported by: Denis
Tested by: Denis

Modified:
    branches/12/main/asterisk.c

Modified: branches/12/main/asterisk.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/main/asterisk.c?view=diff&rev=412698&r1=412697&r2=412698
==============================================================================
--- branches/12/main/asterisk.c (original)
+++ branches/12/main/asterisk.c Fri Apr 18 21:13:15 2014
@@ -4431,39 +4431,39 @@
 		exit(1);
 	}
 
+	if (ast_pickup_init()) {
+		printf("%s", term_quit());
+		exit(1);
+	}
+
+	if (ast_bridging_init()) {
+		printf("%s", term_quit());
+		exit(1);
+	}
+
+	if (ast_parking_stasis_init()) {
+		printf("%s", term_quit());
+		exit(1);
+	}
+
+	if (ast_device_state_engine_init()) {
+		printf("%s", term_quit());
+		exit(1);
+	}
+
+	if (ast_presence_state_engine_init()) {
+		printf("%s", term_quit());
+		exit(1);
+	}
+
+	if ((moduleresult = load_modules(1))) {		/* Load modules, pre-load only */
+		printf("%s", term_quit());
+		exit(moduleresult == -2 ? 2 : 1);
+	}
+
 	if (ast_features_init()) {
 		printf("%s", term_quit());
 		exit(1);
-	}
-
-	if (ast_pickup_init()) {
-		printf("%s", term_quit());
-		exit(1);
-	}
-
-	if (ast_bridging_init()) {
-		printf("%s", term_quit());
-		exit(1);
-	}
-
-	if (ast_parking_stasis_init()) {
-		printf("%s", term_quit());
-		exit(1);
-	}
-
-	if (ast_device_state_engine_init()) {
-		printf("%s", term_quit());
-		exit(1);
-	}
-
-	if (ast_presence_state_engine_init()) {
-		printf("%s", term_quit());
-		exit(1);
-	}
-
-	if ((moduleresult = load_modules(1))) {		/* Load modules, pre-load only */
-		printf("%s", term_quit());
-		exit(moduleresult == -2 ? 2 : 1);
 	}
 
 	if (dnsmgr_init()) {		/* Initialize the DNS manager */




More information about the asterisk-commits mailing list