[asterisk-commits] russell: branch 1.4 r156164 - /branches/1.4/main/asterisk.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Nov 12 11:29:52 CST 2008


Author: russell
Date: Wed Nov 12 11:29:52 2008
New Revision: 156164

URL: http://svn.digium.com/view/asterisk?view=rev&rev=156164
Log:
Move the sanity check that makes sure "always fork" is not set along with the 
console option to be after the code that reads options from asterisk.conf.  
This resolves a situation where Asterisk can start taking up 100% when
misconfigured.
(Thanks to Bryce Porter (x86 on IRC) for letting me log in to his system to
 figure out what was causing the 100% CPU problem.)

Modified:
    branches/1.4/main/asterisk.c

Modified: branches/1.4/main/asterisk.c
URL: http://svn.digium.com/view/asterisk/branches/1.4/main/asterisk.c?view=diff&rev=156164&r1=156163&r2=156164
==============================================================================
--- branches/1.4/main/asterisk.c (original)
+++ branches/1.4/main/asterisk.c Wed Nov 12 11:29:52 2008
@@ -2790,11 +2790,6 @@
 	if (ast_opt_console && !option_verbose) 
 		ast_verbose("[ Booting...\n");
 
-	if (ast_opt_always_fork && (ast_opt_remote || ast_opt_console)) {
-		ast_log(LOG_WARNING, "'alwaysfork' is not compatible with console or remote console mode; ignored\n");
-		ast_clear_flag(&ast_options, AST_OPT_FLAG_ALWAYS_FORK);
-	}
-
 	/* For remote connections, change the name of the remote connection.
 	 * We do this for the benefit of init scripts (which need to know if/when
 	 * the main asterisk process has died yet). */
@@ -2805,9 +2800,16 @@
 		}
 	}
 
-	if (ast_opt_console && !option_verbose) 
+	if (ast_opt_console && !option_verbose) {
 		ast_verbose("[ Reading Master Configuration ]\n");
+	}
+
 	ast_readconfig();
+
+	if (ast_opt_always_fork && (ast_opt_remote || ast_opt_console)) {
+		ast_log(LOG_WARNING, "'alwaysfork' is not compatible with console or remote console mode; ignored\n");
+		ast_clear_flag(&ast_options, AST_OPT_FLAG_ALWAYS_FORK);
+	}
 
 	if (ast_opt_dump_core) {
 		struct rlimit l;




More information about the asterisk-commits mailing list