diff --git a/src/rrd_thread_safe.c b/src/rrd_thread_safe.c
index 3eed4a8c51e2946c5d35d183e05100243592e527..742bb49775925ddb52592ab15f1d0c5a192cd857 100644 (file)
--- a/src/rrd_thread_safe.c
+++ b/src/rrd_thread_safe.c
/*****************************************************************************
- * RRDtool 1.3rc4 Copyright by Tobi Oetiker, 1997-2008
+ * RRDtool 1.3rc9 Copyright by Tobi Oetiker, 1997-2008
* This file: Copyright 2003 Peter Stamfest <peter@stamfest.at>
* & Tobias Oetiker
* Distributed under the GPL
*****************************************************************************
* rrd_thread_safe.c Contains routines used when thread safety is required
*****************************************************************************
- * $Id: rrd_thread_safe.c 1366 2008-05-18 13:06:44Z oetiker $
+ * $Id: rrd_thread_safe.c 1413 2008-06-08 17:08:47Z oetiker $
*************************************************************************** */
#include <pthread.h>
static void context_destroy_context(
void *ctx_)
{
- struct rrd_context *ctx = ctx_;
+ rrd_context_t *ctx = ctx_;
if (ctx)
rrd_free_context(ctx);
pthread_key_create(&context_key, context_destroy_context);
}
-struct rrd_context *rrd_get_context(
+rrd_context_t *rrd_get_context(
void)
{
- struct rrd_context *ctx;
+ rrd_context_t *ctx;
pthread_once(&context_key_once, context_get_key);
ctx = pthread_getspecific(context_key);
const char *rrd_strerror(
int err)
{
- struct rrd_context *ctx = rrd_get_context();
+ rrd_context_t *ctx = rrd_get_context();
- if (strerror_r(err, ctx->lib_errstr, ctx->errlen))
+ if (strerror_r(err, ctx->lib_errstr, sizeof(ctx->lib_errstr)))
return "strerror_r failed. sorry!";
else
return ctx->lib_errstr;
int err)
{
static pthread_mutex_t mtx = PTHREAD_MUTEX_INITIALIZER;
- struct rrd_context *ctx;
+ rrd_context_t *ctx;
ctx = rrd_get_context();
pthread_mutex_lock(&mtx);
- strncpy(ctx->lib_errstr, strerror(err), ctx->errlen);
- ctx->lib_errstr[ctx->errlen] = '\0';
+ strncpy(ctx->lib_errstr, strerror(err), sizeof(ctx->lib_errstr));
+ ctx->lib_errstr[sizeof(ctx->lib_errstr) - 1] = '\0';
pthread_mutex_unlock(&mtx);
return ctx->lib_errstr;
}