[Asterisk-cvs] asterisk logger.c,1.30,1.31

markster at lists.digium.com markster at lists.digium.com
Tue Mar 30 11:17:47 CST 2004


Update of /usr/cvsroot/asterisk
In directory mongoose.digium.com:/tmp/cvs-serv2369

Modified Files:
	logger.c 
Log Message:
Indicate the need to reload without actually reloading...


Index: logger.c
===================================================================
RCS file: /usr/cvsroot/asterisk/logger.c,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -d -r1.30 -r1.31
--- logger.c	27 Feb 2004 04:32:54 -0000	1.30
+++ logger.c	30 Mar 2004 16:16:05 -0000	1.31
@@ -49,6 +49,7 @@
 
 static ast_mutex_t msglist_lock = AST_MUTEX_INITIALIZER;
 static ast_mutex_t loglock = AST_MUTEX_INITIALIZER;
+static int pending_logger_reload = 0;
 
 static struct msglist {
 	char *msg;
@@ -265,7 +266,6 @@
 	FILE *myf;
 
 	int x;
-
 	ast_mutex_lock(&loglock);
 	if (eventlog) 
 		fclose(eventlog);
@@ -334,6 +334,7 @@
 	} else 
 		ast_log(LOG_ERROR, "Unable to create event log: %s\n", strerror(errno));
 	init_logger_chain();
+	pending_logger_reload = 0;
 	return -1;
 }
 
@@ -384,10 +385,8 @@
 	logger_rotate_help };
 
 static int handle_SIGXFSZ(int sig) {
-    reload_logger(1);
-    ast_log(LOG_EVENT,"Rotated Logs Per SIGXFSZ\n");
-    if (option_verbose)
-	    ast_verbose("Rotated Logs Per SIGXFSZ\n");
+	/* Indicate need to reload */
+	pending_logger_reload = 1;
     return 0;
 }
 
@@ -535,6 +534,12 @@
 
     ast_mutex_unlock(&loglock);
     /* end critical section */
+	if (pending_logger_reload) {
+	    reload_logger(1);
+	    ast_log(LOG_EVENT,"Rotated Logs Per SIGXFSZ\n");
+	    if (option_verbose)
+		    ast_verbose("Rotated Logs Per SIGXFSZ\n");
+	}
 }
 
 extern void ast_verbose(const char *fmt, ...)




More information about the svn-commits mailing list