[asterisk-commits] russell: branch 1.6.0 r119893 - in /branches/1.6.0: ./ main/logger.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Tue Jun 3 08:30:39 CDT 2008


Author: russell
Date: Tue Jun  3 08:30:39 2008
New Revision: 119893

URL: http://svn.digium.com/view/asterisk?view=rev&rev=119893
Log:
Merged revisions 119892 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

........
r119892 | russell | 2008-06-03 08:29:16 -0500 (Tue, 03 Jun 2008) | 9 lines

Do a deep copy of file and function strings to avoid a potential crash when
modules are unloaded.

(closes issue #12780)
Reported by: ys
Patches:
      logger.diff uploaded by ys (license 281)
	  -- modified by me for coding guidelines

........

Modified:
    branches/1.6.0/   (props changed)
    branches/1.6.0/main/logger.c

Propchange: branches/1.6.0/
------------------------------------------------------------------------------
Binary property 'trunk-merged' - no diff available.

Modified: branches/1.6.0/main/logger.c
URL: http://svn.digium.com/view/asterisk/branches/1.6.0/main/logger.c?view=diff&rev=119893&r1=119892&r2=119893
==============================================================================
--- branches/1.6.0/main/logger.c (original)
+++ branches/1.6.0/main/logger.c Tue Jun  3 08:30:39 2008
@@ -133,9 +133,9 @@
 	enum logmsgtypes type;
 	char date[256];
 	int level;
-	const char *file;
+	char file[80];
 	int line;
-	const char *function;
+	char function[80];
 	AST_LIST_ENTRY(logmsg) list;
 	char str[0];
 };
@@ -1047,7 +1047,7 @@
 	/* Create a new logging message */
 	if (!(logmsg = ast_calloc(1, sizeof(*logmsg) + res + 1)))
 		return;
-	
+
 	/* Copy string over */
 	strcpy(logmsg->str, buf->str);
 
@@ -1060,9 +1060,9 @@
 
 	/* Copy over data */
 	logmsg->level = level;
-	logmsg->file = file;
 	logmsg->line = line;
-	logmsg->function = function;
+	ast_copy_string(logmsg->file, file, sizeof(logmsg->file));
+	ast_copy_string(logmsg->function, function, sizeof(logmsg->function));
 
 	/* If the logger thread is active, append it to the tail end of the list - otherwise skip that step */
 	if (logthread != AST_PTHREADT_NULL) {




More information about the asterisk-commits mailing list