aboutsummaryrefslogtreecommitdiffstats
path: root/logger.c
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>1999-12-16 22:47:49 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>1999-12-16 22:47:49 +0000
commit53b26418053e05bd30974b1d336167f90860e85b (patch)
treef7d4ae6622d7ef5269c3550b673d17aa25f5a925 /logger.c
parent509765aef52f3ce306a114832ab885ad85522d2e (diff)
Version 0.1.1 from FTP
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@140 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'logger.c')
-rwxr-xr-xlogger.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/logger.c b/logger.c
index b67c88f08..179ab66f3 100755
--- a/logger.c
+++ b/logger.c
@@ -3,7 +3,7 @@
*
* Mark Spencer <markster@marko.net>
*
- * Copyright(C) 1999, Adtran, Inc.
+ * Copyright(C)1999, Mark Spencer
*
* Distributed under the terms of the GNU General Public License (GPL) Version 2
*
@@ -29,6 +29,7 @@
#define MAX_MSG_QUEUE 200
static pthread_mutex_t msglist_lock = PTHREAD_MUTEX_INITIALIZER;
+static pthread_mutex_t loglock = PTHREAD_MUTEX_INITIALIZER;
static struct msglist {
char *msg;
@@ -75,7 +76,7 @@ extern void ast_log(int level, char *file, int line, char *function, char *fmt,
va_list ap;
va_start(ap, fmt);
-
+ pthread_mutex_lock(&loglock);
if (level == 1 /* Event */) {
time(&t);
tm = localtime(&t);
@@ -92,12 +93,13 @@ extern void ast_log(int level, char *file, int line, char *function, char *fmt,
vfprintf(stdout, fmt, ap);
fflush(stdout);
}
+ pthread_mutex_unlock(&loglock);
va_end(ap);
}
extern void ast_verbose(char *fmt, ...)
{
- static char stuff[256];
+ static char stuff[4096];
static int pos = 0, opos;
static int replacelast = 0, complete;
struct msglist *m;
@@ -139,6 +141,7 @@ extern void ast_verbose(char *fmt, ...)
}
}
}
+ pthread_mutex_lock(&loglock);
if (verboser) {
v = verboser;
while(v) {
@@ -152,7 +155,7 @@ extern void ast_verbose(char *fmt, ...)
replacelast = 1;
else
replacelast = pos = 0;
-
+ pthread_mutex_unlock(&loglock);
va_end(ap);
pthread_mutex_unlock(&msglist_lock);
}